16 releases (8 breaking)
0.8.5 | Jul 12, 2021 |
---|---|
0.8.2 | Apr 17, 2021 |
0.1.0 | May 21, 2020 |
0.0.4 | Nov 22, 2014 |
#718 in Algorithms
23 downloads per month
Used in 3 crates
13KB
374 lines
rust-sort
sort algorithms
exchange sorts
bubble sort
extern crate sort;
use sort::bubble_sort;
fn main() {
let mut data = vec![5, 4, 3, 2, 1];
bubble_sort(&mut data);
assert_eq!(data, [1, 2, 3, 4, 5]);
}
quicksort
extern crate sort;
use sort::quicksort;
fn main() {
let mut data = vec![5, 4, 3, 2, 1];
quicksort(&mut data);
assert_eq!(data, [1, 2, 3, 4, 5]);
}
selection sorts
selection sort
extern crate sort;
use sort::selection_sort;
fn main() {
let mut data = vec![5, 4, 3, 2, 1];
selection_sort(&mut data);
assert_eq!(data, [1, 2, 3, 4, 5]);
}
heapsort
extern crate sort;
use sort::heapsort;
fn main() {
let mut data = vec![5, 4, 3, 2, 1];
heapsort(&mut data);
assert_eq!(data, [1, 2, 3, 4, 5]);
}
insertion sorts
insertion sort
extern crate sort;
use sort::insertion_sort;
fn main() {
let mut data = vec![5, 4, 3, 2, 1];
insertion_sort(&mut data);
assert_eq!(data, [1, 2, 3, 4, 5]);
}
merge sorts
merge sort
extern crate sort;
use sort::merge_sort;
fn main() {
let mut data = vec![5, 4, 3, 2, 1];
let result = merge_sort(&mut data);
assert_eq!(result, [1, 2, 3, 4, 5]);
}
hybrid sorts
introsort
extern crate sort;
use sort::introsort;
fn main() {
let mut data = vec![5, 4, 3, 2, 1];
introsort(&mut data);
assert_eq!(data, [1, 2, 3, 4, 5]);
}