Mathematics for Algorithms and Systems
This course will cover mathematical concepts used to model and analyze algorithms and computer systems. Topics include counting techniques (inclusion-exclusion; recursive counting; permutations and combinations), data representations, analysis of algorithms (order notation; time complexities; loop invariants), recurrence relations, graphs and trees (data structure representations; basic graph algorithms; special classes of graphs), and basic probability and its applications. Prerequisites: CSE 20 or MATH 15A or MATH 31CH; students who have completed MATH 154 or MATH 184 or MATH 188 previously or concurrently may not receive credit for CSE 21; restricted to undergraduates. Graduate students will be allowed as space permits.
Topics
- counting techniques (inclusion-exclusion
- recursive counting
- permutations and combinations)
- data representations
- analysis of algorithms (order notation
- time complexities
- loop invariants)
- recurrence relations
- graphs and trees (data structure representations
- basic graph algorithms
- special classes of graphs)
- and basic probability and its applications
Topics explicitly listed in official catalogue description
Sources
- Course catalogue ↗2026-2027