This is the tracking page for personal Leetcode progress.
-
Stage 1 uses part I of problems from The 30-minute guide to rocking your next coding interview
-
Stage 2 uses part II of problems from the same guide
-
Stage 3 is a wrap-up which supplements stage 1&2
- Array 11 / 11 problems
- Dynamic Programming 12 / 12 problems
- String 13 / 13 problems
- Interval 3 / 3 problems
- Math 3 / 3 problems
- Linked list 6 / 6 problems
Total: 48 / 48 (Finished in Day 30)
- Tree 17 / 17 problems
- Heap 4 / 4 problems
- Geometry 8 / 8 problems
- Binary 6 / 6 problems
- Matrix 4 / 4 problems
- Recursion 2 / 2 problems
Total: 41 / 41 (Finished in Day 45)
(Leetcode# <= 200)
- Top 100 Liked Problems - LeetCode (Start: 43 / 100 Solved, Current: 100 / 100 Solved, Progress: 57 / 57)
- Backtracking - LeetCode (Start: 6 / 21 Solved, Current: 21 / 21 Solved, Progress: 15 / 15)
- Sliding Window - LeetCode (Start: 2 / 2 Solved, Current: 2 / 2 Solved)
- Dynamic Programming - LeetCode (Start: 11 / 27 Solved, Current: 27 / 27 Solved, Progress: 16 / 16)
- Divide and Conquer - LeetCode (Start: 4 / 4 Solved, Current: 4 / 4 Solved)
- Graph - LeetCode (Start: 1 / 1 Solved, Current: 1 / 1 Solved)
- Breadth-first Search - LeetCode (Start: 3 / 10 Solved, Current: 10 / 10 Solved, Progress: 7 / 7)
- Depth-first Search - LeetCode (Start: 8 / 21 Solved, Current: 21 / 21 Solved, Progress: 13 / 13)
Total: 111 / 111 (Finished in Day 99)
-
Tackle a topic at once and then go back and solve a bunch of related problems. Topics:
- Buy and Sell Stock (I - IV)
- Recursion
- 2D Array connectivities
- Graphs: Adjacency List and Adjacency Matrix
-
Made sure to do a lot of mock interviews. Almost 1 mock interview every other weekend or so.
(Top 90% Speed)
-
'Programming pearls: algorithm design techniques' by Jon Bentley (Sep. 1984 Vol. 27 No. 9 Communications of the ACM P885)
-
'A Note on the Standard Strategy for Developing Loop Invariants and Loops' by David Gries (1982) (ScienceofComputerProgramming2,pp. 207- 214)
-
E. W. Dijkstra, Some beautiful arguments using mathematical induction, Actu Informat. 13 (1980) 1-8.
- 'Programming Pearls' by Jon Bentley
- How to Solve Sliding Window Problems - Outco - Medium
- Master the sliding window technique that applies to many substring or subarray problems.
- Two Sum
- Best Time to Buy and Sell Stock
- Contains Duplicate
- Product of Array Except Self
- Maximum Subarray
- Maximum Product Subarray
- Find Minimum in Rotated Sorted Array
- Search in Rotated Sorted Array
- 3Sum
- Container With Most Water
- Maximum Average Subarray I - LeetCode
- Bits, Bytes, Building With Binary
- Sum of Two Integers
- Number of 1 Bits
- Counting Bits
- Missing Number
- Reverse Bits
- Demystifying Dynamic Programming
- 0/1 Knapsack
- Climbing Stairs
- Coin Change
- Longest Increasing Subsequence
- Longest Common Subsequence
- Word Break Problem
- Combination Sum
- House Robber
- House Robber II
- Decode Ways
- Unique Paths
- Jump Game
- From Theory To Practice: Representing Graphs
- Deep Dive Through A Graph: DFS Traversal
- Going Broad In A Graph: BFS Traversal
- Clone Graph
- Course Schedule
-
[Alien Dictionary](https://leetcode.com/problems/alien-dictionary/ - Pacific Atlantic Water Flow
- Number of Islands
-
[Graph Valid Tree](https://leetcode.com/problems/graph-valid-tree/ -
[Number of Connected Components in an Undirected Graph](https://leetcode.com/problems/number-of-connected-components-in-an-undirected-graph/ - Longest Consecutive Sequence
- Insert Interval
- Merge Intervals
-
[Meeting Rooms]and [Meeting Rooms II] - Non-overlapping Intervals
- Reverse a Linked List
- Detect Cycle in a Linked List
- Merge Two Sorted Lists
- Merge K Sorted Lists
- Remove Nth Node From End Of List
- Reorder List
- Subsets
- Subsets II
-
[Strobogrammatic Number II](https://leetcode.com/problems/strobogrammatic-number-ii/
- Trie/Prefix Tree
- Suffix Tree
- Rabin Karp , which conducts efficient searches of substrings, using a rolling hash
- KMP , which conducts efficient searches of substrings
- Longest Substring Without Repeating Characters
- Longest Repeating Character Replacement
- Minimum Window Substring
[Encode and Decode Strings]
- Valid Anagram
- Group Anagrams
- Valid Parentheses
- Valid Palindrome
- Longest Palindromic Substring
- Palindromic Substrings
Serialize and Deserialize Binary Tree
- Subtree of Another Tree
- Construct Binary Tree from Preorder and Inorder Traversal
- Validate Binary Search Tree
- Kth Smallest Element in a BST
- Lowest Common Ancestor of BST
- Implement Trie (Prefix Tree)
- Add and Search Word
- Word Search II
- Word Search