LeetCode solutions in Python
Problem ID | Problem Name | Solution Source | Difficulty | Tag |
---|---|---|---|---|
1 | Two Sum | Solution | Easy | Array, Hashing |
2 | Add Two Numbers | Solution | Medium | Linked List |
3 | Longest Substring Without Repeating Characters | Solution | Medium | Sliding Window, String |
4 | Median Of Two Sorted Arrays | Solution | Hard | Binary Search |
5 | Longest Palindromic Substring | Solution | Medium | Dynamic Programming |
7 | Reverse Integer | Solution | Medium | Math |
10 | Regular Expression Matching | Solution | Hard | Dynamic Programming |
11 | Container With Most Water | Solution | Medium | Array, Two Pointers |
15 | 3 Sum | Solution | Medium | Array, Sorting, Two Pointers |
17 | Letter Combinations Of A Phone Number | Solution | Medium | Backtracking |
19 | Remove Nth Node From End Of List | Solution | Medium | Linked List, Two Pointers |
20 | Valid Parentheses | Solution | Easy | Stack |
21 | Merge Two Sorted Lists | Solution | Easy | Linked List |
22 | Generate Parentheses | Solution | Medium | Stack, Backtracking |
23 | Merge K Sorted Lists | Solution | Hard | Linked List |
25 | Reverse Nodes In K Group | Solution | Hard | Linked List |
33 | Search In Rotated Sorted Array | Solution | Medium | Binary Search |
36 | Valid Sudoku | Solution | Medium | Array, Hashing |
39 | Combination Sum | Solution | Medium | Backtracking |
40 | Combination Sum II | Solution | Medium | Backtracking |
42 | Trapping Rain Water | Solution | Hard | Array, Two Pointers |
43 | Multiply Strings | Solution | Math | Math, Strings |
45 | Jump Game II | Solution | Medium | Backtracking |
46 | Permutations | Solution | Medium | Backtracking |
48 | Rotate Image | Solution | Medium | Math, Matrix |
49 | Group Anagrams | Solution | Medium | String, Hashing |
50 | Pow (x, n) | Solution | Medium | Math |
51 | N Queens | Solution | Hard | Backtracking |
53 | Maximum Subarray | Solution | Medium | Dynamic Programming |
54 | Spiral Matrix | Solution | Medium | Matrix |
55 | Jump Game | Solution | Medium | Greedy |
56 | Merge Intervals | Solution | Medium | Intervals, Array |
57 | Insert Interval | Solution | Medium | Intervals, Array |
62 | Unique Paths | Solution | Medium | Dynamic Programming |
66 | Plus One | Solution | Easy | Math |
70 | Climbing Stairs | Solution | Easy | Dynamic Programming |
72 | Edit Distance | Solution | Medium | Dynamic Programming |
73 | Set Matrix Zeroes | Solution | Medium | Matrix |
74 | Search A 2D Matrix | Solution | Medium | Binary Search |
75 | Sort Colors | Solution | Medium | Array, Two Pointers |
76 | Minimum Window Substring | Solution | Hard | Sliding Window |
78 | Subsets | Solution | Medium | Backtracking |
79 | Word Search | Solution | Medium | Backtracking, DFS |
84 | Largest Rectangle In Histogram | Solution | Hard | Stack, Monotonic Stack |
88 | Merge Sorted Array | Solution | Easy | Array, Two Pointers |
90 | Subsets II | Solution | Medium | Backtracking |
91 | Decode Ways | Solution | Medium | Dynamic Programming |
97 | Interleaving String | Solution | Medium | Dynamic Programming |
98 | Validate Binary Search Tree | Solution | Medium | Binary Tree, BST, DFS |
100 | Same Tree | Solution | Easy | Binary Tree |
102 | Binary Tree Level Order Traversal | Solution | Medium | Binary Tree, BFS |
104 | Maximum Depth Of Binary Tree | Solution | Easy | Binary Tree, Recursion |
105 | Construct Binary Tree From Preorder And Inorder Traversal | Solution | Medium | Binary Tree, DFS |
110 | Balanced Binary Tree | Solution | Easy | Binary Tree, DFS |
115 | Distinct Subsequences | Solution | Hard | Dynamic Programming |
121 | Best Time To Buy And Sell Stocks | Solution | Easy | Sliding Window |
124 | Binary Tree Maximum Path Sum | Solution | Hard | Binary Tree, DFS |
125 | Valid Palindrome | Solution | Medium | String, Two Pointers |
127 | Word Ladder | Solution | Hard | BFS |
128 | Longest Consecutive Sequence | Solution | Medium | Array, Hashing |
130 | Surrounded Regions | Solution | Medium | DFS |
131 | Palindrome Partitioning | Solution | Medium | Backtracking |
133 | Clone Graph | Solution | Medium | Graph, DFS |
134 | Gas Station | Solution | Medium | Greedy |
136 | Single Number | Solution | Easy | Bit Manipulation |
138 | Copy List With Random Pointer | Solution | Medium | Linked List, Hashing |
139 | Word Break | Solution | Medium | Dynamic Programming |
141 | Linked List Cycle | Solution | Easy | Linked List, Two Pointers |
143 | Reorder List | Solution | Medium | Linked List |
146 | LRU Cache | Solution | Medium | Design, Linked List |
150 | Evaluate Reverse Polish Notation | Solution | Medium | Stack |
152 | Maximum Product Subarray | Solution | Medium | Dynamic Programming, Two Pointers |
153 | Find Minimum In Rotated Sorted Array | Solution | Medium | Binary Search |
155 | Min Stack | Solution | Medium | Stack, Design |
167 | Two Sum II - Input Array Is Sorted | Solution | Medium | Array, Two Pointers |
190 | Reverse Bits | Solution | Easy | Bit Manipulation |
191 | Number Of 1 Bits | Solution | Easy | Bit Manipulation |
198 | House Robber | Solution | Medium | Dynamic Programming |
199 | Binary Tree Right Side View | Solution | Medium | Binary Tree, BFS |
200 | Number Of Islands | Solution | Medium | DFS |
202 | Happy Number | Solution | Easy | Math |
206 | Reverse Linked List | Solution | Easy | Linked List |
207 | Course Schedule | Solution | Medium | Graph, Topological Sort |
208 | Implement Trie | Solution | Medium | Trie, Design |
209 | Minimum Size Subarray Sum | Solution | Medium | Sliding Window |
210 | Course Schedule II | Solution | Medium | Graph, Topological Sort |
211 | Design Add And Search Words Data Structure | Solution | Medium | Trie, Design |
212 | Word Search II | Solution | Hard | Trie, Backtracking |
213 | House Robber II | Solution | Medium | Dynamic Programming |
215 | Kth Largest Element In An Array | Solution | Medium | Quick Select |
217 | Contains Duplicate | Solution | Easy | Array, Hashing |
226 | Invert Binary Tree | Solution | Easy | Binary Tree, Recursion |
230 | Kth Smallest Element In A BST | Solution | Medium | Binary Tree, BST, DFS |
235 | Lowest Common Ancestor Of A Binary Search Tree | Solution | Medium | Binary Tree, BST |
238 | Product Of Array Except Self | Solution | Medium | Array |
239 | Sliding Window Maximum | Solution | Hard | Sliding Window, Deque |
242 | Valid Anagram | Solution | Easy | String |
252 | Meeting Rooms | Solution | Easy | Intervals, Sorting |
253 | Meeting Rooms II | Solution | Medium | Intervals, Sorting |
261 | Graph Valid Tree | Solution | Medium | Graph, BFS |
268 | Missing Number | Solution | Easy | Math |
269 | Alien Dictionary | Solution | Hard | Graph, Topological Sort |
271 | Encode And Decode Strings | Solution | Medium | String |
286 | Walls And Gates | Solution | Medium | BFS |
287 | Find The Duplicate Number | Solution | Medium | Two Pointers |
295 | Find Median From Data Stream | Solution | Hard | Heap |
297 | Serialize And Deserialize Binary Tree | Solution | Hard | Binary Tree, BFS |
300 | Longest Increasing Subsequence | Solution | Medium | Dynamic Programming |
309 | Best Time To Buy And Sell Stocks With Cooldown | Solution | Medium | Dynamic Programming |
312 | Burst Balloons | Solution | Hard | Dynamic Programming |
322 | Coin Change | Solution | Medium | Dynamic Programming |
323 | Number Of Connected Components In An Undirected Graph | Solution | Medium | Union Find, Graph |
329 | Longest Increasing Path In A Matrix | Solution | Hard | Dynamic Programming, DFS |
332 | Reconstruct Itinerary | Solution | Hard | Graph, Heap |
338 | Counting Bits | Solution | Medium | Bit Manipulation, Dynamic Programming |
347 | Top K Frequent Elements | Solution | Medium | Array, Bucket Sort |
355 | Design Twitter | Solution | Hard | Design, Heap |
371 | Sum Of Two Integers | Solution | Easy | Bit Manipulation |
416 | Partition Equal Subset Sum | Solution | Medium | Dynamic Programming |
417 | Pacific Atlantic Water Flow | Solution | Medium | BFS |
424 | Longest Repeating Character Replacement | Solution | Medium | Sliding Window |
435 | Non-overlapping Intervals | Solution | Medium | Intervals, Sorting |
494 | Target Sum | Solution | Medium | Dynamic Programming |
518 | Coin Change II | Solution | Medium | Dynamic Programming |
543 | Diameter Of Binary Tree | Solution | Easy | Binary Tree |
572 | Subtree Of Another Tree | Solution | Easy | Binary Tree |
567 | Permutation In String | Solution | Medium | Sliding Window |
621 | Task Scheduler | Solution | Medium | Heap, Queue |
647 | Palindromic Substrings | Solution | Medium | Dynamic Programming, Two Pointers |
678 | Valid Parenthesis String | Solution | Medium | Greedy |
684 | Redundant Connection | Solution | Medium | Union Find, Graph |
695 | Max Area Of Island | Solution | Medium | DFS |
703 | Kth Largest Element In A Stream | Solution | Easy | Heap |
704 | Binary Search | Solution | Easy | Binary Search |
739 | Daily Temperatures | Solution | Medium | Stack, Monotonic Stack |
743 | Network Delay Time | Solution | Medium | Graph, Dijkstra's |
746 | Min Cost Climbing Stairs | Solution | Easy | Dynamic Programming |
763 | Partition Labels | Solution | Medium | Greedy |
778 | Swim In Rising Water | Solution | Hard | Graph, Heap |
787 | Cheapest Flights Within K Stops | Solution | Medium | Graph |
846 | Hand Of Straights | Solution | Medium | Greedy, Heap |
853 | Car Fleet | Solution | Medium | Stack, Monotonic Stack |
875 | Koko Eating Bananas | Solution | Medium | Binary Search |
973 | K Closest Points To Origin | Solution | Medium | Heap |
981 | Time Based Key Value Store | Solution | Medium | Binary Search |
994 | Rotting Oranges | Solution | Medium | BFS |
1046 | Last Stone Weight | Solution | Easy | Heap |
1143 | Longest Common Subsequence | Solution | Medium | Dynamic Programming |
1448 | Count Good Nodes In Binary Tree | Solution | Medium | Binary Tree, DFS |
1584 | Min Cost To Connect All Points | Solution | Medium | Graph, Prim's |
1851 | Minimum Interval To Include Each Query | Solution | Hard | Intervals, Heap |
1899 | Merge Triplets To Form Target Triplet | Solution | Medium | Greedy |
2013 | Detect Squares | Solution | Medium | Math, Geometry |