Course Textbook: We will provide lecture notes, which can be found consolidated here.
Supplemental Textbook: CLRS - Introduction to Algorithms, 3rd edition by Cormen, Leiserson, Rivest, and Stein. You can obtain a free copy via the Penn Libraries
Note: The lecture schedule is tentative and subject to change as the term progresses.
Date | Topic | Required Readings |
---|---|---|
Tue, Aug 27, 2024 | Welcome to CIS 1210, Greatest Common Divisor | |
Thu, Aug 29, 2024 | Running Time | |
Tue, Sep 3, 2024 | RAM Model of Computation, Recurrence Relations, Insertion Sort | |
Thu, Sep 5, 2024 | Insertion Sort, Binary Search | |
Tue, Sep 10, 2024 | Code Snippets | |
Thu, Sep 12, 2024 | Mergesort, Quicksort | |
Tue, Sep 17, 2024 | Quicksort, Selection | |
Thu, Sep 19, 2024 | Selection | |
Tue, Sep 24, 2024 | Stacks, Queues | |
Thu, Sep 26, 2024 | Heaps, Priority Queues | |
Tue, Oct 1, 2024 | Midterm Exam 1 | |
Tue, Oct 8, 2024 | Huffman Encoding | |
Thu, Oct 10, 2024 | Huffman Encoding, Breadth-First Search (BFS) | |
Tue, Oct 15, 2024 | Testing Bipartiteness (BFS), Depth-First Search (DFS) | |
Thu, Oct 17, 2024 | Topological Sort | |
Tue, Oct 22, 2024 | Topological Sort, Strongly Connected Components | |
Thu, Oct 24, 2024 | Strongly Connected Components, Dijkstra's Algorithm | |
Tue, Oct 29, 2024 | Dijkstra's Algorithm, Minimum Spanning Trees | |
Thu, Oct 31, 2024 | Minimum Spanning Trees | |
Tue, Nov 5, 2024 | Minimum Spanning Trees, Union Find | |
Thu, Nov 7, 2024 | Midterm Exam 2 | |
Tue, Nov 12, 2024 | Union Find, Hashing | |
Thu, Nov 14, 2024 | Hashing with Chaining, Open Addressing | |
Tue, Nov 19, 2024 | Open Addressing | |
Thu, Nov 21, 2024 | Tries | |
Tue, Nov 26, 2024 | Tries, BSTs |