| Date | Topic | Reading |
| 01. | Jan 21 | Insertion Sort, Analysis of Algorithms | Ch. 2.1, 2.2 |
| 02. | Jan 26 | Divide-and-Conquer, Merge Sort | Ch. 2.3 |
| 03. | Jan 28 | Heaps, Heapsort | Ch. 6.1-6.4 |
| 04. | Feb 2 | Heapsort, Priority Queues | Ch. 6.4-6.5 |
| | | Homework 1 Posted (Due Feb 11) | |
| 05. | Feb 4 | Quicksort | Ch. 7.1-7.4 |
| 06. | Feb 9 | Sorting in Linear Time | Ch. 8.1-8.2 |
| 07. | Feb 11 | (Contd.) | Ch. 8.3 |
| 08. | Feb 16 | Elementary Data Structures | Ch. 10.1-10.2 |
| | | Homework 2 Posted (Due Feb 25) | |
| 09. | Feb 18 | Hash Tables | Ch. 11.1-11.3 |
| 10. | Feb 23 | (Contd.) | Ch. 11.3-11.4 |
| 11. | Feb 25 | Binary Search Trees | Ch. 12 |
| 12. | Mar 2 | Red-Black Trees | Ch. 13 |
| 13. | Mar 4 | (Contd.) | |
| 14. | Mar 9 | Midterm Review | |
| 15. | Mar 11 | Midterm 1 | |
| Mar 16 | Spring Break | |
| Mar 18 | Spring Break | |
| 16. | Mar 23 | Dynamic Programming | Ch. 15 |
| | | Homework 3 Posted (Due Apr 1) | |
| 17. | Mar 25 | (Contd.) | |
| 18. | Mar 30 | (Contd.) | |
| 19. | Apr 1 | Greedy Algorithms | Ch. 16 |
| 20. | Apr 6 | (Contd.) | |
| 21. | Apr 8 | Midterm review | |
| 22. | Apr 13 | Midterm 2 | |
| 23. | Apr 15 | Elementary Graph Algorithms | Ch. 22 |
| 24. | Apr 20 | Minimum Spanning Trees | Ch. 23 |
| | | Homework 4 Posted (Due Apr 29) | |
| 25. | Apr 22 | Single-Source Shortest Paths | Ch. 24 |
| 26. | Apr 27 | (Contd.) | |
| 27. | Apr 29 | All-Pairs Shortest Paths | Ch. 25 |
| 28. | May 4 | (Contd.) | |
| 29. | May 6 | Finals Review | |
| May 11 | In-class Finals (4pm- 6pm) | |