Students earning a degree in another division can earn a second major in computer science by completing the requirements as listed below. It is not necessary to complete other distribution requirements of the School of Engineering for the second major.

Core Requirements*
CSE 131 Computer Science I 3 units
CSE 132 Computer Science II 3 units
CSE 240
or Math 310
Logic and Discrete Mathematics
Foundations for Higher Mathematics
3 units
CSE 247 Data Structures and Algorithms 3 units
CSE 332S Object-Oriented Software Development Laboratory 3 units
CSE 347 Analysis of Algorithms 3 units
Total Units 18

*Each of these core courses must be completed with a grade of C- or better

Computer Science Electives

At least 24 units of computer science electives, selected from any CSE courses with an S, M, T or A suffix. In satisfying these technical electives, up to 6 units may be taken outside the CSE classroom. Independent work (CSE 400E, CSE 497-CSE499) is possible by finding a suitable faculty mentor for the work. Such work can be classified as S, M, T or A with approval. Some or all of the 6 units may also be satisfied by taking courses in other departments, including those outside of the Engineering School. Students can seek approval for courses by contacting the associate chair.

Math Requirement

Calculus (Math 131) and Probability (ESE 326 or Math 3200, or the sequence QBA 120-QBA 121).