CS4102 Algorithms - Spring 2022
Course Description: Introduces the analysis of algorithms and the effects of data structures on them. Algorithms selected from areas such as sorting, searching, shortest paths, greedy algorithms, backtracking, divide-and-conquer, and dynamic programming. Data structures include heaps and search, splay, and spanning trees. Analysis techniques include asymptotic worst-case, expected time, amortized analysis, and reductions between problems
Availability (new): It is important to us to be available to our students, and to address their concerns. If you cannot connect with either of us during our office hours, e-mail us and we will find the time to meet virtually. That being said, like everybody else we are quite busy, so it may take a day or more to find a time to meet. And if you have any comments on the course—what is working, what is not working, what can be done better, etc.—we are very interested in hearing about them. Please send Prof. Hott, Prof. Horton, or one of the TAs an e-mail or post privately on Piazza to the instructors.
Syllabus: Click here
Homework Deadlines and Exam Dates
Important notes:
-
Basic Homeworks will be due at 11:30 pm on the Friday before the exam, except for Unit D’s which are due on the last day of class. This will be a hard deadline because we will release the solutions sometime the following morning.
- Advanced Homeworks: There is a soft deadline and a hard deadline.
- If you submit by the soft deadline, we will commit to giving you feedback within about a week, which will give you a few days to update your solution before the hard deadline.
- If you submit after the soft deadline, we will try but won’t guarantee you’ll get feedback before the hard deadline.
- You may submit solutions at most twice: once to get some feedback, and the second as your final submission.
-
Program Deadlines: They have a hard deadline that is the same as that unit’s hard deadline for Advanced Homeworks. They’ll be submitted to GradeScope and run against test-cases. You’ll be able to re-submit multiple times, but it’s possible that for some program we may limit how many times you can submit. (See each assignment for details.)
- Chance to re-take unit exams:
- Unit A: The re-take will be in class on 3/15 (right after spring break, right before the withdrawal deadline).
- Unit B and Unit C: You can re-take either or both of these during the final exam period.
- Unit D: This will be given during the final exam period, and there will not be a chance to re-take it.
- If you re-take an exam, there is no penalty, and your highest of the two scores will be counted.
Week | Date | Homework / Exam |
---|---|---|
Week 4 | Fri 2/18 | Unit A Basic HWs (due 11:30pm. Hard Deadline! Solutions will be released Sat. morning) |
Week 5 | Mon 2/21 | Soft deadline for Unit A Adv. HW |
Tue 2/22 | Unit A Exam | |
Week 6 | Tue 3/1 | Early Unit A Adv HW submissions returned |
Fri 3/4 | Unit A Adv HW hard deadline and Unit A Program | |
—– | 3/7 - 3/11 | SPRING BREAK |
Week 7 | Tue 3/15 | Chance to re-take Unit A Exam |
Week 8 | Fri 3/25 | Unit B Basic HWs (due 11:30pm. Hard Deadline! Solutions will be released Sat. morning) |
Week 9 | Mon 3/28 | Soft deadline for Unit B Adv. HW |
Tue 3/29 | Exam B | |
Week 10 | Tue 4/5 | Early Unit B Adv HW submissions returned |
Fri 4/8 | Unit B Adv HW hard deadline and Unit B Program | |
Week 11 | Mon 4/11 | Soft deadline for Unit C Adv. HW |
Fri 4/15 | Unit B Program hard deadline and Unit C Basic HWs both due 11:30pm. Hard Deadline! Unit C Basic HW Solutions will be released Sat. morning) | |
Week 12 | Tue 4/19 | Unit C Exam |
Tue 4/19 | Early Unit C Adv HW submissions returned | |
Fri 4/22 | Unit C Adv HW hard deadline and Unit C Program | |
Week 13 | —- | Nothing Due |
Week 14 | Tue 5/3 | Unit D’s Basic HWs (due 11:30pm. Hard Deadline! Solutions will be released Sat. morning) |
Tue 5/3 | Unit D’s Adv HW hard deadline and Unit D’s program due | |
Final | Tue 5/10 | Unit D Exam and chance to re-take exams for Units B and C. |
(Rooms to be announced by UVA Registrar later in the term.) |