Breadth-First Search
BFS explores a graph level by level, visiting all vertices at distance one before distance two, and so on. It uses a queue and a visited structure. In an unweighted graph, BFS from a source finds shortest paths in terms of the minimum number of edges.
Primary data structure: Queue.
Uses visited tracking to avoid repeated processing.
Finds minimum-edge paths in unweighted graphs.
Can be used for level-order exploration.