4005-800: Final Exam
The final exam will take place on Wednesday, Feb 23, 6:00-7:50pm, in room 70-1400.
The tutoring center might be open during the finals week. We are in the process of figuring out the schedule - please check the tutoring website for details.
More info:
-
The final exam is semi-cumulative. This means that it will emphasize the materials from the last five weeks but you need
to know the main points of the first half of the quarter: e.g., be familiar with asymptotic notation,
analyze the running time of a recursive algorithm, know how dynamic programming works, etc. You will not be asked to trace specific algorithms from the first five weeks.
The topics to study:
- Graph algorithms (including BFS/DFS and their applications, minimum spanning tree algorithms, shortest paths algorithms, flow networks and their applications) - there will be about 3 problems related to graph algorithms
- P,NP,NP-complete (we will cover NP-completeness in week 10) - there will be about 1 problem on this topic
- Topics from the first five weeks - there will be 1 dynamic programming problem
-
The final exam consists of 5 problems, each worth 10 points. I will drop the lowest-scored problem and the remaining four problems
contribute to the overall score.
-
The final is closed book, notes, laptops, cell-phones, etc. However, you might bring one letter-sized double-sided "cheat-sheet"
in your own handwriting.
-
Here is a a collection of practice problems. The practice problems do not indicate the
difficulty of the actual final, though I tried to design both the practice problems and the actual final exam problems at about the same difficulty level
(of course, your judgment of difficulty level might be different than mine).
By the end of week 10 I will post the solutions of the practice problems.
I recommend you to solve the practice problems first and only after you are done, check the solutions.
Note: I typed the solutions quickly, please let me know if you find any errors, typos, and discrepancies. Thanks.