DSA Interview Patterns
Recognise the twenty or so patterns behind most coding interview questions and explain your solution clearly, with every solution written in Python and run against test cases.
What you'll learn
- Recognise which pattern a coding interview problem calls for from its constraints and wording.
- Apply hashing, prefix sums, two pointers and sliding windows to array and string problems in linear time.
- Use binary search, stacks, heaps and intervals techniques to cut brute-force solutions down.
- Traverse linked lists, trees and graphs with fast/slow pointers, DFS, BFS, topological sort, union-find and Dijkstra.
- Solve dynamic programming and backtracking problems by defining states, transitions and pruning.
- Explain your approach and complexity clearly while coding under interview conditions.