The following table summarizes the concentration requirements at a glance. See the Computer Science handbook entry for full details of concentration requirements. The Plan of Study form is also a useful tool to help understand the course requirements. See the Degree Programs page for more information about the different tracks within the computer science concentration. See also sample schedules for the first two years.
If you are ready to declare a CS concentration, please follow these steps. You can also see how to combine CS with other areas the forms of a secondary concentration, joint concentration, or other means.
|Category||Number of required courses||Basic Concentration||Honors Concentration|
|Mathematics||(Total: 2-4 courses)|
|Preparation||0-2||Math 1a and/or Math 1b as needed||same|
|Linear algebra||1||Math 21b/22b/23a/25a/55a, AM 21b/22a||same|
|Probability/statistics or Multivariable calculus||1||Stat 110 or Math 21a/22a/23b/23c/25b/55b, AM 21a||same|
|Basic Software||2||2 out of CS 50, CS 51, CS 61||same|
|Theory||2||CS 121 + CS 124 or other theory course||same|
|Technical Electives||4 (6 for honors)||4 courses from list that includes CS 20, CS 51-299, STAT 110, AM 106, AM 107, and others. (at most one CS 91r)||6 courses from same list|
|Breadth Requirement||2 tech electives must be CS with penultimate digit 3-8||3 tech electives must be CS with penultimate digit 3-8|
|Tutorial||At most one CS91r is tech elective||same|
|Thesis||Not required||Not required but recommended|