Skip to main content

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