The Second Major in Computer Science

The second major provides an opportunity to combine computer science with another degree program. A second major in computer science can expand a student's career options and enable interdisciplinary study in areas such as cognitive science, computational biology, chemistry, physics, philosophy and linguistics. The second major is also well suited for students planning careers in medicine, law, business, architecture and fine arts. The requirements are as follows. There are no additional distribution or unit requirements for the second major.

Computer Science Core Requirements*

CSE 131Introduction to Computer Science3
CSE 132Introduction to Computer Engineering3
CSE 240Logic and Discrete Mathematics3
or Math 310 Foundations for Higher Mathematics
CSE 247Data Structures and Algorithms3
CSE 332SObject-Oriented Software Development Laboratory3
CSE 347Analysis of Algorithms3
Total Units18

Each of these core courses must be passed with a grade of C- or better.

Computer Science Technical Elective Requirements

At least 24 additional units in computer science or computer science-related courses with an S, M, T or A suffix must be completed, at least one of which must be a systems (S) course and at least one of which must be a machine (M) or application (A) course. In satisfying these technical electives, up to 6 units may be taken outside the CSE department. Independent work (CSE 400ECSE 497CSE 498CSE 499) 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 McKelvey School of Engineering. Students can seek approval for courses by contacting the associate chair.

Math Requirement

Students must take calculus (Math 131) and probability (ESE 326, Math 3200, or the sequence DAT 120-DAT 121).

Contact Info