algods 0.1.0

A collection of data structures and algorithms
Documentation
#[cfg(test)]
mod tests {
    use super::super::*;

    #[test]
    fn test_linked_list_deque_new() {
        let deque = Deque::<usize>::new();
        assert!(deque.is_empty());
        assert_eq!(deque.len(), 0);
    }

    #[test]
    fn test_linked_list_deque_init() {
        let string = "test".to_string();
        let mut deque = Deque::init(string.clone());
        assert_eq!(1, deque.len());
        assert_eq!(Some(string), deque.remove_first());
        assert_eq!(0, deque.len());
    }

    #[test]
    fn test_linked_list_deque_mutations() {
        let num1 = -1isize;
        let num2 = -2isize;
        let num3 = -3isize;
        let num4 = -4isize;
        let mut deque = Deque::new();
        deque.add_first(num1);
        deque.add_last(num2);
        deque.add_first(num3);
        deque.add_last(num4);
        assert_eq!(Some(num3), deque.remove_first());
        assert_eq!(Some(num4), deque.remove_last());
        assert_eq!(Some(num2), deque.remove_last());
        assert_eq!(Some(num1), deque.remove_first());
    }
}