COM SCI 180
Introduction to Algorithms and Complexity
Computer Science · 4 units · Undergraduate upper division (100-199)
Designed for junior/senior Computer Science majors. Introduction to design and analysis of algorithms. Design techniques: divide-and-conquer, greedy method, dynamic programming; selection of prototypical algorithms; choice of data structures and representations; complexity measures: time, space, upper, lower bounds, asymptotic complexity; NP-completeness.
Letter grading.
Requisites
Official UCLA wording
Enforced requisites: course 32, Mathematics 61.
BruinTree reads · Prerequisite
confidence 1.00 · from textRequires
Everything that has to come before this course, not just the courses named in the requisite above.
COM SCI 180
- COM SCI 32Introduction to Computer Science II
- COM SCI 31Introduction to Computer Science I
- MATH 61Introduction to Discrete Structures
2 direct requisites. The whole upstream is here — 7 courses over 3 levels. Every course here opens its own tree.
Unlocks
What this course is a requisite for, and what those courses lead to in turn.
COM SCI 1806 more beyond
- COM SCI 161Fundamentals of Artificial Intelligence
- COM SCI 163Deep Learning for Computer Vision
- COM SCI 263ALanguage and Thought
- COM SCI 265AMachine Learning
- COM SCI 263CAnimats-Based Modeling





