CS 520 - Advanced Analysis of Algorithms (Fall 2003)

4 Syllabus sketch 1. Mathematical Preliminaries Growth of Functions, Summations, Recurrences, Probabilistic Analysis (5 Lectures). 2. Sorting and Order Statistics Heapsort, Quicksort, Lower bounds for comparison sorting, Sorting in Linear Time, Selection in Expected and worst-case linear time (4 Lectures). 3. Data Structures Stacks, queues, Binary Search Trees, Graph Structures (2 Lectures). 4. Dynamic Programming Matrix Chain multiplication, Longest common subsequence, Optimal Path planning (3 Lectures). 5. Greedy Algorithms Kruskal’s algorithm, Activity selection, Huffman codes (3 Lectures). 6. Graph Algorithms Minimum Spanning Trees, Single-Source Shortest Paths and Maximum Flows (5 Lectures).