- Analyzing the speed of an algorithm using Big O Notation
- Data structures
- Recursion
- Binary search
- Problem-solving techniques
- Divide and Conquer
- Dynamic programming
- Using greedy algorithm
- Hash Tables
- Graph algorithms
- K-nearest neighbors(KNN)
- Grokking Algorithms