use rand::Rng; use std::time::Instant; #[derive(Debug)] struct GGT { data: i32, } fn main() { let mut rng = rand::thread_rng(); let siz=10000000; let now = Instant::now(); let mut vals: Vec = (0..siz).map(|_| GGT{data: rng.gen_range(0..=siz)}).collect(); //let mut vals: Vec = (0..siz).map(|_| rng.gen_range(0..=siz)).collect(); //println!("{:?}", vals); //vals.sort(); //vals.sort_by(|a,b| a.cmp(b)); vals.sort_by(|a, b| a.data.cmp(&b.data)); let elapsed = now.elapsed(); println!("Elapsed: {:.2?}", elapsed); println!("{:?} {}", vals[0], vals[101]); //println!("{:?}", vals); }