Learning Outcomes
At the end of this lecture, you’ll be able to:
- Define the neighborhood of a vertex.
- Identify a path from a source vertex to a destination vertex.
- State the General Graph Search problem.
- Identify reachable vertices in a graph, from a source vertex.
- Identify a general solution to the general graph search problem.
- Generate and trace Graph search types by specifying how to explore the neighbor in the general search algorithm.
- Describe, trace, and implement the Breadth-First Search algorithm.
- Describe, trace, and implement the Depth-First Search algorithm.
- Identify which data structure supports each traversal/search type: breadth-first, depth-first
- Analyze the time complexity of BFS and DFS for each Graph implementation (list vs. matrix)
Lecture Plan
In this lecture, we'll cover the following lessons:
- Graph Terminology: Neighborhood of a Vertex⚡
- Graph Terminology: Path⚡
- Graph Search: Definition
- Graph Search: Exercise⚡
- Graph Search: General Solution
- Graph Search: BFS
- Graph Search: BFS Exercise⚡
- Graph Search: BFS Pseudocode⚡
- Graph Search: DFS
- Graph Search: DFS Exercise⚡
- Graph Search: DFS Pseudocode⚡
- Graph Search: Analysis
- Graph Search: Summary
Lessons marked with ⚡ contain exercise/activity.