Function permutation::permutation::sort_by
[−]
[src]
pub fn sort_by<T, D, F>(vec: D, compare: F) -> Permutation where
T: Ord,
D: Deref<Target = [T]>,
F: FnMut(&T, &T) -> Ordering,
Return the permutation that would sort a given slice by a comparator.
This is the same as permutation::sort()
except that it allows you to specify
the comparator to use when sorting similar to std::slice.sort_by()
Examples
let mut vec = vec!['z','w','h','a','s','j']; let permutation = permutation::sort_by(&vec[..], |a, b| b.cmp(a)); let permuted = permutation.apply_slice(&vec[..]); vec.sort_by(|a,b| b.cmp(a)); assert!(vec == permuted);