pub type DefaultDijkstra<Graph, WeightType> = Dijkstra<Graph, WeightType, EpochNodeWeightArray<WeightType>, BinaryHeap<Reverse<(WeightType, <Graph as GraphBase>::NodeIndex)>>>;
Expand description
A Dijkstra implementation with a set of common optimisations.
Aliased Type§
struct DefaultDijkstra<Graph, WeightType> { /* private fields */ }
Implementations
Source§impl<WeightType: DijkstraWeight + Eq + Debug, EdgeData: DijkstraWeightedEdgeData<WeightType>, Graph: StaticGraph<EdgeData = EdgeData>, NodeWeights: NodeWeightArray<WeightType>, Heap: DijkstraHeap<WeightType, Graph::NodeIndex>> Dijkstra<Graph, WeightType, NodeWeights, Heap>
impl<WeightType: DijkstraWeight + Eq + Debug, EdgeData: DijkstraWeightedEdgeData<WeightType>, Graph: StaticGraph<EdgeData = EdgeData>, NodeWeights: NodeWeightArray<WeightType>, Heap: DijkstraHeap<WeightType, Graph::NodeIndex>> Dijkstra<Graph, WeightType, NodeWeights, Heap>
Sourcepub fn shortest_path_lens<TargetMap: DijkstraTargetMap<Graph>, DijkstraPerformance: DijkstraPerformanceData>(
&mut self,
graph: &Graph,
source: Graph::NodeIndex,
targets: &TargetMap,
target_amount: usize,
max_weight: WeightType,
forbid_source_target: bool,
distances: &mut Vec<(Graph::NodeIndex, WeightType)>,
max_node_weight_data_size: usize,
max_heap_data_size: usize,
performance_data: DijkstraPerformance,
) -> DijkstraStatus<DijkstraPerformance>
pub fn shortest_path_lens<TargetMap: DijkstraTargetMap<Graph>, DijkstraPerformance: DijkstraPerformanceData>( &mut self, graph: &Graph, source: Graph::NodeIndex, targets: &TargetMap, target_amount: usize, max_weight: WeightType, forbid_source_target: bool, distances: &mut Vec<(Graph::NodeIndex, WeightType)>, max_node_weight_data_size: usize, max_heap_data_size: usize, performance_data: DijkstraPerformance, ) -> DijkstraStatus<DijkstraPerformance>
Compute the shortest paths from source to all targets, with given maximum weight.
max_node_weight_data_size: the maximum number of nodes for which a weight can be stored before the search aborts.