Computer Science Electives
As indicated in the HMC catalogue, students should select their CS electives in consultation with their CS faculty adviser.
A number of courses in other departments have already been approved as CS electives. These courses can be used in lieu of CS electives for the computer science, CS/math, and mathematical and computational biology majors.
Students who wish to take another non-CS course as a CS elective are welcome to discuss this with their CS adviser and then submit a petition to the department.
Although the department endeavors to provide a balanced selection of electives every year, because student demand and faculty availability may vary from year to year, the department cannot guarantee in advance that students will be able to take any specific elective classes on any particular schedule.
The following is a list of courses in other departments that have been approved to be taken as electives towards the computer science major. This list is not exhaustive and students should discuss other possible elective courses with their faculty advisor.
- MATH104 HM Graph Theory
- MATH106 HM Combinatorics
- MATH157 HM Intermediate Probability
- MATH164 HM Scientific Computing
- MATH165 HM Numerical Analysis
- MATH167 HM Complexity Theory
- MATH187 HM Operations Research
- ENGR085 HM Digital Electronics and Computer Engineering or ENGR085A HM Digital Electronics
- ENGR151 HM Analog Circuit Design
- ENGR155 HM Microprocessor-Based Systems: Design and Applications
- ENGR158 HM Introduction to CMOS VLSI Design
- ENGR161 HM Computer Image Processing and Analysis