- Describe the low-level structure of arrays and linked lists.
- Manipulate linked lists.
- Describe a stack by its methods and last in, first out (LIFO) behavior.
- Build stack methods using linked list methods.
- Describe a queue by its methods and first in, first out (FIFO) behavior.
- Build queue methods using linked list methods.
- Compare and contrast stacks and queues and appropriately choose which is better for a given situation.
- Describe and draw the structure of a hashmap.
- Explain properties of a good hash function.
- Perform runtime analysis on the hashmap data structure.
- Explain the relationship between graphs, trees, and binary search trees.
- Draw a balanced binary search tree from some given data.
- Use binary search trees in answering interview style challenge questions.