16个版本 (8个不兼容版本)
0.8.5 | 2021年7月12日 |
---|---|
0.8.2 | 2021年4月17日 |
0.1.0 | 2020年5月21日 |
0.0.4 | 2014年11月22日 |
#573 in 算法
每月下载量 119
用于 3 个crate
13KB
374 行
rust-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]);
}
快速排序
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]);
}
选择排序
选择排序
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]);
}
堆排序
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]);
}
插入排序
插入排序
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]);
}
归并排序
归并排序
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]);
}
混合排序
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]);
}