Graph::Traversal::DFS - depth-first traversal of graphs


Graph documentation Contained in the Graph distribution.

Index


Code Index:

NAME

Top

Graph::Traversal::DFS - depth-first traversal of graphs

SYNOPSIS

Top

    use Graph;
    my $g = Graph->new;
    $g->add_edge(...);
    use Graph::Traversal::DFS;
    my $d = Graph::Traversal::DFS->new(%opt);
    $d->dfs; # Do the traversal.

DESCRIPTION

Top

With this class one can traverse a Graph in depth-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::BFS, Graph.


Graph documentation Contained in the Graph distribution.

package Graph::Traversal::DFS;

use strict;

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

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

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

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

1;
__END__