Breadth-First Search Algorithm
A Breadth-First Search Algorithm is an iterative Lattice Search Algorithm that beings its test at an Extremum, identifies all neighboring nodes tests all of these nodes and then repeats the process.
- AKA: BFS.
- …
- Counter-Example(s):
- See: FIFO Queue, Recursive Algorithm, Graph Traversal Algorithm.
References
2012
- (Merrill et al., 2012) ⇒ Duane Merrill, Michael Garland, and Andrew Grimshaw. (2012). “Scalable GPU Graph Traversal.” In: Proceedings of the 17th ACM SIGPLAN symposium on Principles and Practice of Parallel Programming. ISBN:978-1-4503-1160-1 doi:10.1145/2370036.2145832
- QUOTE: Breadth-first search (BFS) is a core primitive for graph traversal and a basis for many higher-level graph analysis algorithms. It is also representative of a class of parallel computations whose memory accesses and work distribution are both irregular and data-dependent. …
2010
- http://en.wikipedia.org/wiki/Breadth-first_search
- In graph theory, breadth-first search (BFS) is a graph search algorithm that begins at the root node and explores all the neighboring nodes. Then for each of those nearest nodes, it explores their unexplored neighbor nodes, and so on, until it finds the goal.
BFS is a uninformed search method that aims to expand and examine all nodes of a graph or combination of sequences by systematically searching through every solution. In other words, it exhaustively searches the entire graph or sequence without considering the goal until it finds it. It does not use a heuristic algorithm.
From the standpoint of the algorithm, all child nodes obtained by expanding a node are added to a FIFO queue. In typical implementations, nodes that have not yet been examined for their neighbors are placed in some container (such as a queue or linked list) called "open" and then once examined are placed in the container "closed".
- In graph theory, breadth-first search (BFS) is a graph search algorithm that begins at the root node and explores all the neighboring nodes. Then for each of those nearest nodes, it explores their unexplored neighbor nodes, and so on, until it finds the goal.