Greetings fellow monks,
I find myself in a situation where I have a data set that's well represented by a Graph. Knowing that CPAN has Graph, I use it. I now want to traverse the graph, but I'm finding the results are not what I expect. Here's a test script:
use strict;
use warnings;
use Graph;
use Graph::Traversal::DFS;
my $graph = Graph->new();
$graph->add_edges( ['A','B'], ['B','C'], ['C','D'], ['D','E'],
['A','b'], ['b','c'], ['c','d'], ['d','e']);
my $trav = Graph::Traversal::DFS->new($graph);
print join("\n", $trav->dfs());
__END__
E
D
e
d
c
b
C
B
A
I realize that the algorithm is non-deterministic, but it should at least return the correct result. I'd expect that it'd print 'A' and then all the capital letters followed by all the lower-case letters, or vice versa. The docs are unusually sparse. Am I missing something here?
thor
Feel the white light, the light within
Be your own disciple, fan the sparks of will
For all of us waiting, your kingdom will come