Please sign up the course on Piazza.
Time: MoWeFr 9:00~9:50am
Location: Cooke 121
Credits: 3
Shi Li
Office: 328 Davis Hall
Email: [first name][last name initial][at][buffalo][dot][edu]
Homepage: http://www.cse.buffalo.edu/~shil/
Office Hours: 10:00am-12:00pm, Wednesdays, Davis 328
Name | Office Hours | Office Hours Location | |
---|---|---|---|
Di Wang | dwang45 | 10:00am-12:00pm, Mondays | Davis 300 Lounge |
Minwei Ye | minweiye | 10:00am-12:00pm, Tuesdays | Davis 300 Lounge |
Alexander Stachnik | ajstachn | 10:00am-12:00pm, Thursdays | Davis 300 Lounge |
Name | |
---|---|
Li Zhang | lzhang34 |
Xin Liu | xliu47 |
Xin Ma | xma24 |
Algorithm design and analysis is fundamental to all areas of computer science and gives a rigorous framework for the study of optimization. This course provides an introduction to algorithm design through a survey of the common algorithm design paradigms of greedy optimization, divide and conquer and dynamic programming. More advanced topics covered in the course include network flows, NP-completeness, linear programming, approximation algorithms, etc.
Jon Kleinberg and Eva Tardos Algorithm Design. 1st Edition, 2005, Pearson.
Your final grade will be computed as follows:
HWs and Projects | Topics Covered | Post Date | Due Date |
---|---|---|---|
Homework 1 | Introduction, Graph Basics | Sep 12 | Sep 26 |
Project 1 Public Test Cases | Minimum Spanning Tree | Sep 26 | Oct 30 |
Homework 2 | Greedy Algorithms, Divide-and-Conquer | Oct 14 | Oct 28 |
Homework 3 | Dynamic Programming | Oct 28 | Nov 14 |
Project 2 | Longest Common Subsequence | Nov 14 | Dec 9 |
Homework 4 | NP-Completeness | Nov 14 | Dec 2 |
Homework 5 | Approximation and Randomized Algorithms | Dec 5 | Dec 12 |
Week | Date | Topics&Reading Assigments | Contents | Slides |
---|---|---|---|---|
1 | Aug 29 | Introduction 2.1, 2.2, 2.4 | Syllabus | Slides / Printout Last updated: 10/03/16 16:54 |
Aug 31 | Asymptotical Notations | |||
Sep 2 | Common Running Times | |||
2 | Sep 5 | Labor Day | ||
Sep 7 | Graph Basics 3.1, 3.2, 3.3, 3.6 | Graph Representations | Slides / Printout Last updated: 10/06/16 20:04 | |
Sep 9 | Graph Connectivity and Traversal | |||
3 | Sep 12 | Topological Order | ||
Sep 14 | Greedy Algorithms 4.1, 4.2, 4.4, 4.5, 4.6, 2.5 | Interval Scheduling | Slides / Printout Last updated: 10/03/16 16:55 | |
Sep 16 | MST | |||
4 | Sep 19 | Kruskal's Algorithm | ||
Sep 21 | Prim's Algorithm | |||
Sep 23 | Priority Queue and Heap | |||
5 | Sep 26 | Shortest Path and Dijkstra's Algorithm | ||
Sep 28 | Divide and Conquer 5.1, 5.3, 13.5, 5.5 | Merge Sort and Count Inversions | Slides / Printout Last updated: 10/11/16 10:08 | |
Sep 30 | Quick Sort and Selection Problem | |||
6 | Oct 3 | Polynomial and Matrix Multiplications | ||
Oct 5 | Solving Recurrences | |||
Oct 7 | Counting Inversions via Self-Balancing BST | |||
7 | Oct 10 | No Class Today | ||
Oct 12 | In-Class Exam #1 | |||
Oct 14 | Dynamic Programming 6.1, 6.2, 6.4, 6.6, 6.8, 6.9 | Weighted Interval Scheduling | Slides / Printout Last updated: 10/28/16 12:22 | |
8 | Oct 17 | Subset Sums and Knapsack | ||
Oct 19 | Sequence Alignment | |||
Oct 21 | Shortes Paths with Negative Weights | |||
9 | Oct 24 | Bellman-Ford | ||
Oct 26 | All-Pair Shortest Paths | |||
Oct 28 | Exercise Problems | |||
10 | Oct 31 | NP-Completeness 8.1 ~ 8.5 | Some Hard Problems, P | Slides / Printout Last updated: 11/14/16 11:11 |
Nov 2 | NP, Co-NP, P=NP and NPC | |||
Nov 4 | Circuit-SAT, 3-SAT | |||
11 | Nov 7 | Independent Set, Vertex Cover | ||
Nov 9 | Hamiltonian Cycle | |||
Nov 11 | 3-Coloring | |||
12 | Nov 14 | Exercise Problems | ||
Nov 16 | Approximation and Randomized Algorithms 11.6, 13.3, 13.4, 13.5 | Travelling Salesman Problem | Slides / Printout Last updated: 12/05/16 13:20 | |
Nov 18 | Vertex Cover | |||
13 | Nov 21 | MAX 3-SAT | ||
Nov 23 | Fall Recess | |||
Nov 25 | ||||
14 | Nov 28 | In-Class Exam #2 | ||
Nov 30 | Approximation and Randomized Algorithms cont. 11.6, 13.3, 13.4, 13.5 | Randomized Quicksort and Median Finder | ||
Dec 2 | Linear Programming, Weighted Vertex Cover | |||
15 | Dec 5 | Exercise Problems | ||
Dec 7 | Final Review | |||
Dec 9 | Q & A Session by TAs |
Undergraduate: http://undergrad-catalog.buffalo.edu/policies/course/integrity.shtml
Graduate: http://grad.buffalo.edu/Academics/Policies-Procedures/Academic-Integrity.html