Function pdqsort::sort_by
[−]
[src]
pub fn sort_by<T, F>(v: &mut [T], compare: F) where F: FnMut(&T, &T) -> Ordering
Sorts a slice using compare
to compare elements.
This sort is in-place, unstable, and O(n log n)
worst-case.
The implementation is based on Orson Peters' pattern-defeating quicksort.
Examples
extern crate pdqsort; let mut v = [5, 4, 1, 3, 2]; pdqsort::sort_by(&mut v, |a, b| a.cmp(b)); assert!(v == [1, 2, 3, 4, 5]); // reverse sorting pdqsort::sort_by(&mut v, |a, b| b.cmp(a)); assert!(v == [5, 4, 3, 2, 1]);