s
|
Instructor: Dr. Shawn Shamsian |
|||
|
Class Meeting Time: |
F 5-7:40PM, M 6-8:50PM |
Class Location: |
OHE 136 |
|
Instr. Phone: |
|
Instr. Office: |
SAL 236 |
|
Email: |
sshamsia@usc.edu |
Office Hours: |
M 2~3PM, F 1~2PM |
|
Teaching Assistant : Jae Cha |
|||
|
TA Phone: |
213-740-2354 |
TA Office: |
EEB 332 |
|
Email: |
jaecha@usc.edu |
Office Hours: |
W 1:00~3:00PM |
|
Teaching Assistant : Marcos Vieira |
|||
|
TA Phone: |
|
TA Office: |
SAL 103 |
|
Email: |
Office Hours: |
F 9:00 – 11:00AM |
|
|
|
|||
|
Teaching Assistant : Majed Alresaini |
|||
|
TA Phone: |
|
TA Office: |
SAL 103 |
|
Email: |
alresain@usc.edu |
Office Hours: |
TH 2:00 – 4:00PM |
Teaching
Assistant : Dilip Iyer
|
TA Phone: |
|
TA Office: |
SAL 103 |
|
Email: |
dilipiye@usc.edu |
Office Hours: |
T 10:00-12:00PM |
Graders :
Manish Khanna
<manishkh@usc.edu> and Rutuja Joshi
<rutujajo@usc.edu>
Course Information:
Students in the class are expected to have a reasonable degree of mathematical sophistication, and to be familiar with the basic notions of algorithms and data structures, discrete mathematics, and probability. Undergraduate classes in these subjects should be sufficient. If you have doubts about meeting these prerequisites, please contact the instructor.
Class Structure:
Syllabus
This syllabus is meant as an outline. Depending on progress, material may be
added or removed. Also, there will often be interesting tangents to follow.
* Introduction and overview
* Complexity of algorithms--review
* Basic graph algorithms--review
* Greedy Algorithms
* Data structures
* Graph algorithms
* Dynamic Programming
* Divide-and-Conquer
* Amortized analysis
* Max-Flow/Min-Cut and its applications
* P, NP, and NP-Completeness
* Approximation methods, linear programming
Exam Schedule
|
Exam |
Date |
Time |
Location |
Covered Materials |
Weight |
|
Midterm I |
Oct 5th |
5:00 to 7:00 |
THH 101 and 201 |
Lecture Covered |
30% |
|
Midterm II |
Nov 9th |
5:00 to 7:00 |
SGM 123 |
Lecture Covered |
30% |
|
Final |
Dec 14th |
4:30 to 6:30 |
SGM 123 |
Comprehensive |
40% |
|
Final |
Dec 17th |
7:00 to 9:00 |
SGM 124 |
Comprehensive |
40% |
Reading Schedule
|
|
Subject |
Chapter(s) |
|
|
Introduction |
Algorithm Design: Chapter 1 |
|
|
Complexity Analysis |
Algorithm Design: Chapter 2 |
|
|
Graphs |
Algorithm Design: Chapter 3 |
|
|
Memorial Day |
No Class |
|
|
Greedy technique |
Chapter 4 |
|
|
Greedy technique Heaps from
supplemental textbook |
Chapter 4 & Supplement textbook |
|
|
Shortest path and minimum spanning tree |
Chapter 4 |
|
|
Dynamic programming |
Chapter 6 |
|
|
Dynamic programming |
Chapter 6 |
|
|
Midterm I |
|
|
|
Divide and conquer |
Chapter 5 |
|
|
Network flow |
Chapter 7 |
|
|
Network flow |
Chapter 7 |
|
|
|
No Class |
|
|
Circulation |
Chapter 7 |
|
|
Mid-term II; |
|
|
|
NP-Completeness |
Chapter 8 |
|
|
NP-Completeness |
Chapter 8 |
|
|
NP completeness TSP |
Supplement textbook |
|
|
Approximation algorithms |
Chapter 11 |
|
|
Linear programming |
|
|
|
Review |
|
|
|
Final |
|
Grading
There will be two midterms and one final exam in this course. Each midterm worths 30% and the final 40%. There will be homework
assigned from the textbook roughly every 1-2 weeks. The homework will be
collected and graded but will NOT be accounted in your grade; Solutions to the
homework will become available shortly after the deadline.
Homework is due at the start of class on the due date. There will be roughly 7
homework assignments.
Additional policies:
The