[−][src]Function out::slice::max_unstable_by_key
pub fn max_unstable_by_key<T, K: Ord>(
v: &mut [T],
n: usize,
f: impl FnMut(&T) -> K
) -> &mut [T]
Returns the n
largest items with a key extraction function.
This sort is unstable (i.e. may reorder equal elements), in-place
(i.e. does not allocate), and typically faster than max_by_key
.
Panics
Panics if n > len
.
Examples
let mut v = [-5_i32, 4, 1, -3, 2]; let max = out::slice::max_unstable_by_key(&mut v, 3, |a| a.abs()); assert_eq!(max, [-3, 4, -5]);