Computer Science Major Requirements

Required Core (32 units)
CS 10 Introduction to Computer Science I (4)
CS 15 Discrete Mathematics (4)
CS 30 Introduction to Computer Science II (4)
CS 45 Computer Organization (4)
CS 105 Programming Languages (4)
CS 120 Data Structures and Algorithms (4)
CS 130 Software Development (4)
CS 195 Senior Seminar (4)

In addition to the core courses, students must complete elective units to satisfy one of the following two tracks. Elective units may include a total of no more than 4 units from among CS190 Practicum, CS192 Project, or CS198 Research, of which 198 and 192 may contribute no more than 2 units each. Students complete one of the following two tracks:

B.A. in Computer Science General Track (44 units including core)
Additional CS courses numbered CS 100 or above to bring the total to 44 unitsĀ 

B.S. in Computer Science General Track (56 units including core)
Additional CS courses numbered CS 100 or above to bring the total to 56 units

Computer Science Course Websites

Lower Division Courses

CS 10 Introduction to Computer Science I
CS 15 Discrete Mathematics
CS 30 Introduction to Computer Science II
CS 45 Computer Organization and Architecture
CS 50 Morality, Information, Logic, Knowledge

Upper Division Courses

CS 105 Programming Languages
CS 116 Artificial Intelligence
CS 120 Data Structures and Algorithms
CS 125 Database Design
CS 130 Software Development
CS 140 Networks
CS 145 Operating Systems
CS 150 Topics in Computer Science: Machine Learning
CS 150 Topics in Computer Science: Distributed Systems
CS 150 Topics in Computer Science: 3D Computer Graphics
CS 190SS Service Learning Internship

Sample Four-Year Schedule

B.S. in Computer Science General Track

First year courses

FallSpring
CS 10 Introduction to Computer Science I (4) CS 30 Introduction to Computer Science II (4)
General Education (4) CS 15 Discrete Mathematics (4)
General Education (4) General Education (4)
  General Education (4)
  Physical Education Activity (1)

Second year courses

Fall Spring
CS 45 Computer Organization and Architecture (4) CS 105 Programming Languages (4)
CS Elective (4) CS Elective (4)
General Education (4) General Education (4)
General Education (4) General Education (4)
Physical Education Activity (1) Physical Education Activity (1)

Third year courses

Fall Spring
CS130 Software Development (4) CS 120 Data Structures/Algorithms (4)
CS Elective (4) CS 192 Project (1)
General Education (4) CS Elective (4)
General Education (4) CS 190SS Service Learning Internship (1)
Physical Education Activity (1) General Education (4)

Fourth year courses

Fall Spring
CS Elective (4) CS195 Senior Seminar (4)
General Education (4) CS Elective (4)
General Education (4) General Education (4)
General Education (4) General Education (4)