Math
Permutations
Combinations
Medians
Logarithms
Geometric progression
Arithmetic progression
Data structures
Array
Linked List
Stack
Queue
Priority Queue/MinHeap/MaxHeap
Hash Table
BST
Trie
Map (Hash Table or BST)
Set (Hash Table or BST)
Algorithms
Big O notation
Recursion
Sorting
Searching
Traversals BF & DF
Dynamic programming
Divide & Conquer
Greedy approach
Bit manipulations