Package com.jgalgo.alg.shortestpath
Interface ShortestPathAllPairs.Result<V,E>
- Type Parameters:
V- the vertices typeE- the edges type
- All Known Subinterfaces:
ShortestPathAllPairs.IResult
- Enclosing interface:
- ShortestPathAllPairs
public static interface ShortestPathAllPairs.Result<V,E>
A result object for an
ShortestPathAllPairs algorithm.- Author:
- Barak Ugav
-
Method Summary
Modifier and TypeMethodDescriptiondoubleGet the distance of the shortest path between two vertices.Get the shortest path between vertices.booleanisReachable(V source, V target) Check if a target vertex is reachable from a source vertex.reachableVerticesFrom(V source) Get the set of vertices that are reachable from a source vertex.reachableVerticesTo(V target) Get the set of vertices that can reach a target vertex.
-
Method Details
-
distance
Get the distance of the shortest path between two vertices.- Parameters:
source- the source vertextarget- the target vertex- Returns:
- the sum of weights of edges in the shortest path from the source to target,
or
Double.POSITIVE_INFINITYif no such path exists - Throws:
NoSuchVertexException- ifsourceortargetare not vertices in the graphIllegalArgumentException- if the shortest paths were computed on pairs of vertices from a subset of the vertices of the graph (rather than all pairs), andsourceortargetare not in the subset
-
getPath
Get the shortest path between vertices.- Parameters:
source- the source vertextarget- the target vertex- Returns:
- the shortest path from the source to target, or
nullif no such path exists - Throws:
NoSuchVertexException- ifsourceortargetare not vertices in the graphIllegalArgumentException- if the shortest paths were computed on pairs of vertices from a subset of the vertices of the graph (rather than all pairs), andsourceortargetare not in the subset
-
isReachable
Check if a target vertex is reachable from a source vertex.A vertex is reachable from itself.
- Parameters:
source- the source vertextarget- the target vertex- Returns:
trueif there is a path from the source to the target,falseotherwise- Throws:
NoSuchVertexException- ifsourceortargetare not vertices in the graph
-
reachableVerticesFrom
Get the set of vertices that are reachable from a source vertex.A vertex is reachable from itself.
If the result was obtained from a calculation on a subset of the vertices of the graph, this method may throw an exception, return only the vertices in the subset, or return all vertices reachable.
- Parameters:
source- the source vertex- Returns:
- the set of vertices that are reachable from the source vertex
- Throws:
NoSuchVertexException- ifsourceis not a vertex in the graph
-
reachableVerticesTo
Get the set of vertices that can reach a target vertex.A vertex can reach itself.
If the result was obtained from a calculation on a subset of the vertices of the graph, this method may throw an exception, return only the vertices in the subset, or return all vertices reachable.
- Parameters:
target- the target vertex- Returns:
- the set of vertices that can reach the target vertex
- Throws:
NoSuchVertexException- iftargetis not a vertex in the graph
-