Measures of the complexity of algorithms. Amortized complexity. Greedy algorithms. Dynamic programming. NP-Completeness and lower-bound theory. Cook's Theorem. Techniques for proving problems NP-complete. Complexity of parallel algorithms. Well-parallelizable and hardly-parallelizable problems. |