Exams
This course has four exams. Each exam is worth 20%
of the semester grade. For the exams the only think that you need to have with you is a one-side handwriten page (cheat sheet).
No electronic devices are allowed to be used during an exam, except for
pocket calculators. Devices such as smartphones, or other network-connected
devices, that include calculator functionality, are strictly not allowed.
- First exam: Monday September 22, 2:30-4:00 in room 103.
- Topics:
- Time complexity
- Recurrence solution
- Binary search
- Sorting Algorithms
- Practice question 1.
- Second exam: Wednesday October 15, 2:30-4:00 in room 103.
- Topics:
- Linked list
- Stack - Queue
- Tree
- Binary Search Tree
- Heap - Heap Sort - Priority Queue
- Red-Black Tree
- Lab 2 (very important)
- Third exam: Friday November 14, 2:00-4:00 pm in Nedderman Hall, room 110.
- Topics:
- Red-Black Tree insertion
- Union find
- quick find
- quick union
- weighted quick union
- weighted quick-union with path compression
- Greedy algorithm
- Dynamic Programming
- Fibonacci number
- 0-1 Knapsack problem
- Weighted Interval scheduling
- Optimal matrix multiplication
- Longest Common Sequence (LCS)
- Subset Sum
- Longest Increasing Subsequence (LIS)
- Box stacking problem (Lab 3)
- Fourth exam: Wednesday December 10, 2:00-4:00 pm in ERB room 130.
- Topics:
- Basics about graph. Graph representation - adjacency list/matrix, different type of graphs.
- Graph traversal
- Depth First Search (DFS)
- Bredth First Search (BFS)
- Minimum Spanning Tree - Kruskal's algorithm, Prim's algorithm
- Shortest path problems, Dijkstra's algorithm, Bellman Ford algorithm, Floyd Warshall algorithm