dijkstra.sp {RBGL} | R Documentation |
dijkstra's shortest paths
dijkstra.sp(g,start=nodes(g)[1], eW=unlist(edgeWeights(g)))
g |
instance of class graph |
start |
character: node name for start of path |
eW |
numeric: edge weights. |
These functions are interfaces to the Boost graph library C++ routines for Dijkstra's shortest paths.
For some graph subclasses, computing the edge weights can be expensive.
If you are calling dijkstra.sp
in a loop, you can pass the edge
weights explicitly to avoid the edge weight creation cost.
A list with elements:
distance |
The vector of distances from start to each node
of g ; includes Inf when there is no path from start . |
penult |
A vector of indices
(in nodes(g) ) of predecessors corresponding to each node
on the path from that node back to start |
start |
The start node that was supplied in the call to
dijkstra.sp . |
VJ Carey <stvjc@channing.harvard.edu>
bellman.ford.sp
, dag.sp
, johnson.all.pairs.sp
, sp.between
dd <- fromGXL(file(system.file("XML/dijkex.gxl",package="RBGL"), open="r")) dijkstra.sp(dd) dijkstra.sp(dd,nodes(dd)[2]) ospf <- fromGXL(file(system.file("XML/ospf.gxl",package="RBGL"), open="r")) dijkstra.sp(ospf,nodes(ospf)[6])