Guided Lesson Notes
Understanding Graph Data Structure
Graph Data Structure focuses on relationships, reachability, paths, cycles, connectivity, and optimization over edges. Graphs model relationships between vertices using edges, which can be directed, undirected, weighted, or unweighted.
Model: draw vertices as dots and edges as connections; then decide whether direction, weight, or capacity matters.
Invariant: visited, distance, parent, component, or flow arrays must match what has actually been discovered so far.
Implementation: adjacency lists or matrices, queues, stacks, priority queues, union-find, and repeated edge relaxation.
Use Graph Data Structure when the problem mentions roads, networks, prerequisites, components, shortest paths, spanning costs, or dependency order.
