max_by_key — 키를 기준으로 더 큰 값 반환하기
max_by_key — 키를 기준으로 더 큰 값 반환하기
max_by_key는 두 값에서 키(key)를 뽑아내는 함수를 받아, 그 키가 더 큰 쪽을 돌려주는 함수예요. 값을 직접 비교하는 대신 매핑된 키를 비교해요.
출처: Rust 공식 문서
본문
pub fn max_by_key<T, F, K>(v1: T, v2: T, f: F) -> T
where F: FnMut(&T) -> K,
K: Ord,
f는 각 값에서 키 K를 뽑아내고, K는 Ord여야 해요. 예를 들어 max_by_key(a, b, |x| x.len())처럼 문자열 길이 기준으로 큰 쪽을 고를 수 있어요.