Problem
1. What is a breadth-first search? What can it be used for?
2. What is a depth-first search? What can it be used for?
3. Under what circumstances are the paths found by Dijkstra's algorithm not unique?
4. Under what circumstances is the minimum spanning tree unique?
5. What is a topological sort?