Understanding data structures is crucial to application design. This unit teaches students a range of common structures (array, linked list, stacks, queues, trees, binary trees, graphs and hash tables) including algorithms for common usage and implementation in an object oriented programming language.