[][src]Function out::max_from_iter_by

pub fn max_from_iter_by<T>(
    iter: impl IntoIterator<Item = T>,
    n: usize,
    cmp: impl FnMut(&T, &T) -> Ordering
) -> Vec<T>

Get the n largest items from an iterator with a comparator function.

This function is stable, i.e. it preserves the order of equal elements.

Panics

Panics if n > len.

Examples

let v = vec![-5_i32, 4, 1, -3, 2];
let min = out::max_from_iter_by(v, 3, |a, b| b.cmp(a));
assert_eq!(min, [1, -3, -5]);