Fundamental data structures and their implementations: stacks, queues, trees (binary and AVL), heaps, graphs. Hash functions and hash tables. Algorithms for searching, sorting, graph traversal, and topological sorting. Best, worst, and average-case runtime analysis. Examples of problem-solving using greedy algorithm, divide-and-conquer, and backtracking.
Academic Progress Units
Repeat For Credit