Design and Analysis of Algorithms

CS 130B - Winter 2023


[ Home | Lectures ]

TENTATIVE LECTURE SCHEDULE




Extra resources:
  • Supplemental notes and videos by Eric: https://ucsb-algorithms.com/dp/
  • For DP: Cool web DP programming interface by Deb Banerji (Deb was a star undergrad and algorithms TA at Georgia Tech)



  • Tentative schedule (exam dates may change):


    Dynamic Programming, Divide and Conquer with FFT:
    Tuesday, January 10: Class cancelled

    Thursday, January 12:
  • Fibonacci numbers
  • Longest increasing subsequences (LIS)
  • Longest Common Subsequence (LCS) and Practice problem [DPV] 6.1
  • Reading: [DPV] Chapter 6.2-6.3
    Lecture video: DP1

    Tuesday, January 17:
  • Knapsack
  • Reading: [DPV] Chapter 6.4
    Lecture video: DP2 first half

    Thursday, January 19:
  • Chain multiply
  • Reading: TBD

    Tuesday, January 24:
  • Practice DP

  • Thursday, January 26: Exam 1: Dynamic programming (DP)

    Divide and Conquer, FFT, RSA, NP-Completeness:
    Tuesday, February 2 - Thursday, February 4:
  • D&C intro, solving recurrences
  • D&C: Fast multiplication
  • D&C: Median
  • Reading: [DPV] Chapter 2.1, 2.2, 2.4

    Tuesday, February 9 - Thursday, February 11:
  • FFT (Fast Fourier Transform)
  • Reading: [DPV] Chapter 2.6

    Tuesday, February 16 - Thursday, February 18:
  • RSA Cryptosystem
  • Reading: [DPV] Chapter 1

    Tuesday, February 21 - Thursday, March 2:
  • NP-Completeness
    Reading: [DPV] Chapter 8

  • Tuesday, March 7: TBD

    Thursday, March 9: Exam 2 on FFT, RSA, and NP-completeness

    Tuesday, March 14: TBD

    Thursday, March 16:
    Final exam review

    Final Exam: Wednesday, March 22, 7:30 - 10:30pm (See UCSB final exam schedule)