An open API service indexing awesome lists of open source software.

https://github.com/watchdg/rust-sort

sort algorithms
https://github.com/watchdg/rust-sort

Last synced: 9 months ago
JSON representation

sort algorithms

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]);
}
```