min_by_key in std::cmp - Rust
Description: Returns the element that gives the minimum value from the specified function.

## min_by_key

# Function min_by_key

1.53.0 (const: unstable) · Source

    pub fn min_by_key<T, F, K>(v1: T, v2: T, f: F) -> Twhere
        F: FnMut(&T) -> K,
        K: Ord,

Expand description

Returns the element that gives the minimum value from the specified function.

Returns the first argument if the comparison determines them to be equal.

## §Examples

    use std::cmp;

    let result = cmp::min_by_key(2, -1, |x: &i32| x.abs());
    assert_eq!(result, -1);

    let result = cmp::min_by_key(2, -3, |x: &i32| x.abs());
    assert_eq!(result, 2);

    let result = cmp::min_by_key(1, -1, |x: &i32| x.abs());
    assert_eq!(result, 1);