Graph::Traversal::BFS - breadth-first traversal of graphs


Graph documentation Contained in the Graph distribution.

Index


Code Index:

NAME

Top

Graph::Traversal::BFS - breadth-first traversal of graphs

SYNOPSIS

Top

    use Graph;
    my $g = Graph->new;
    $g->add_edge(...);
    use Graph::Traversal::BFS;
    my $b = Graph::Traversal::BFS->new(%opt);
    $b->bfs; # Do the traversal.

DESCRIPTION

Top

With this class one can traverse a Graph in breadth-first order.

The callback parameters %opt are explained in Graph::Traversal.

Methods

The following methods are available:

dfs

Traverse the graph in depth-first order.

SEE ALSO

Top

Graph::Traversal, Graph::Traversal::DFS, Graph.


Graph documentation Contained in the Graph distribution.

package Graph::Traversal::BFS;

use strict;

use Graph::Traversal;
use base 'Graph::Traversal';

sub current {
    my $self = shift;
    $self->{ order }->[ 0 ];
}

sub see {
    my $self = shift;
    shift @{ $self->{ order } };
}

*bfs = \&Graph::Traversal::postorder;

1;
__END__