- 论坛徽章:
- 0
|
最近写了一个程序用到了Graph这个module, 调用SSSP_Dijkstra这个method的时候总是出问题,请大家帮忙看一下
- #!/usr/bin/perl -w
- use Graph::Directed;
- my $g = Graph::Directed->new();
- $g->add_path(qw(a b c d));
- $g->add_path(qw(a f e d));
- $g->add_edges(qw(a c a d b e f d));
- my $sssp = $g->SSSP_Dijkstra("a");
- foreach my $u ($sssp->vertices) {
- print "$u ", $sssp->get_attribute("weight", $u),
- " ", @{$sssp->get_attribute("path", $u)}, "\n"
- }
复制代码
运行结果错误提示:
- Not an ARRAY reference at C:/Perl/site/lib/Heap/Elem.pm line 31.
复制代码
然后我去找这个Elem.pm文件看了一下,第三十一行是:
- sub heap { #line 30th
- @_ > 1 ? ($_[0][1] = $_[1]) : $_[0][1]; #line 31st
- } #line 32nd
复制代码
请问可能会是哪里出问题呢?会不会是Graph这个模块的bug?谢谢大家!
[ 本帖最后由 ttyuren 于 2007-11-14 23:29 编辑 ] |
|