1 个不稳定版本
0.1.0 | 2024 年 5 月 15 日 |
---|
855 在 算法 中
6KB
60 行
Rust 中的归并排序
这是 Rust 中归并排序算法的实现。归并排序是一种高效、稳定且基于比较的排序算法,以其性能而闻名。
用法
要使用此模块提供的 sort
函数,只需使用可变引用调用它,传入一个可比较元素组成的向量的引用。
use prksort::*;
let mut arr = vec![5, 2, 3, 1, 4];
mergesort::sort(&mut arr);
println!("Sorted array: {:?}", arr); // Output: Sorted array: [1, 2, 3, 4, 5]
这将按升序对向量的元素进行排序。
sort
函数与任何实现了 PartialEq
、PartialOrd
和 Copy
特性的类型 T
一起工作。这意味着向量中的元素必须支持比较并且是可复制的。
use prksort::*;
let mut arr = vec!['e', 'b', 'c', 'a', 'd'];
mergesort::sort(&mut arr);
println!("Sorted array: {:?}", arr); // Output: Sorted array: ['a', 'b', 'c', 'd', 'e']
功能
sort
函数使用归并排序算法就地对输入向量进行排序。
merge
函数是 sort
函数使用的辅助函数,用于将两个已排序的切片合并为一个已排序的切片。
## License
This code is provided under the MIT License. You can find the full license text in the LICENSE file.
## Contribution
Contributions are welcome! If you find any issues or have suggestions for improvements, feel free to open an issue or create a pull request on GitHub.
Rust 中的快速排序
这是 Rust 中快速排序算法的实现。快速排序是一种广泛使用的排序算法,以其效率和简单性而闻名。
用法
要使用此模块提供的 sort
函数,只需使用可变引用调用它,传入一个可比较元素组成的数组或切片的引用。
use prksort::*;
let mut arr = vec![5, 2, 3, 1, 4];
quicksort::sort(&mut arr);
println!("Sorted array: {:?}", arr); // Output: Sorted array: [1, 2, 3, 4, 5]