[][src]Function out::slice::max_unstable_by

pub fn max_unstable_by<T>(
    v: &mut [T],
    n: usize,
    cmp: impl FnMut(&T, &T) -> Ordering
) -> &mut [T]

Returns the n largest items with a comparator function.

This sort is unstable (i.e. may reorder equal elements), in-place (i.e. does not allocate), and typically faster than max_by.

Panics

Panics if n > len.

Examples

let mut v = [-5, 4, 1, -3, 2];
let min = out::slice::max_unstable_by(&mut v, 3, |a, b| b.cmp(a));
assert_eq!(min, [1, -3, -5]);