Algorithm design strategies, including greedy, divide-and-conquer, and dynamic programming methods. Advanced data structures, including balanced search trees, graphs, heaps, and priority queues. Advanced methods of searching and sorting. Computational complexity and analysis of algorithms. NP-complete problems.
CSC 325: Analysis of Algorithms
Program