This collection of problems is a good source of study material for coding interviews.
Some of the exercises for the course come from:
- Grokking the Coding Interview: Patterns for Coding Questions.
- Leetcode
- Neetcode 150
- Youtube
- Known "most asked questions" for Meta, Amazon and Microsoft
as well as some problems of my own creation.
I've included code for the proposed solutions, notes and references for the following topics:
- Pattern: Two Pointers
- Pattern: Fast & Slow Pointers
- Pattern: Islands (or Matrix Traversal)
- Pattern: Sliding Window
- Pattern: Merge Intervals
- Pattern: Cyclic Sort
- Pattern: In-place Reversal of a LinkedList
- Pattern: Tree Breadth First Search
- Pattern: Tree Depth First Search
- Pattern: Two Heaps
- Pattern: Subsets
- Pattern: Modified Binary Search
- Pattern: Bitwise XOR
- Pattern: Top 'K' Elements
- Pattern: K-way Merge
- Pattern: Topological Sort (Graph)
- Pattern: Multi-threaded
The included code is written in Python, although a C++ version of the solutions may come in the future.
- Classes: PascalCase
- Functions: PascalCase
- Variables: camelCase