pub trait DijkstraHeap<WeightType, IndexType>: Default {
    // Required methods
    fn insert(&mut self, weight: WeightType, index: IndexType);
    fn remove_min(&mut self) -> Option<(WeightType, IndexType)>;
    fn clear(&mut self);
    fn size(&mut self) -> usize;
}
Expand description

A min-heap used in Dijkstra’s shortest path algorithm.

Required Methods§

source

fn insert(&mut self, weight: WeightType, index: IndexType)

Insert an index-weight pair into the heap.

source

fn remove_min(&mut self) -> Option<(WeightType, IndexType)>

Remove the weight and index with the smallest weight from the heap.

source

fn clear(&mut self)

Remove all entries from the heap.

source

fn size(&mut self) -> usize

Returns the number of nodes the heap currently has space for.

Implementations on Foreign Types§

source§

impl<WeightType: Ord, IndexType: Ord> DijkstraHeap<WeightType, IndexType> for BinaryHeap<Reverse<(WeightType, IndexType)>>

source§

fn insert(&mut self, weight: WeightType, index: IndexType)

source§

fn remove_min(&mut self) -> Option<(WeightType, IndexType)>

source§

fn clear(&mut self)

source§

fn size(&mut self) -> usize

Implementors§