Skip to main content

The lecture schedule is tentative and subject to change as the term progresses.

Date Topic Required Readings
Thu, Jan 11, 2018 Review of CIS 160 and Stable Matching
  • Stable matching
Tue, Jan 16, 2018 Greatest Common Divisor, Insertion Sort
  • GCD
  • Insertion sort
  • CLRS 2.1, 2.2
Thu, Jan 18, 2018 Running Time and Growth Functions
  • Running time
  • Order of growth
  • CLRS Chapter 3
Tue, Jan 23, 2018 Running Time and Recurrence Relations
  • Analyzing code snippets
  • Recurrence relations
  • Practice problems
Thu, Jan 25, 2018 Divide and Conquer
  • Deterministic quick sort
  • Analyzing recursive functions
  • Mergesort analysis
Tue, Jan 30, 2018 Quick Sort, Counting Inversions, Deterministic Selection
  • Counting inversions
  • Recurrences
  • CLRS 9.3
Thu, Feb 1, 2018 Deterministic Selection, Randomized Quicksort, Integer Multiplication
  • Deterministic Selection
  • Randomized quicksort analysis
  • Integer multiplication
  • CLRS 9.3
Tue, Feb 6, 2018 Integer Multiplication, Stacks and Queues, Heaps
  • Integer multiplication
  • Stacks and queues
  • Heaps
Thu, Feb 8, 2018 E-A-G-L-E-S
  • Fly eagles fly
  • No class
Tue, Feb 13, 2018 Heaps, Huffman Coding
  • Heaps
  • Huffman encoding
  • CLRS Chapter 6
Thu, Feb 15, 2018 Midterm 1 (in-class)
Tue, Feb 20, 2018 Huffman Coding
  • Huffman Coding
Thu, Feb 22, 2018 Breadth-First-Search / Depth-First Search
  • Depth-first search
  • CLRS (Pages 603-606)
Tue, Feb 27, 2018 Bipartiteness, Topological Sort
  • Testing bipartiteness
  • Topological sort
Thu, Mar 1, 2018 Topological Sort, Shortest Paths
  • Topological Sort
  • Shortest Paths
  • CLRS (22.4)
Tue, Mar 13, 2018 Minimum Spanning Trees
  • MSTs
Thu, Mar 15, 2018 Union-Find
  • Union-find
Tue, Mar 20, 2018 Strongly Connected Components
  • CLRS (22.5)
Thu, Mar 22, 2018 Tries
  • Tries
Tue, Mar 27, 2018 Hashing
  • CLRS (11.1 - 11.4)
Thu, Mar 29, 2018 Midterm 2 (in-class)
Tue, Apr 3, 2018 Hashing (Open Addressing)
  • Hashing (Open addressing)
  • CLRS (11.4)
Thu, Apr 5, 2018 Hashing (Open Addressing) Binary Search Trees
  • Hashing (Open Addressing)
  • BST
  • CLRS (11.4 Chp 12)
Tue, Apr 10, 2018 Binary Search Trees & AVL Trees
  • Binary Search Trees
  • AVL Trees
  • CLRS (12.3)
Thu, Apr 12, 2018 Skip Lists
  • Skip Lists
Tue, Apr 17, 2018 Skip Lists
  • Skip Lists
Thu, Apr 19, 2018 TBD
Tue, Apr 24, 2018 TBD