medianheap 0.3.0

A median heap for keeping track of a running median.
Documentation

Median Heap

Crates.io Documentation

Usage

Add this to your Cargo.toml:

[dependencies]
medianheap = "0.3"

Example

Elements of a MedianHeap must be Ord + AverageWith + Clone.

The AverageWith trait is used to calculate the mean value for the two middlemost items if the number of items is even. This is implemented for all integer types and the NotNan type from the ordered-float crate.

let mut heap = MedianHeap::new();

heap.push(1);

assert_eq!(heap.median(), Some(1));

heap.push(3);

assert_eq!(heap.median(), Some(2));