Class AcyclicLongestPaths<TWeight>
- Namespace
- AlgorithmsSW.EdgeWeightedDigraph
- Assembly
- AlgorithmsSW.dll
[ExerciseReference(4, 4, 28)]
public class AcyclicLongestPaths<TWeight> : IShortestPath<TWeight> where TWeight : INumber<TWeight>, IMinMaxValue<TWeight>
Type Parameters
TWeight
- Inheritance
-
AcyclicLongestPaths<TWeight>
- Implements
-
IShortestPath<TWeight>
- Inherited Members
- Extension Methods
Constructors
AcyclicLongestPaths(IReadOnlyEdgeWeightedDigraph<TWeight>, int)
public AcyclicLongestPaths(IReadOnlyEdgeWeightedDigraph<TWeight> graph, int source)
Parameters
graph
IReadOnlyEdgeWeightedDigraph<TWeight>source
int
Methods
GetDistanceTo(int)
Gets the distance from the source vertex to the given vertex.
public TWeight GetDistanceTo(int vertex)
Parameters
vertex
intThe vertex to find the distance to.
Returns
- TWeight
The distance from the source vertex to the given vertex.
GetEdgesOfPathTo(int)
Gets the path from the source vertex to the given vertex.
public IEnumerable<DirectedEdge<TWeight>> GetEdgesOfPathTo(int target)
Parameters
target
intThe vertex to find the path to.
Returns
- IEnumerable<DirectedEdge<TWeight>>
An enumerable of edges representing the path from the source vertex to the given vertex.
Exceptions
- InvalidOperationException
+there is no path from the source vertex to the given vertex.
HasPathTo(int)
Whether there is a path from the source vertex to the given vertex.
public bool HasPathTo(int vertex)
Parameters
vertex
intThe vertex to check if there is a path to.