COMP3010: Algorithm Theory and Design
Daniel Sutantyo, Department of Computing, Macquarie University
13.0 - Revision
List of Topics
13.0 - Revision
Complexity
Correctness
Brute Force
Dynamic Programming
Greedy
Divide and Conquer (Recursion Tree)
Strings
Graphs
Probabilistic Methods
P vs NP (Reduction)
P vs NP (Approximation Algorithms)
Class Test 2
13.0 - Revision
Complexity
Correctness
Brute Force
Dynamic Programming
Greedy
Divide and Conquer (Recursion Tree)
Strings
Graphs
Probabilistic Methods
P vs NP (Reduction)
P vs NP (Approximation Algorithms)
Final Exam
13.0 - Revision
Complexity
Correctness
Brute Force
Dynamic Programming
Greedy
Divide and Conquer (Recursion Tree)
Strings
Graphs
Probabilistic Methods
P vs NP (Reduction)
P vs NP (Approximation Algorithms)
Final Exam
13.0 - Revision
Complexity
Correctness
Brute Force
Dynamic Programming
(25 marks ~ 14%)
Greedy
(30 marks ~ 16%)
Divide and Conquer (Recursion Tree)
Strings
Graphs
(35 marks ~ 19%)
Probabilistic Methods
P vs NP (Reduction)
(25 marks ~ 14%)
P vs NP (Approximation Algorithms)
(45 marks ~ 25%)
Class Test 2
13.0 - Revision
Complexity
Correctness
Brute Force
Dynamic Programming
Greedy
Divide and Conquer (Recursion Tree)
Strings
Graphs
Probabilistic Methods
P vs NP (Reduction)
P vs NP (Approximation Algorithms)
Major Topics not in the Final Exam:
13.0 - Revision
String Algorithms (Huffman Coding, Edit Distance)
as in you would not be required to do them, but you may still need to know the basic principles
Substitution method
as above
Week 1-3, 6: Complexity, Correctness, Brute Force
13.0 - Revision
induction
complexity notation (\(O\)-notation, \(\Theta\)-notation, \(\Omega\)-notation)
recursion-tree method, master-method
permutations and combinations for brute force
\(O(2^n)\) and \(O(n!)\)
recursive backtracking
Week 4-5: Greedy and Dynamic Programming
13.0 - Revision
recursive relation (recursion tree)
decompose problems into subproblems
optimal substructure, cut and paste technique
dynamic programming:
overlapping subproblems
no need for bottom-up if you cannot spot it
greedy algorithm:
greedy choice, explain why it is safe
time complexities
Week 8: Graph Algorithms
13.0 - Revision
mostly straightforward
make sure you understand the algorithms:
Bellman-Ford
Matrix Multiplication Method
Floyd-Warshall
Week 11-12: P vs NP
13.0 - Revision
may have some brute-force questions
understand what reductions are
understand how to do approximation algorithms
Extra Support Sessions
13.0 - Revision
Can organise a zoom class on Tuesday or Wednesday, Q&A session
but please don't use this to ask questions about the assignment ...
Discord