Design and Analysis of Algorithms

CS 130B - Winter 2024


[ 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):

    Divide and Conquer, FFT, RSA:
    Tuesday, January 9 - Thursday, January 11:
  • D&C intro, solving recurrences
  • D&C: Fast multiplication
  • Reading: [DPV] Chapter 2.1, 2.2, 2.4

    Tuesday, January 16 - Thursday, January 18:
  • FFT (Fast Fourier Transform)
  • Reading: [DPV] Chapter 2.6

    Tuesday, January 23 - Thursday, January 25:
  • RSA Cryptosystem
  • Reading: [DPV] Chapter 1

    Tuesday, January 30:
  • Intro to Linear Programming (LP)
    Reading: [DPV] Chapter 7.1

  • Thursday, February 1:
  • LP Duality
    Reading: [DPV] Chapter 7.4

  • Tuesday, February 6: Exam 1: D&C, FFT, RSA, and LP

    Dynamic Programming (DP):
    Thursday, February 8:
  • Fibonacci numbers
  • Longest increasing subsequences (LIS)
  • Practice problem [DPV] 6.1
  • Reading: [DPV] Chapter 6.2
    Lecture video: DP1

    Tuesday, February 13:
  • Longest Common Subsequence (LCS)
  • Knapsack
  • Reading: [DPV] Chapters 6.3-6.4
    Lecture video: DP2 first half

    Thursday, February 15:
  • Chain multiply
  • Reading: TBD

    Tuesday, February 20:
  • Practice DP

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

  • Thursday, March 7: TBA

    Tuesday, March 12: Exam 2 on DP and NP-completeness

    Thursday, March 14: TBD

    Final Exam: Wednesday, March 20, 7:30 - 10:30pm (See UCSB final exam schedule)
    (The final exam is cumulative. The exam date and time is set by the registrar.)