The main progress tracker for this project — a frequency-based list, not organized by pattern-teaching
order (see PATTERNS.md for that). Source: LeetCode Premium company tags, snapshot from 2026-07-12
(github.com/snehasishroy/leetcode-companywise-interview-questions),
window = last 6 months. Selection: a problem made the list if it appears for at least 3 of the 4
companies (Google/Amazon/Microsoft/Meta) and has a high frequency score; 94-97% of these companies'
most-frequent problems have a LeetCode number under 1000. A few classics (Alien Dictionary, Clone Graph,
LCS) were added by hand — they keep showing up in interview write-ups even without a high recent tag
count.
⭐ CORE (64 problems) — know these by heart: recognize the pattern in under a minute, code it without looking anything up. The rest close out variations of the same patterns.
Each line: difficulty, CORE flag, one-line key idea (try it yourself before reading it), and which companies tagged it in the last 6 months — bold company = tagged in the last 30 days.
Progress: 13/123 total, 13/64 core.
- Two Sum (1) — 🟢 Easy ⭐ CORE — hash map value→index, один проход — Google, Amazon, Microsoft, Meta, Apple, Bloomberg
- Best Time to Buy and Sell Stock (121) — 🟢 Easy ⭐ CORE — держи min цены слева, max(price−min) — Google, Amazon, Microsoft, Meta, Apple, Bloomberg, Uber
- Group Anagrams (49) — 🟡 Medium ⭐ CORE — ключ = отсортированное слово или счётчик 26 букв — Google, Amazon, Microsoft, Meta, Apple, Bloomberg
- Longest Consecutive Sequence (128) — 🟡 Medium ⭐ CORE — set; стартуй только с x, где нет x−1 — Google, Amazon, Microsoft, Meta, Apple, Bloomberg
- Valid Anagram (242) — 🟢 Easy — счётчик 26 букв — Google, Amazon, Microsoft, Meta, Bloomberg
- Contains Duplicate (217) — 🟢 Easy — set — Google, Amazon, Microsoft, Meta, Bloomberg
- Valid Sudoku (36) — 🟡 Medium — 3 набора set: строки, столбцы, боксы (r//3,c//3) — Google, Amazon, Microsoft, Meta, Apple, Bloomberg
- Set Matrix Zeroes (73) — 🟡 Medium — первая строка/столбец как маркеры, O(1) памяти — Google, Amazon, Microsoft, Meta, Bloomberg
- Longest Common Prefix (14) — 🟢 Easy — вертикальное сканирование или sort + сравнить первое/последнее — Google, Amazon, Microsoft, Meta, Apple, Bloomberg
- String to Integer (atoi) (8) — 🟡 Medium — пробелы → знак → цифры → clamp overflow — Google, Amazon, Microsoft, Meta, Bloomberg, Netflix
- First Missing Positive (41) — 🔴 Hard — cyclic sort: ставь x на индекс x−1 — Google, Amazon, Microsoft, Meta, Bloomberg
- 3Sum (15) — 🟡 Medium ⭐ CORE — sort + фикс i + two pointers, пропуск дублей — Google, Amazon, Microsoft, Meta, Apple, Bloomberg
- Container With Most Water (11) — 🟡 Medium ⭐ CORE — двигай меньшую стенку — Google, Amazon, Microsoft, Meta, Apple, Bloomberg
- Valid Palindrome (125) — 🟢 Easy ⭐ CORE — два указателя, пропуск не-alnum — Google, Amazon, Microsoft, Meta, Apple, Bloomberg
- Merge Sorted Array (88) — 🟢 Easy — заполняй с конца — Google, Amazon, Microsoft, Meta, Bloomberg
- Sort Colors (75) — 🟡 Medium — Dutch flag: low/mid/high — Google, Amazon, Microsoft, Meta, Apple, Bloomberg
- Next Permutation (31) — 🟡 Medium — найди первый спад справа, swap с ближайшим бо́льшим, reverse хвоста — Google, Amazon, Microsoft, Meta, Bloomberg
- Rotate Array (189) — 🟡 Medium — три reverse — Google, Amazon, Microsoft, Meta, Apple, Bloomberg
- Two Sum II - Input Array Is Sorted (167) — 🟡 Medium — l/r по сумме — Google, Amazon, Microsoft, Meta, Bloomberg
- Longest Substring Without Repeating Characters (3) — 🟡 Medium ⭐ CORE — окно + last seen index — Google, Amazon, Microsoft, Meta, Apple, Bloomberg, Netflix
- Longest Repeating Character Replacement (424) — 🟡 Medium ⭐ CORE — окно валидно пока len−maxFreq ≤ k — Google, Amazon, Microsoft, Meta, Bloomberg
- Minimum Window Substring (76) — 🔴 Hard ⭐ CORE — need-счётчик + formed, сжимай слева — Google, Amazon, Microsoft, Meta, Bloomberg
- Minimum Size Subarray Sum (209) — 🟡 Medium — расширяй, пока sum ≥ target — сжимай — Google, Amazon, Microsoft, Meta, Bloomberg
- Max Consecutive Ones III (1004) — 🟡 Medium — окно с ≤ k нулями — Google, Amazon, Microsoft, Meta, Bloomberg
- Fruit Into Baskets (904) — 🟡 Medium — окно с ≤ 2 типами — Google, Amazon, Microsoft, Meta, Bloomberg
- Permutation in String (567) — 🟡 Medium — фиксированное окно + сравнение счётчиков — Google, Amazon, Microsoft, Meta, Apple, Bloomberg
- Valid Parentheses (20) — 🟢 Easy ⭐ CORE — стек открывающих скобок — Google, Amazon, Microsoft, Meta, Bloomberg
- Daily Temperatures (739) — 🟡 Medium ⭐ CORE — монотонный убывающий стек индексов — Google, Amazon, Microsoft, Meta, Bloomberg
- Min Stack (155) — 🟡 Medium ⭐ CORE — второй стек минимумов — Google, Amazon, Microsoft, Meta, Bloomberg
- Decode String (394) — 🟡 Medium — стек (строка, множитель) — Google, Amazon, Microsoft, Meta, Bloomberg
- Basic Calculator II (227) — 🟡 Medium — стек чисел, * и / применяй сразу — Google, Amazon, Meta, Apple, Bloomberg
- Asteroid Collision (735) — 🟡 Medium — стек, столкновения только → vs ← — Google, Amazon, Meta, Bloomberg
- Largest Rectangle in Histogram (84) — 🔴 Hard — монотонный стек, ширина по границам — Google, Amazon, Microsoft, Meta, Bloomberg
- Basic Calculator (224) — 🔴 Hard — стек знака при скобках — Google, Amazon, Microsoft, Meta, Bloomberg
- Binary Search (704) — 🟢 Easy ⭐ CORE — классика lo ≤ hi — Google, Amazon, Microsoft, Meta, Bloomberg
- Search in Rotated Sorted Array (33) — 🟡 Medium ⭐ CORE — одна половина всегда отсортирована — Google, Amazon, Microsoft, Meta, Bloomberg, Uber
- Koko Eating Bananas (875) — 🟡 Medium ⭐ CORE — бинпоиск по ответу: скорость k — Google, Amazon, Microsoft, Meta, Apple, Bloomberg
- Find First and Last Position of Element in Sorted Array (34) — 🟡 Medium ⭐ CORE — два поиска: lower bound и upper bound — Google, Amazon, Microsoft, Meta, Apple, Bloomberg
- Find Peak Element (162) — 🟡 Medium — иди в сторону роста — Google, Amazon, Microsoft, Meta, Bloomberg, Uber
- Search a 2D Matrix (74) — 🟡 Medium — матрица как плоский массив — Google, Amazon, Microsoft, Meta, Bloomberg
- Median of Two Sorted Arrays (4) — 🔴 Hard ⭐ CORE — бинпоиск разреза по меньшему массиву — Google, Amazon, Microsoft, Meta, Apple, Bloomberg
- Split Array Largest Sum (410) — 🔴 Hard — бинпоиск по ответу + жадная проверка — Google, Amazon, Microsoft, Bloomberg, Uber
- Reverse Linked List (206) — 🟢 Easy ⭐ CORE — prev/cur/next итеративно — Google, Amazon, Microsoft, Meta, Apple, Bloomberg
- Merge Two Sorted Lists (21) — 🟢 Easy ⭐ CORE — dummy head — Google, Amazon, Microsoft, Meta, Bloomberg
- Add Two Numbers (2) — 🟡 Medium ⭐ CORE — сложение с carry — Google, Amazon, Microsoft, Meta, Bloomberg
- Remove Nth Node From End of List (19) — 🟡 Medium ⭐ CORE — два указателя с отрывом n — Google, Amazon, Microsoft, Meta, Bloomberg
- Palindrome Linked List (234) — 🟢 Easy — середина → reverse второй половины → сравнить — Google, Amazon, Microsoft, Meta, Bloomberg
- Copy List with Random Pointer (138) — 🟡 Medium — hash map old→new или interleaving — Google, Amazon, Microsoft, Meta, Bloomberg
- Reorder List (143) — 🟡 Medium — середина + reverse + merge — Google, Amazon, Microsoft, Meta, Bloomberg
- Merge k Sorted Lists (23) — 🔴 Hard ⭐ CORE — min-heap из голов, O(N log k) — Google, Amazon, Microsoft, Meta, Apple, Bloomberg
- Reverse Nodes in k-Group (25) — 🔴 Hard — reverse группами по k, склейка — Google, Amazon, Microsoft, Bloomberg
- Maximum Depth of Binary Tree (104) — 🟢 Easy ⭐ CORE — DFS 1+max(l,r) — Google, Amazon, Microsoft, Meta, Bloomberg
- Binary Tree Level Order Traversal (102) — 🟡 Medium ⭐ CORE — BFS по уровням — Google, Amazon, Microsoft, Bloomberg
- Diameter of Binary Tree (543) — 🟢 Easy ⭐ CORE — DFS высоты, обновляй ответ l+r — Google, Amazon, Microsoft, Meta, Bloomberg
- Lowest Common Ancestor of a Binary Tree (236) — 🟡 Medium ⭐ CORE — если найден в обеих ветках — это LCA — Google, Amazon, Meta, Bloomberg
- Validate Binary Search Tree (98) — 🟡 Medium ⭐ CORE — DFS с границами (lo, hi) — Google, Amazon, Microsoft, Meta, Bloomberg
- Binary Tree Right Side View (199) — 🟡 Medium — BFS, последний на уровне — Google, Amazon, Microsoft, Meta
- Kth Smallest Element in a BST (230) — 🟡 Medium — inorder, k-й элемент — Google, Amazon, Microsoft, Meta, Uber
- Symmetric Tree (101) — 🟢 Easy — зеркальное сравнение двух узлов — Google, Amazon, Microsoft, Meta, Bloomberg
- All Nodes Distance K in Binary Tree (863) — 🟡 Medium — parent-указатели + BFS от target — Google, Amazon, Microsoft, Meta, Apple
- Binary Tree Maximum Path Sum (124) — 🔴 Hard ⭐ CORE — DFS возвращает лучшую ветку, ответ = node+l+r — Google, Amazon, Microsoft, Meta, Bloomberg
- Serialize and Deserialize Binary Tree (297) — 🔴 Hard — preorder с null-маркерами — Google, Amazon, Microsoft, Uber
- Vertical Order Traversal of a Binary Tree (987) — 🔴 Hard — BFS/DFS с (col,row), сортировка — Amazon, Microsoft, Meta, Bloomberg, Uber
- Top K Frequent Elements (347) — 🟡 Medium ⭐ CORE — счётчик + heap размера k или bucket sort — Google, Amazon, Microsoft, Meta, Apple, Bloomberg
- Kth Largest Element in an Array (215) — 🟡 Medium ⭐ CORE — min-heap размера k или quickselect — Google, Amazon, Microsoft, Meta, Apple, Bloomberg
- Meeting Rooms II (253) — 🟡 Medium ⭐ CORE — сортировка по start + min-heap по end — Google, Amazon, Microsoft, Meta, Apple, Bloomberg, Uber
- Task Scheduler (621) — 🟡 Medium — формула (maxFreq−1)*(n+1)+countMax — Google, Amazon, Microsoft, Apple, Bloomberg
- Sort Characters By Frequency (451) — 🟡 Medium — счётчик + сортировка/bucket — Google, Amazon, Microsoft, Meta, Bloomberg
- Find Median from Data Stream (295) — 🔴 Hard ⭐ CORE — две кучи: max-heap слева, min-heap справа — Google, Amazon, Microsoft, Apple, Bloomberg, Uber
- Sliding Window Maximum (239) — 🔴 Hard ⭐ CORE — монотонная deque индексов — Google, Amazon, Microsoft, Meta, Bloomberg
- Number of Islands (200) — 🟡 Medium ⭐ CORE — DFS/BFS заливка — Google, Amazon, Microsoft, Meta, Apple, Bloomberg, Uber
- Rotting Oranges (994) — 🟡 Medium ⭐ CORE — multi-source BFS — Google, Amazon, Microsoft, Meta, Bloomberg, Uber
- Course Schedule (207) — 🟡 Medium ⭐ CORE — топосорт Кана / детект цикла — Google, Amazon, Microsoft, Meta, Apple, Uber
- Course Schedule II (210) — 🟡 Medium ⭐ CORE — топосорт Кана, выдать порядок — Google, Amazon, Microsoft, Meta, Apple, Bloomberg, Uber, Netflix
- Clone Graph (133) — 🟡 Medium — DFS + map old→clone — Google, Amazon, Meta
- Evaluate Division (399) — 🟡 Medium — взвешенный граф + DFS/BFS — Google, Amazon, Microsoft, Bloomberg, Uber
- Number of Provinces (547) — 🟡 Medium — DFS или Union-Find — Google, Amazon, Microsoft, Meta, Bloomberg
- Accounts Merge (721) — 🟡 Medium — Union-Find по email — Google, Amazon, Microsoft, Meta, Bloomberg
- Surrounded Regions (130) — 🟡 Medium — заливка от границы — Google, Amazon, Microsoft, Meta, Bloomberg
- Word Ladder (127) — 🔴 Hard ⭐ CORE — BFS по словам, паттерны h*t — Google, Amazon, Microsoft, Meta, Apple, Bloomberg
- Making A Large Island (827) — 🔴 Hard — пометить острова id+размер, пробовать каждый 0 — Google, Amazon, Microsoft, Meta, Uber
- Alien Dictionary (269) — 🔴 Hard — граф из соседних слов + топосорт — Google, Amazon, Bloomberg, Uber
- Letter Combinations of a Phone Number (17) — 🟡 Medium ⭐ CORE — DFS по цифрам — Google, Amazon, Microsoft, Meta, Apple, Bloomberg
- Generate Parentheses (22) — 🟡 Medium ⭐ CORE — open < n, close < open — Google, Amazon, Microsoft, Meta, Bloomberg
- Subsets (78) — 🟡 Medium ⭐ CORE — взять/не взять — Google, Amazon, Microsoft, Meta, Bloomberg
- Permutations (46) — 🟡 Medium ⭐ CORE — used[] или swap — Google, Amazon, Microsoft, Meta, Bloomberg
- Combination Sum (39) — 🟡 Medium ⭐ CORE — DFS с повтором текущего индекса — Google, Amazon, Microsoft, Meta, Bloomberg
- Word Search (79) — 🟡 Medium ⭐ CORE — DFS по сетке, метка visited — Google, Amazon, Microsoft, Meta, Bloomberg, Uber
- Palindrome Partitioning (131) — 🟡 Medium — DFS + проверка палиндрома — Google, Amazon, Microsoft, Meta, Bloomberg
- N-Queens (51) — 🔴 Hard — sets: cols, diag r−c, anti r+c — Google, Amazon, Microsoft, Meta, Bloomberg
- Climbing Stairs (70) — 🟢 Easy ⭐ CORE — fib: dp[i]=dp[i−1]+dp[i−2] — Google, Amazon, Microsoft, Meta, Bloomberg
- House Robber (198) — 🟡 Medium ⭐ CORE — max(skip, take+dp[i−2]) — Google, Amazon, Microsoft, Meta, Bloomberg
- Maximum Subarray (53) — 🟡 Medium ⭐ CORE — Kadane — Google, Amazon, Microsoft, Meta, Apple, Bloomberg
- Longest Palindromic Substring (5) — 🟡 Medium ⭐ CORE — expand around center — Google, Amazon, Microsoft, Meta, Apple, Bloomberg, Uber
- Coin Change (322) — 🟡 Medium ⭐ CORE — unbounded knapsack, min монет — Google, Amazon, Microsoft, Meta, Bloomberg
- Longest Increasing Subsequence (300) — 🟡 Medium ⭐ CORE — O(n log n): tails + бинпоиск — Google, Amazon, Microsoft, Meta, Bloomberg
- Jump Game (55) — 🟡 Medium ⭐ CORE — жадно: самая дальняя достижимая — Google, Amazon, Microsoft, Meta, Bloomberg
- Unique Paths (62) — 🟡 Medium — dp по сетке / комбинаторика — Google, Amazon, Microsoft, Meta, Bloomberg
- Maximum Product Subarray (152) — 🟡 Medium — держи и max, и min — Google, Amazon, Microsoft, Meta, Bloomberg
- Word Break (139) — 🟡 Medium ⭐ CORE — dp[i] = есть j: dp[j] и s[j:i] в словаре — Google, Amazon, Microsoft, Bloomberg
- Edit Distance (72) — 🟡 Medium ⭐ CORE — 2D dp: insert/delete/replace — Google, Amazon, Microsoft, Meta, Apple, Bloomberg
- Longest Common Subsequence (1143) — 🟡 Medium — 2D dp по двум строкам — Google, Amazon, Microsoft, Meta, Bloomberg
- Trapping Rain Water (42) — 🔴 Hard ⭐ CORE — two pointers с leftMax/rightMax — Google, Amazon, Microsoft, Meta, Bloomberg
- Longest Valid Parentheses (32) — 🔴 Hard — стек индексов или dp — Google, Amazon, Microsoft, Meta, Bloomberg
- Regular Expression Matching (10) — 🔴 Hard — 2D dp, особый случай * — Google, Amazon, Microsoft, Meta, Bloomberg
- LRU Cache (146) — 🟡 Medium ⭐ CORE — hash map + двусвязный список — Google, Amazon, Microsoft, Meta, Apple, Bloomberg, Uber, Netflix
- Time Based Key-Value Store (981) — 🟡 Medium ⭐ CORE — map key→[(t,v)] + бинпоиск по t — Google, Amazon, Meta, Apple, Bloomberg, Uber, Netflix
- Insert Delete GetRandom O(1) (380) — 🟡 Medium ⭐ CORE — массив + map value→index, swap с последним — Google, Amazon, Apple, Bloomberg, Uber
- Design Hit Counter (362) — 🟡 Medium — очередь таймстемпов / кольцевой буфер 300 — Google, Microsoft, Meta, Apple, Uber
- Implement Trie (Prefix Tree) (208) — 🟡 Medium ⭐ CORE — Trie: children + isEnd — Google, Microsoft, Apple, Bloomberg
- Word Search II (212) — 🔴 Hard — Trie из слов + DFS по доске — Google, Amazon, Microsoft, Meta, Uber
- Merge Intervals (56) — 🟡 Medium ⭐ CORE — sort по start, склеивай — Google, Amazon, Microsoft, Meta, Apple, Bloomberg, Uber
- Insert Interval (57) — 🟡 Medium — до / пересечение / после — Google, Amazon, Microsoft, Meta
- Non-overlapping Intervals (435) — 🟡 Medium — sort по end, жадно — Google, Amazon, Microsoft, Bloomberg
- Subarray Sum Equals K (560) — 🟡 Medium ⭐ CORE — prefix sum + map count[sum−k] — Google, Amazon, Microsoft, Meta, Apple, Bloomberg
- Product of Array Except Self (238) — 🟡 Medium ⭐ CORE — prefix × suffix, без деления — Google, Amazon, Microsoft, Meta, Apple, Bloomberg
- Contiguous Array (525) — 🟡 Medium — 0→−1, prefix sum + first index — Google, Amazon, Microsoft, Meta, Bloomberg
- Gas Station (134) — 🟡 Medium — если total ≥ 0 — старт после последнего провала — Google, Amazon, Microsoft, Meta, Bloomberg
- Rotate Image (48) — 🟡 Medium ⭐ CORE — транспонировать + reverse строк — Google, Amazon, Microsoft, Meta, Apple, Bloomberg
- Spiral Matrix (54) — 🟡 Medium ⭐ CORE — четыре границы, сужай — Google, Amazon, Microsoft, Meta, Apple, Bloomberg
- Pow(x, n) (50) — 🟡 Medium — быстрое возведение, n<0 — Google, Amazon, Microsoft, Meta, Bloomberg
- Majority Element (169) — 🟢 Easy — Boyer–Moore voting — Google, Amazon, Microsoft, Meta, Bloomberg
- Single Number (136) — 🟢 Easy — XOR всего — Google, Amazon, Microsoft, Meta, Bloomberg