CS 3510: Design & Analysis of Algorithms
Welcome to the course page for CS 3510 in Fall 2020, Georgia Tech’s undergraduate introductory course on algorithms.
Course Content
Below, DPV refers to the textbook of Dasgupta, Papdimitriou, and Vazirani.
Recurrences and Cryptography
- Day 1, Tuesday 8/18/2020: Introduction to Course
- Day 2, Thursday 8/20/2020: Big-O, Logs, Fibonacci
- Link to live session
- Required Reading: DPV Chapter 0
- Videos:
- Homework 1A released, due Sunday 8/30 11pm
- Day 3, Tuesday 8/25/2020: MergeSort and Multiplication
- Day 4, Thursday 8/27/2020: Recurrences and Matrix Multiplication
- Day 5, Tuesday 9/1/2020: Modular Arithmetic
- Link to live session
- Required Reading: DPV Chapter 1.2 & 1.3
- Videos:
- Homework 1B released, due Sunday 9/13 11pm
- Day 6, Thursday 9/3/2020: RSA Cryptosystem
- NO CLASS Tuesday 9/8
- Day 7, Thursday 9/10/2020: Fast Fourier Transform
- Day 8, Tuesday 9/15/2020: EXAM 1
- Homework 2A released, due Sunday 9/27 11pm
Dynamic Programming
- Day 9, Thursday 9/17/2020: Intro to DP & Shortest Paths in a DAG
- Day 10, Tuesday 9/22/2020: Longest Increasing Subsequences
- Link to live session
- Required Reading: DPV Chapter 6.2
- Videos: (Note: This is a playlist with several videos!)
- Day 11, Thursday 9/24/2020: Longest Common Subsequence
- Link to live session
- OPTIONAL Reading: DPV Chapter 6.3
- Note: Chapter 6.3 is about the edit distance between two strings, which is slighly different than the LCS. But the solutions are somewhat similar so you will likely find it helpful.
- Videos: (Note: This is a playlist with several videos!)
- Homework 2B released, due Sunday 10/4 11pm
- Day 12, Tuesday 9/29/2020: The Knapsack Problem
- Day 13, Thursday 10/1/2020: Chain Matrix Multiplication + DP Practice
- Day 14, Tuesday 10/6/2020: EXAM 2
- Homework 3A released, due Sunday 10/18 11pm
Graph Algorithms
- Day 15, Thursday 10/8/2020: Recap on graphs. Notation. Dijkstra’s algorithm.
- Day 16, Tuesday 10/13/2020: Graphs traversal. Depth First Search.
- Day 17, Thursday 10/15/2020: Strongly connected components.
- Link to live session
- Required Reading: DPV Chapter 3.4
- Videos:
- Homework 3B released, due Sunday 10/25 11pm
- Day 18, Tuesday 10/20/2020: Minimimum Spanning Trees.
- Day 19, Thursday 10/22/2020: The cut property and the cycle property.
- Day 20, Tuesday 10/27/2020: Review for EXAM 3.
- Link to live session
- Required Reading: It is review day! Chapters 3, 4 and 5.1 cover the exam content.
- Day 21, Thursday 10/29/2020: EXAM 3
- Homework 4A released, due Sunday 11/8 11pm
Complexity Theory and NP-completeness
- Day 22, Tuesday 11/3/2020: Introduction to NP theory. Reductions.
- Day 23, Thursday 11/5/2020: Boolean satisfiability problems. SAT and 3-SAT.
- Link to live session
- Required Reading: DPV Chapter 8.3 (specifically, the reduction SAT to 3SAT).
- Videos:
- Homework 4B released, due Sunday 11/15 11pm
- Day 24, Tuesday 11/10/2020: Graphs problems.
- Link to live session
- Required Reading: DPV Chapter 8.3 (specifically, the reductions from 3SAT to independent set(IS), and from IS to Clique and Vertex-Cover).
- Videos:
- Day 25, Thursday 11/12/2020: Knapsack.
- Day 26, Tuesday 11/17/2020: Review for EXAM 4.
- Day 27, Thursday 11/19/2020: EXAM 4
- Day 28, Tuesday 11/24/2020: NO CLASS