pub fn min_by_key<T, F: FnMut(&T) -> K, K: Ord>(v1: T, v2: T, f: F) -> T
Returns the element that gives the minimum value from the specified function.
Returns the first argument if the comparison determines them to be equal.
use std::cmp; assert_eq!(cmp::min_by_key(-2, 1, |x: &i32| x.abs()), 1); assert_eq!(cmp::min_by_key(-2, 2, |x: &i32| x.abs()), -2);