Description Usage Arguments Details Value Author(s) References See Also Examples
Algorithm for the single-source shortest paths problem for a graph with both positive and negative edge weights.
1 | bellman.ford.sp(g,start=nodes(g)[1])
|
g |
instance of class graph |
start |
character: node name for start of path |
This function interfaces to the Boost graph library C++ routines for Bellman-Ford shortest paths. Choose the appropriate algorithm to calculate the shortest path carefully based on the properties of the given graph. See documentation on Bellman-Ford algorithm in Boost Graph Library for more details.
A list with elements:
all edges minimized |
true if all edges are minimized, false otherwise. |
distance |
The vector of distances from |
penult |
A vector of indices
(in |
. For example, if the
element one of this vector has value 10
, that means that the
predecessor of node 1
is node 10
. The next predecessor is
found by examining penult[10]
.
start |
The start node that was supplied in the call to
|
Li Long <li.long@isb-sib.ch>
Boost Graph Library ( www.boost.org/libs/graph/doc/index.html )
The Boost Graph Library: User Guide and Reference Manual; by Jeremy G. Siek, Lie-Quan Lee, and Andrew Lumsdaine; (Addison-Wesley, Pearson Education Inc., 2002), xxiv+321pp. ISBN 0-201-72914-8
dag.sp
, dijkstra.sp
, johnson.all.pairs.sp
, sp.between
1 2 3 4 5 | con <- file(system.file("XML/conn2.gxl",package="RBGL"), open="r")
dd <- fromGXL(con)
close(con)
bellman.ford.sp(dd)
bellman.ford.sp(dd,nodes(dd)[2])
|
Loading required package: graph
Loading required package: BiocGenerics
Loading required package: parallel
Attaching package: 'BiocGenerics'
The following objects are masked from 'package:parallel':
clusterApply, clusterApplyLB, clusterCall, clusterEvalQ,
clusterExport, clusterMap, parApply, parCapply, parLapply,
parLapplyLB, parRapply, parSapply, parSapplyLB
The following objects are masked from 'package:stats':
IQR, mad, sd, var, xtabs
The following objects are masked from 'package:base':
Filter, Find, Map, Position, Reduce, anyDuplicated, append,
as.data.frame, basename, cbind, colMeans, colSums, colnames,
dirname, do.call, duplicated, eval, evalq, get, grep, grepl,
intersect, is.unsorted, lapply, lengths, mapply, match, mget,
order, paste, pmax, pmax.int, pmin, pmin.int, rank, rbind,
rowMeans, rowSums, rownames, sapply, setdiff, sort, table, tapply,
union, unique, unsplit, which, which.max, which.min
$`all edges minimized`
[1] TRUE
$distance
A B C D E G H F
0 1 1 1 2 2 2 3
$penult
A B C D E G H F
1 1 1 1 3 3 4 5
$start
[1] "A"
$`all edges minimized`
[1] TRUE
$distance
A B C D E G H F
Inf 0 1 1 2 2 2 3
$penult
A B C D E G H F
1 2 2 2 3 3 4 5
$start
[1] "B"
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.