Function order_stat::median_of_medians
[−]
[src]
pub fn median_of_medians<T: Ord>(array: &mut [T]) -> (usize, &mut T)
Calculate an approximate median of array.
The return value is the index/reference to some value of array
that is guaranteed to lie between the 30th and 70th percentiles of
the values in array. That is, it both is not smaller and not
larger than than at least 30% of the elements of array.
This is equivalent to median_of_medians_by(array, Ord::cmp).
Panics
This panics if array is empty.
Examples
// the numbers 0, 1, ..., 100. let mut v = (0..101).rev().collect::<Vec<_>>(); let (_, &mut median) = order_stat::median_of_medians(&mut v); assert!(30 <= median); assert!(median <= 70);