CSE 21Mathematics 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
From the catalog: “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.”
Where it sits in degree plans
Suggested plans most often put it in Year 2 · Fall (3 programs).
Required in (3)
- Bioengineering: Bioinformatics (B.S.)
- Biology with a Specialization in Bioinformatics (B.S.)
- Computer Science with Specialization in Bioinformatics (B.S.)
One of the options in (2)
- Artificial Intelligence
- Computer Science (B.S.)
Courses that list CSE 21 as a prerequisite (9)
- CSE 100 Advanced Data Structures
- CSE 100R Advanced Data Structures
- CSE 101 Design and Analysis of Algorithms
- CSE 103 A Practical Introduction to Probability and Statistics
- CSE 105 Theory of Computability
- CSE 106 Discrete and Continuous Optimization
- CSE 107 Introduction to Modern Cryptography
- CSE 127 Introduction to Computer Security (4) Tags: Systems, Applications of Computing
- ECON 149 Introduction to Economic Design