https://github.com/watchdg/rust-sort
sort algorithms
https://github.com/watchdg/rust-sort
Last synced: 9 months ago
JSON representation
sort algorithms
- Host: GitHub
- URL: https://github.com/watchdg/rust-sort
- Owner: WatchDG
- License: mit
- Created: 2021-04-14T14:43:23.000Z (about 5 years ago)
- Default Branch: main
- Last Pushed: 2025-08-10T19:43:22.000Z (10 months ago)
- Last Synced: 2025-08-10T21:19:32.829Z (10 months ago)
- Language: Rust
- Size: 25.4 KB
- Stars: 5
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# rust-sort
sort algorithms
## exchange sorts
### bubble sort
```rust
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
```rust
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
```rust
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
```rust
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
```rust
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
```rust
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
```rust
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]);
}
```