Algorithms TTIC 31010
Winter Quarter 2014
Instructor: Yury MakarychevLectures: Tuesday & Thursdays, 10:20-11:40, TTIC, room 530
Office hours: after the class on Thursdays or by appointment (please email me).
Mailing list: algorithms-class-winter-2014@ttic.edu . Follow this link https://groups.google.com/a/ttic.edu/group/algorithms-class-winter-2014/subscribe to subscribe to the course mailing list.
Note: the class will be from 9:40am to 11:00am on Thursday, February 13.
Description
This is a graduate level course on algorithms, with the emphasis on computational problems that are central to both theory and practice, and on developing techniques for the design and the rigorous analysis of algorithms and data structures for such problems.Topics
- Greedy algorithms
- Dynamic programming
- Amortized analysis
- Maximum flow, minimum cut
- Linear Programming
- Randomized algorithms and probabilistic analysis
- NP-hardness
- Approximation algorithms
- Advanced data structures
Textbook
The main course textbook is is Algorithm Design by Kleinberg and Tardos. However, not all the course material is covered by the book.
Prerequisites
We assume that the students are familiar with the following topics, usually covered in undergraduate algorithms courses: time and memory complexity analysis, sorting, basic data structures (linked lists, trees, balanced trees, heaps), algorithmic paradigms (greedy algorithms, divide and conquer techniques), basic graph and network algorithms (BFS, DFS, MST, shortest path algorithms, max flow).
Requirements
There will be 4 closed-book quizzes, and one final exam. Grades are based on the final exam (40%) and quizzes (60%). Only the best 3 out of 4 quizzes will count towards the grade. Quiz dates tentatively are:
- January 28
- February 11
- February 25
- March 11
We will distribute sets of practice problems that will help you to prepare to quizzes. Solving them is strongly recommended.
Homeworks
Prerequisites
We assume that the students are familiar with the following topics, usually covered in undergraduate algorithms courses: time and memory complexity analysis, sorting, basic data structures (linked lists, trees, balanced trees, heaps), algorithmic paradigms (greedy algorithms, divide and conquer techniques), basic graph and network algorithms (BFS, DFS, MST, shortest path algorithms, max flow).Requirements
There will be 4 closed-book quizzes, and one final exam. Grades are based on the final exam (40%) and quizzes (60%). Only the best 3 out of 4 quizzes will count towards the grade. Quiz dates tentatively are:- January 28
- February 11
- February 25
- March 11