- Trees (especially Binary Search Trees) (VERY IMPORTANT)
- Big O Notation
- Hash Tables
- Object Oriented Design/Systems Design
- Algorithms:
- Breadth First Search
- Depth First Search
- Binary Search
- Merge Sort
- Quick Sort
- Arrays
- Recursion
- Linked Lists
- Stacks/Queues
- Bit Manipulation