#![feature(random)]
use rbt_rs::RedBlackTree;
use std::random::random;
fn treesort<T: Ord>(unsorted: impl IntoIterator<Item = T>) -> Vec<T> {
RedBlackTree::from_iter(unsorted).into_iter().collect()
}
fn main() {
let random: Vec<u8> = (0..1000).map(|_| random::<u8>(..)).collect();
println!("{:?}", &random[..16]);
let sorted = treesort(RedBlackTree::from_iter(random));
assert!(sorted.is_sorted());
println!("{:?}", &sorted[..16]);
}