The complexity and correctness of algorithms: big oh,
big omega, and big theta notations, recurrence relations and their solutions. Worst, average and amortized analysis of
algorithms with examples. Basic and advanced data structures for searching, sorting, compression and graph algorithms.
Students will be given programming assignments on a regular basis.
Pre-requisites:
Textbooks:
Instructor:
Class Mailing List:
Grading:
Policies:
Week | Date | Topics | Description |
---|---|---|---|
1 | January 15, 2008 | Introduction | Chapters 1-3, Appendix A-C Asymptotic Notation, Standard Notations, Common Functions, Summations |
2 | January 22, 2008 | Asymptotic Analysis | Chapter 4 Recurrences |
3 | January 29, 2008 | Sorting | Chapters 6, 7 Heaps, Heapsort, Priority Queues, Quicksort |
4 | February 5, 2008 | Sorting | Chapters 8, 9 Lower Bounds for Sorting, Counting Sort, Radix Sort, Bucket Sort |
5 | February 12, 2008 | Probabilistic Analysis | Chapters 5, 7 Randomized Algorithms, Randomized Quicksort |
6 | February 19, 2008 | No class - Monday Schedule | |
7 | February 26, 2008 | MIDTERM | Comprehensive |
8 | March 4, 2008 | Order Statistics and Hashing | Chapters 9, 11 Medians and Order Statistics, Minimum and Maximum, Hashing, Collision Resolution |
9 | March 11, 2008 | Trees | Chapters 12, 13 Binary Search Trees, Red-Black Trees |
10 | March 18, 2008 | No class - Spring Break | |
11 | March 25, 2008 | Dynamic Programming | Chapter 15 Dynamic Programming, Matrix-Chain Multiplication |
12 | April 1, 2008 | Greedy Algorithms, Amortized Analysis | Chapters 16, 17 Greedy Strategy, Huffman Codes, Aggregate Analysis |
13 | April 8, 2008 | Cancelled | |
14 | April 15, 2008 | Graphs | Chapter 22 Graph Algorithms, Breadth-First Search, Depth-First Search |
15 | April 22, 2008 | Graphs | Chapter 23 Spanning Trees, Kruskal's Algorithm, Prim's Algorithm |
16 | April 29, 2008 | Graphs | Chapter 24 Shortest Paths, Bellman-Ford Algorithm, Dijkstra's Algorithm |
May 6, 2008 | FINAL (1-5pm, BC321) | Comprehensive |