Module rs_graph::search::bfs

source ·
Expand description

Breadth-first-search.

Example

use rs_graph::LinkedListGraph;
use rs_graph::traits::*;
use rs_graph::classes;
use rs_graph::search::bfs;

let g: LinkedListGraph = classes::peterson();
let mut cnt = 0;
for (u, e) in bfs::start(g.neighbors(), g.id2node(0)) {
    assert_ne!(g.node_id(u), 0);
    cnt += 1;
}
assert_eq!(cnt, g.num_nodes() - 1);

Structs

  • The BFS iterator.

Functions

  • Start and return a BFS iterator using default data structures.
  • Start and return a BFS iterator with user defined data structures.

Type Aliases