-
- Type Parameters:
V
- the graph vertex typeE
- the graph edge type
- All Known Subinterfaces:
ManyToManyShortestPathsAlgorithm<V,E>
- All Known Implementing Classes:
AStarShortestPath
,BaseBidirectionalShortestPathAlgorithm
,BellmanFordShortestPath
,BFSShortestPath
,BidirectionalAStarShortestPath
,BidirectionalDijkstraShortestPath
,CHManyToManyShortestPaths
,ContractionHierarchyBidirectionalDijkstra
,DefaultManyToManyShortestPaths
,DeltaSteppingShortestPath
,DijkstraManyToManyShortestPaths
,DijkstraShortestPath
,FloydWarshallShortestPaths
,IntVertexDijkstraShortestPath
,JohnsonShortestPaths
public interface ShortestPathAlgorithm<V,E>
An algorithm which computes shortest paths between vertices.- Author:
- Dimitrios Michail
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static interface
ShortestPathAlgorithm.SingleSourcePaths<V,E>
A set of paths starting from a single source vertex.
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description GraphPath<V,E>
getPath(V source, V sink)
Get a shortest path from a source vertex to a sink vertex.ShortestPathAlgorithm.SingleSourcePaths<V,E>
getPaths(V source)
Compute all shortest paths starting from a single source vertex.double
getPathWeight(V source, V sink)
Get the weight of the shortest path from a source vertex to a sink vertex.
-
-
-
Method Detail
-
getPath
GraphPath<V,E> getPath(V source, V sink)
Get a shortest path from a source vertex to a sink vertex.- Parameters:
source
- the source vertexsink
- the target vertex- Returns:
- a shortest path or null if no path exists
-
getPathWeight
double getPathWeight(V source, V sink)
Get the weight of the shortest path from a source vertex to a sink vertex. ReturnsDouble.POSITIVE_INFINITY
if no path exists.- Parameters:
source
- the source vertexsink
- the sink vertex- Returns:
- the weight of the shortest path from a source vertex to a sink vertex, or
Double.POSITIVE_INFINITY
if no path exists
-
getPaths
ShortestPathAlgorithm.SingleSourcePaths<V,E> getPaths(V source)
Compute all shortest paths starting from a single source vertex.- Parameters:
source
- the source vertex- Returns:
- the shortest paths
-
-