Problem
1. Describe three ways to implement graphs in computer memory.
2. Explain the difference between depth-first and breadth-first traversal of a graph.
3. What data structures are needed to keep track of the waiting vertices during
(a) depth-first and (b) breadth-first traversal.