Computer Science Major Requirements
 At least 24 credits from items REQUIRED INTRODUCTORY COURSES to COMPUTER SCIENCE ELECTIVES below, and at least 18 credits from items REQUIRED ADVANCED COURSES and COMPUTER SCIENCE ELECTIVES, must be completed at Stony Brook.
 Completion of the major requires approximately 80 credits.
 All courses in the major must be taken for a letter grade.
 All courses in the major must be completed with a grade of C or higher.
 CSE 114 Introduction to ObjectOriented Programming
 CSE 214 Data Structures
 CSE 215 Foundations of Computer Science or CSE 150 Foundations of Computer Science: Honors
 CSE 216 Programming Abstractions
 CSE 220 System Fundamentals I
Note: Students in the CSE Honors Program may substitute CSE 160, CSE 161 and CSE 260, CSE 261 Computer Science A, B: Honors with labs for CSE 114, 214 and 216.
 CSE 303 Introduction to the Theory of Computation or CSE 350 Theory of Computation: Honors
 CSE 310 Computer Networks
 CSE 316 Fundamentals of Software Development
 CSE 320 Systems Fundamentals II
 CSE 373 Analysis of Algorithms or CSE 385 Analysis of Algorithms: Honors
 CSE 416 Software Engineering
 Four upperdivision CSE electives. Technical electives do not include teaching practica (CSE 475), the senior honors project (CSE 495, 496), and courses designated as nontechnical in the course description (such as CSE 301).
AMS 151, AMS 161 APPLIED CALCULUS I, II
 Note: The following alternate calculus course sequences may be substituted for AMS 151, AMS 161 in major requirements or prerequisites: MAT 125, MAT 126, MAT 127, or MAT 131, MAT 132, or MAT 141, MAT 142 or MAT 171. Equivalency for MAT courses achieved through the Mathematics Placement Examination is accepted to meet MAT course requirements.
 MAT 211 Introduction to Linear Algebra
 AMS 210 Applied Linear Algebra
 AMS 326 Numerical Analysis
 AMS 301 Finite Mathematical Structures
 AMS 310 Survey of Probability and Statistics or AMS 311 Probability Theory or AMS 312 Mathematical Statistics

At least one of the following natural science lecture/laboratory combinations:
BIO 201/204 or BIO 202/204 or BIO 203/204 or CHE 131/133 or CHE 152/154 or PHY 126/133 or PHY 127/133 or PHY 131/133 or PHY 141/133

Additional natural science courses selected from above and the following list:
AST 203, AST 205, CHE 132, CHE 321, CHE 322, CHE 331, CHE 332, GEO 102, GEO 103, GEO 112, GEO 113, GEO 122, PHY 125, PHY 132, PHY 134, PHY 142, PHY 251, PHY 252
Note: The courses selected in NATURAL SCIENCE REQUIREMENT 1 and 2 must carry at least 9 credits.The grade point average for the courses in Requirements must be at least 2.00.
UPPERDIVISION WRITING REQUIREMENT
 CSE 300 Technical Communications
All degree candidates must demonstrate technical writing skills at a level that would be acceptable in an industrial setting. To satisfy the requirement, students must pass CSE 300, a course that requires the completion of various writing assignments, including at least one significant technical paper.
Note: All students are encouraged to discuss their program with an undergraduate advisor. In Requirement 2 above, CSE/ESE double majors may substitute ESE 440, ESE 441 Electrical Engineering Design I, II for CSE 416 Software Engineering provided that the design project contains a significant software component. Approval of the Department of Computer Science is required.