distances
Shortest path distances of all node pairs
Description
returns a matrix, d
= distances(G
)d
, where d(i,j)
is the
length of the shortest path between node i
and node
j
. If the graph is weighted (that is,
G.Edges
contains a variable Weight
), then
those weights are used as the distances along the edges in the graph. Otherwise, all
edge distances are taken to be 1
.
optionally specifies the algorithm to use in computing the shortest path using any
of the input arguments in previous syntaxes. For example, if d
= distances(___,'Method',algorithm
)G
is
a weighted graph, then distances(G,'Method','unweighted')
ignores
the edge weights in G
and instead treats all edge weights as
1
.
Examples
Input Arguments
Output Arguments
Tips
The
shortestpath
,shortestpathtree
, anddistances
functions do not support undirected graphs with negative edge weights, or more generally any graph containing a negative cycle, for these reasons:A negative cycle is a path that leads from a node back to itself, with the sum of the edge weights on the path being negative. If a negative cycle is on a path between two nodes, then no shortest path exists between the nodes, since a shorter path can always be found by traversing the negative cycle.
A single negative edge weight in an undirected graph creates a negative cycle.
Extended Capabilities
Version History
Introduced in R2015b
See Also
shortestpathtree
| shortestpath
| nearest
| graph
| digraph