Algorithm
- AI are bad at identifying the relationship between objects. Algorithms are needed.
“They have many candidate solutions, the overwhelming majority of which do not solve the problem at hand” — CLRS
Correctness
- The initialization, maintenance, and termination of loop invariant.
Design
- Incremental (insertion-sort)
- divide-and-conquer
Analysis
- Why worst case?
- Guaranteed upper bound
- Worst cases may arise frequently
- Average case is often roughly as bad as the worst case
Concepts
- Recurrence relationships (CLRS 1, 2, 3)
- data-structure
- np-complete