# Computer Science Minor

## Course Requirements

Thirteen courses are required for the computer science minor.

### Lower-Division Courses

#### One of the following options

Either these courses | ||

MATH 11A | Calculus with Applications | 5 |

MATH 11B | Calculus with Applications | 5 |

or these courses | ||

MATH 19A | Calculus for Science, Engineering, and Mathematics | 5 |

MATH 19B | Calculus for Science, Engineering, and Mathematics | 5 |

or these courses | ||

MATH 20A | Honors Calculus | 5 |

MATH 20B | Honors Calculus | 5 |

#### Plus one of the following

AM 10 | Mathematical Methods for Engineers I | 5 |

MATH 21 | Linear Algebra | 5 |

#### Plus both of the following

CSE 12 | Computer Systems and Assembly Language | 5 |

CSE 12L | Computer Systems and Assembly Language Laboratory | 2 |

#### Plus one of the following

CSE 13E | Embedded Systems and C Programming | 7 |

CSE 13S | Computer Systems and C Programming | 7 |

#### Plus all of the following

CSE 16 | Applied Discrete Mathematics | 5 |

CSE 20 | Beginning Programming in Python | 5 |

CSE 30 | Programming Abstractions: Python | 7 |

Students with no prior programming will take CSE 20 before CSE 30, and CSE 12 and CSE 12L. Students with a prior programming course, AP credit, or clearing the “Test-out” bar will start with CSE 30, and CSE 12 and CSE 12L.

### Upper-Division Courses

#### The following course

CSE 101 | Introduction to Data Structures and Algorithms | 5 |

#### Plus two upper-division computer science and engineering courses from the following list

CSE 102 | Introduction to Analysis of Algorithms | 5 |

CSE 103 | Computational Models | 5 |

CSE 110A | Fundamentals of Compiler Design I | 5 |

CSE 112 | Comparative Programming Languages | 5 |

CSE 115A | Introduction to Software Engineering | 5 |

CSE 120 | Computer Architecture | 5 |

CSE 130 | Principles of Computer Systems Design | 5 |

CSE 131 | Introduction to Operating Systems | 5 |

CSE 132 | Computer Security | 5 |

CSE 138 | Distributed Systems | 5 |

CSE 140 | Artificial Intelligence | 5 |

CSE 142 | Machine Learning | 5 |

CSE 143 | Introduction to Natural Language Processing | 5 |

CSE 160 | Introduction to Computer Graphics | 5 |

CSE 160L | Introduction to Computer Graphics Laboratory | 2 |

CSE 180 | Database Systems I | 5 |

Either CSE 130 or CSE 131, but not both, can be counted toward this requirement.

Students choosing CSE 160 must also take CSE 160L, and the combination counts as one course.

#### Plus two additional upper-division courses

Two additional upper-division 5-credit computer science and engineering courses and their associated labs, numbered below 170 or between 180 and 189.