CPSCI-230 Algorithms and Data Structures

A study of fundamental algorithms and data structures from the canon, emphasizing correctness, and trade-offs between techniques, alongside deliberate coverage of topics from discrete mathematics. Topics include running time and space analysis, invariants as a means of proving correctness, and the divide-and-conquer, greedy, and dynamic programming algorithm design paradigms. Specific problems include graph traversals, (optimal) sorting/searching, minimum spanning tree and shortest paths, longest common subsequences, balanced search trees, heaps, hashing, and union-find for disjoint sets.

Maximum Enrollment

Standard Course (40)

(Quantitative and Symbolic Reasoning.)

Credits

1

Prerequisite

102

Offered

Fall