1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
//! Order maintenance problems

pub mod linked_list;
pub mod ofm;

#[cfg(test)]
mod test {
    use test::Bencher;
    pub const N: usize = 64*1024;

    #[bench]
    fn bench_vec_push_back(b: &mut Bencher) {
        b.iter(|| {
            let mut v = Vec::new();
            for i in 0..N { v.push(i) }
        });
    }

    #[bench]
    fn bench_vec_push_front(b: &mut Bencher) {
        b.iter(|| {
            let mut v = Vec::new();
            for i in 0..N { v.insert(0, i) }
        });
    }

    #[bench]
    fn bench_vec_iter(b: &mut Bencher) {
        let mut v = Vec::new();
        for i in 0..N { v.push(i) }
        b.iter(|| v.iter().sum::<usize>());
    }
}