Design and Analysis of Algorithms

CS 3510 - FALL 2019


[ Home | Lectures | Calendar | Homeworks ]

TENTATIVE LECTURE SCHEDULE




Extra resources:
  • Supplemental notes and videos by Eric: https://gt-algorithms.com/dp/


  • Tentative schedule for rest of semester:

    Tuesday, November 5: P, NP, Search problems, NP-completeness, Reductions
    Reading: [DPV] Chapters 8.1 and 8.2
    Eric's notes

    Thursday, November 7: NP-completeness, and Clique is NP-complete
    Reading: [DPV] Chapters 8.1 and 8.2
    Eric's notes

    Friday, November 8: HW 8 due

    Tuesday, November 12: 3SAT is NP-complete
    Reading: [DPV] Chapter 8.3
    Eric's notes

    Thursday, November 14: Independent Set is NP-complete
    Reading: [DPV] Chapter 8.3
    Eric's notes

    Tuesday, November 19: Knapsack is NP-complete
    Eric's notes

    Thursday, November 21: Exam 4 on NP

    Tuesday, November 26: No class (Thanksgiving)

    Tuesday, December 3: Review for final exam

    Final Exam: Tuesday, Dec 10 2:40 PM ‐ 5:30 PM



    Dynamic Programming:
    Extra resources for DP:
  • Supplemental notes and videos by Eric: https://gt-algorithms.com/dp/
  • Cool web DP programming interface by Deb Banerji:

  • Tuesday, August 20:
  • Course Introduction
  • Review: O( ) notation and manipulating log's
  • Fibonacci numbers
  • Longest increasing subsequences
  • Reading: [DPV] Chapter 0 and 6.2
    Eric's LIS notes

    Thursday, August 22:
  • Longest Common Subsequence (LCS) and Practice problem [DPV] 6.1
  • Reading: [DPV] Chapter 6.4
    Eric's LCS notes

    Tuesday, August 27:
  • Knapsack
  • Reading: [DPV] Chapter 6.4
    Eric's Knapsack notes

    Thursday, August 29:
  • Chain Matrix Multiply
  • Reading: [DPV] Chapter 6.5
    Eric's Chain Multiply notes

    Tuesday, September 3:
  • More DP practice...

  • Thursday, September 5:
  • And even more DP practice...

    Tuesday, September 10: Exam 1 on DP

    Divide and Conquer and RSA:
    Thursday, September 12:
  • Multiplication
  • Reading: [DPV] Chapter 2.1
    Eric's notes

    Tuesday, September 17:
  • Solving recurrences
  • Reading: [DPV] Chapter 2.2
    Eric's notes

    Thursday, September 19 - Thursday, September 26:
  • RSA Cryptosystem
  • Reading: [DPV] Chapter 1
    Eric's notes on Modular Arithmetic
    Eric's notes on RSA
    Eric's notes on Primality Testing

    Tuesday, October 1:
  • D&C example: Linear-time Median
  • Eric's notes

    Thursday, October 3:
  • Review

  • Tuesday, October 8: Exam 2 on D&C and RSA

    Thursday, October 10: DFS, Connected components, Topologically sorting a DAG
    Reading: [DPV] Chapters 3.1-3.3
    Eric's notes

    Tuesday, October 15: No class (fall break)

    Thursday, October 17:
    Strongly connected components (SCC)
    Reading: [DPV] Chapter 3.4
    Eric's notes

    Tuesday, October 22: BFS, Dijkstra's, min-heap
    Reading: [DPV] Chapter 4.0-4.5
    Eric's notes

    October 23: HW 6 due

    Thursday, October 24: MST, Cut property
    Reading: [DPV] Chapter 5.1
    Eric's notes


    Monday, October 28: HW 7 due

    Tuesday, October 29: Kruskal's algorithm and union-find data structure
    Reading: [DPV] Chapter 5.1
    Eric's notes

    Thursday, October 31: Exam 3 on Graph algorithms