Prerequisites: CS 010C with a grade of C- or better; CS 111; MATH 009C or MATH 09HC; proficiency in C++
Description: Explores basic algorithm analysis using asymptotic notations, summation and recurrence relations, and algorithms and data structures for discrete structures including trees, strings, and graphs. Also covers general algorithm design techniques including “divide-and-conquer,” the greedy method, and dynamic programming. Integrates knowledge of data structures, algorithms, and programming.
Serves as a prerequisite for
CS 142 CS 144 CS 145 CS 165 CS 178A CS 206 CS 214 CS 216 CS 218 CS 220 CS 230 CS 234 CS 235 CS 236 CS 238 CS 240 CS 242 CS 246 CS 252A CS 257 EE 251AReferenced in
- Computer Engineering — Major Requirements
- Computer Engineering — Master’s Degree
- Computer Science and Engineering — Major Requirements
- Computer Science and Engineering — Graduate Program
- Data Science — Major Requirements
- Genetics, Genomics, and Bioinformatics — Doctoral Degree
- Mathematics — College Requirements
- Statistics — Major Requirements