Lecture Time and Location. TuTh 4:00 pm - 5:20 pm, Light Engineering Lab 102, West Campus
Instructor. Rezaul A. Chowdhury (rezaul{at}cs{dot}stonybrook{dot}edu)
Office Hours. TuTh 2:00 pm - 3:30 pm, 1421 Computer Science Building
TA. Ibrahim Hammoud (firstname.lastname{at}stonybrook{dot}edu)
Office Hours. MoWe 2:00 pm - 3:30 pm, 2110 Computer Science Building
Course Description. We will explore techniques for designing and analyzing efficient algorithms, including algorithms for sorting and searching, greedy algorithms, divide-and-conquer algorithms, dynamic programming, graph algorithms, randomized algorithms, parallel algorithms and multithreaded computations, NP-completeness and approximation algorithms.
Prerequisites. AMS 210 or Mat 211; CSE 214 or CSE 260 (or consent of instructor).
Textbooks. Only the first one is required.
Course Requirements. The course grade will be based on the following.
Blackboard. Some course documents (e.g., homework solutions) will be available through Blackboard.
Lecture Schedule.
Date | Topic | Notes / Reading Material |
Tue, Aug 26 | Introduction |
|
Thu, Aug 28 | Asymptotic Analysis of Algorithms ( continued to next lecture ) |
|
Tue, Sep 2 | No Classes in Session | - |
Thu, Sep 4 | Asymptotic Analysis of Algorithms ( continued ) |
|
Tue, Sep 9 | Asymptotic Analysis of Algorithms ( continued ) |
|
Thu, Sep 11 | Correctness of Algorithms ( continued to next lecture ) |
|
Tue, Sep 16 | Correctness of Algorithms ( continued ) |
|
Thu, Sep 18 | Correctness of Algorithms ( continued ) |
|
Tue, Sep 23 | Correctness of Algorithms ( continued ) |
- |
Thu, Sep 25 | Heaps, Heapsort and Priority Queues ( continued to next lecture ) |
|
Tue, Sep 30 | Heaps, Heapsort and Priority Queues ( continued ) |
|
Thu, Oct 2 | Quicksort and Average Case Analysis ( continued to next lecture ) |
|
Tue, Oct 7 | Quicksort and Average Case Analysis ( continued ) |
|
Thu, Oct 9 | Quicksort and Average Case Analysis ( continued ) |
- |
Tue, Oct 14 | Sorting Lower Bound and Review of Sample Midterm Exams |
|
Thu, Oct 16 | Midterm ( 4:00pm - 5:30pm, in-class ) | - |
Tue, Oct 21 | Review of Background for HW2 | - |
Thu, Oct 23 | Selection |
|
Tue, Oct 28 | Dijkstra's Single-Source Shortest Paths Algorithm ( continued to next lecture ) |
|
Thu, Oct 30 | Dijkstra's Single-Source Shortest Paths Algorithm ( continued ) |
|
Tue, Nov 4 | Prim's Minimum Spanning Tree Algorithm ( continued to next lecture ) |
|
Thu, Nov 6 | Prim's Minimum Spanning Tree Algorithm ( continued ) |
|
Tue, Nov 11 | Kruskal's Minimum Spanning Tree Algorithm |
|
Thu, Nov 13 | Kruskal's Minimum Spanning Tree Algorithm ( continued ) |
- |
Tue, Nov 18 | Iterated Log, Inverse Ackermann, and the Union-Find Data Structure |
|
Thu, Nov 20 | Iterated Log, Inverse Ackermann, and the Union-Find Data Structure ( continued ) |
|
Tue, Nov 25 | Dynamic Programming ( continued to next lecture ) |
|
Thu, Nov 27 | Thanksgiving Break | - |
Tue, Dec 2 | Class Canceled | - |
Thu, Dec 4 | Dynamic Programming ( continued ) |
|
Mon, Dec 15 | Final Exam ( 2:15pm - 5:00pm, location: Light Engineering Lab 102, West Campus ) | - |
Homeworks.
Exams.