This repository is a collection of classic algorithms implemented in Python.
Includes a stack data structure. You may push(val) or pop() items into or off of the stack.
Includes a linked list data structure. LinkedList objects include the following methods: insert(val), pop(), size(), search(val), remove(node), and display().
Includes a doubly linked list data structure. DoubleLinkedList objects include the following methods: insert(val), append(val), pop(), shift(), remove(val). DoubleLinkedList objects can be instantiated with an optional iterable. Collaborated with Michael Sullivan regarding head and tail sentinals.
Includes a queue data structure, which is composed from the DoubleLinkedList object. Queue objects have these attributes: enqueue(val), dequeue(), peek(), and size(). The head node is not explicitly an attribute.
Hannah Krager and Michael Stokley