Syllabus
Schedule
Week | Saturday | Monday | Lecture Topic | HW Topic | HW Release | TA1 | TA2 | Occasion |
---|---|---|---|---|---|---|---|---|
1 | 6/30 | 7/01 | Algorithmic Warmup | a+b: introducing the framework | A1 | Mahmoudi | Mirshekari | |
2 | 7/6 | 7/08 | Greedy Algorithms | Programming Challenges | A2, W1 | Yalsavar | Moradi | |
3 | 7/13 | 7/15 | Divide and Conquer | Algorithmic Warmup | A3 | Pirhadi | Mirzaei | |
4 | 7/20 | 7/22 | Dynamic Programming 1 | Greedy Algorithms | A4 | Abdollahpour | Kodeiri | |
5 | 7/27 | 7/29 | Dynamic Programming 2 | Programming Exam 1 | E1 | Ghaderan | Moghadami | Saturday Off |
6 | 8/04 | 8/06 | Dynamic Programming 3 | Divide and Conquer | A5, W2 | Mahmoudi | Mirshekari | Sunday & Tuesday Off |
7 | 8/11 | 8/13 | Basic Data Structures | Dynamic Programming 1 | A6 | Yalsavar | Moradi | Wednesday Off |
8 | 8/18 | 8/20 | Dynamic Array + Amortized Analysis | Dynamic Programming 2 | A7 | Pirhadi | Mirzaei | Basic Sceince Midterms |
9 | 8/25 | 8/27 | Priority Queue and Disjoint Set | Basic Data Structures | A8 | Abdollahpour | Kodeiri | Basic Sceince Midterms |
10 | 9/02 | 9/04 | Hashing | - | - | Ghaderan | Moghadami | Basic Sceince Midterms |
11 | 9/09 | 9/11 | BST 1 | Priority Queue and Disjoint Set | A9 | Ghaderan | Moghadami | |
12 | 9/16 | 9/18 | BST 2 | Hash Table and Hash Functions | A10 | Mahmoudi | Mirshekari | |
13 | 9/23 | 9/25 | Graph Decomposition 1 | BST | A11 | Yalsavar | Moradi | |
14 | 9/30 | 10/02 | Graph Decomposition 2 | Programming Exam 2 | E2 | Pirhadi | Mirzaei | |
15 | 10/07 | 10/09 | Red-black Tree, B-Tree | Graph1 | A12, W3 | Abdollahpour | Kodeiri |
- A*: Programming Assignments
- E*: Programming Exams
- W*: Written Assignments
Grading Policy
- 20%: Weekly Quizes
- 45%: Programming Assignments
- 10%: Written Assignments
- 15%: Programming Exams
- 10%: Final Written Exam
- +10%: Extra Credit Project
Students must receive at least half the points on all class modules (above) for a passing grade. Extra credit only applicable to students who have received a passing grade.
Academic Dishonsty Policy
Any student involved in cheating (provider or receiver) will receive a failing grade along with a report to the University Decipline office. If you don’t have the time to help your friend, do not provide them with the answer. You will fail the course! Never, ever show your code or homework to anyone.
Programming Exam
Programming Exams will be held on Monday for the week of the exam (from the schedule above) from 12:30 to 5:30pm.
Weekly Quizes
Quizes will be held every Monday for half an hour and will be graded in GradeScope.
Assignments
Written and programming assignment submission are not accepted after the deadline. If you are late, submit what you have and start working on the next assignment.
Attendance Policy
According to univesity guidlines, students who miss more than 6 sessions are not eligable for a passing grade. University guidelines will be followed. If you cannot attend a session always contact the instructor ahead of time with a valid reason. Depending on your reason and record, the instructor may decide to not count your absency for that session.
TA Classes
TA Classes will be held on Mondays from 12:30 till 2:30 in room -120.
TA Office Hours
Location: Basement Computer Lab (site), TA Help Desk #1