Skip to content

codewithsathya/leetcode-solutions

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 

Repository files navigation


❤️ Last update time: 10/31/2022, 10:53:05 AM


ID Title Acceptance Difficulty Tags Answers
1 Two Sum 49.1% Array | Hash Table Java | JavaScript
2 Add Two Numbers 39.7% Linked List | Math | Recursion Java
3 Longest Substring Without Repeating Characters 33.8% Hash Table | String | Sliding Window Java
4 Median of Two Sorted Arrays 35.2% Array | Binary Search | Divide and Conquer Java
5 Longest Palindromic Substring 32.4% String | Dynamic Programming Java
6 Zigzag Conversion 43.1% String Java
7 Reverse Integer 27.2% Math Java
8 String to Integer (atoi) 16.6% String Java
9 Palindrome Number 52.9% Math Java | JavaScript
11 Container With Most Water 54.3% Array | Two Pointers | Greedy Java
13 Roman to Integer 58.2% Hash Table | Math | String Java
14 Longest Common Prefix 40.8% String Java
15 3Sum 32.3% Array | Two Pointers | Sorting Java
17 Letter Combinations of a Phone Number 55.6% Hash Table | String | Backtracking Java
18 4Sum 36.5% Array | Two Pointers | Sorting Java
19 Remove Nth Node From End of List 39.9% Linked List | Two Pointers Java
20 Valid Parentheses 40.7% String | Stack Java
21 Merge Two Sorted Lists 61.8% Linked List | Recursion Java
22 Generate Parentheses 71.8% String | Dynamic Programming | Backtracking Java
23 Merge k Sorted Lists 48.4% Linked List | Divide and Conquer | Heap (Priority Queue) | Merge Sort Java
24 Swap Nodes in Pairs 60.3% Linked List | Recursion Java
29 Divide Two Integers 17.3% Math | Bit Manipulation Java
31 Next Permutation 37.1% Array | Two Pointers Java
33 Search in Rotated Sorted Array 38.6% Array | Binary Search Java
34 Find First and Last Position of Element in Sorted Array 41.5% Array | Binary Search Java
35 Search Insert Position 42.0% Array | Binary Search Java
36 Valid Sudoku 56.8% Array | Hash Table | Matrix Java
39 Combination Sum 67.6% Array | Backtracking Java
40 Combination Sum II 53.3% Array | Backtracking Java
42 Trapping Rain Water 58.8% Array | Two Pointers | Dynamic Programming | Stack | Monotonic Stack Java
45 Jump Game II 38.6% Array | Dynamic Programming | Greedy Java
46 Permutations 74.7% Array | Backtracking Java
47 Permutations II 56.7% Array | Backtracking Java
48 Rotate Image 69.9% Array | Math | Matrix Java
49 Group Anagrams 66.4% Array | Hash Table | String | Sorting Java
50 Pow(x, n) 32.8% Math | Recursion Java
53 Maximum Subarray 50.0% Array | Divide and Conquer | Dynamic Programming Java
54 Spiral Matrix 43.7% Array | Matrix | Simulation Java
55 Jump Game 38.4% Array | Dynamic Programming | Greedy Java
56 Merge Intervals 45.9% Array | Sorting Java
62 Unique Paths 62.2% Math | Dynamic Programming | Combinatorics Java
63 Unique Paths II 39.1% Array | Dynamic Programming | Matrix Java
66 Plus One 43.3% Array | Math Java
69 Sqrt(x) 37.0% Math | Binary Search Java
70 Climbing Stairs 51.7% Math | Dynamic Programming | Memoization Java
72 Edit Distance 52.6% String | Dynamic Programming Java
73 Set Matrix Zeroes 50.0% Array | Hash Table | Matrix Java
74 Search a 2D Matrix 46.8% Array | Binary Search | Matrix Java
75 Sort Colors 57.2% Array | Two Pointers | Sorting Java
76 Minimum Window Substring 40.7% Hash Table | String | Sliding Window Java
77 Combinations 66.1% Backtracking Java
78 Subsets 73.8% Array | Backtracking | Bit Manipulation Java
79 Word Search 39.8% Array | Backtracking | Matrix Java
80 Remove Duplicates from Sorted Array II 51.5% Array | Two Pointers Java
81 Search in Rotated Sorted Array II 35.7% Array | Binary Search Java
82 Remove Duplicates from Sorted List II 45.4% Linked List | Two Pointers Java
83 Remove Duplicates from Sorted List 49.9% Linked List Java
84 Largest Rectangle in Histogram 42.1% Array | Stack | Monotonic Stack Java
85 Maximal Rectangle 44.1% Array | Dynamic Programming | Stack | Matrix | Monotonic Stack Java
88 Merge Sorted Array 45.7% Array | Two Pointers | Sorting Java
90 Subsets II 55.3% Array | Backtracking | Bit Manipulation Java
91 Decode Ways 32.2% String | Dynamic Programming Java
92 Reverse Linked List II 45.4% Linked List Java
94 Binary Tree Inorder Traversal 73.0% Stack | Tree | Depth-First Search | Binary Tree Java
97 Interleaving String 37.1% String | Dynamic Programming Java
98 Validate Binary Search Tree 31.7% Tree | Depth-First Search | Binary Search Tree | Binary Tree Java
99 Recover Binary Search Tree 50.3% Tree | Depth-First Search | Binary Search Tree | Binary Tree Java
100 Same Tree 56.3% Tree | Depth-First Search | Breadth-First Search | Binary Tree Java
101 Symmetric Tree 52.9% Tree | Depth-First Search | Breadth-First Search | Binary Tree Java
102 Binary Tree Level Order Traversal 63.2% Tree | Breadth-First Search | Binary Tree Java
103 Binary Tree Zigzag Level Order Traversal 55.1% Tree | Breadth-First Search | Binary Tree Java
104 Maximum Depth of Binary Tree 73.1% Tree | Depth-First Search | Breadth-First Search | Binary Tree Java
105 Construct Binary Tree from Preorder and Inorder Traversal 60.7% Array | Hash Table | Divide and Conquer | Tree | Binary Tree Java
108 Convert Sorted Array to Binary Search Tree 69.0% Array | Divide and Conquer | Tree | Binary Search Tree | Binary Tree Java
109 Convert Sorted List to Binary Search Tree 57.3% Linked List | Divide and Conquer | Tree | Binary Search Tree | Binary Tree Java
110 Balanced Binary Tree 48.2% Tree | Depth-First Search | Binary Tree Java
111 Minimum Depth of Binary Tree 43.5% Tree | Depth-First Search | Breadth-First Search | Binary Tree Java
112 Path Sum 47.6% Tree | Depth-First Search | Breadth-First Search | Binary Tree Java
113 Path Sum II 56.6% Backtracking | Tree | Depth-First Search | Binary Tree Java
115 Distinct Subsequences 43.7% String | Dynamic Programming Java
118 Pascal's Triangle 69.1% Array | Dynamic Programming Java
120 Triangle 53.9% Array | Dynamic Programming Java
121 Best Time to Buy and Sell Stock 54.5% Array | Dynamic Programming Java
122 Best Time to Buy and Sell Stock II 63.3% Array | Dynamic Programming | Greedy Java
123 Best Time to Buy and Sell Stock III 44.8% Array | Dynamic Programming Java
124 Binary Tree Maximum Path Sum 38.4% Dynamic Programming | Tree | Depth-First Search | Binary Tree Java
125 Valid Palindrome 43.5% Two Pointers | String Java
127 Word Ladder 36.6% Hash Table | String | Breadth-First Search Java
128 Longest Consecutive Sequence 48.9% Array | Hash Table | Union Find Java
130 Surrounded Regions 35.9% Array | Depth-First Search | Breadth-First Search | Union Find | Matrix Java
131 Palindrome Partitioning 62.4% String | Dynamic Programming | Backtracking Java
133 Clone Graph 50.6% Hash Table | Depth-First Search | Breadth-First Search | Graph Java
134 Gas Station 45.1% Array | Greedy Java
135 Candy 40.7% Array | Greedy Java
136 Single Number 70.0% Array | Bit Manipulation Java
138 Copy List with Random Pointer 50.5% Hash Table | Linked List Java
139 Word Break 45.4% Hash Table | String | Dynamic Programming | Trie | Memoization Java
141 Linked List Cycle 46.9% Hash Table | Linked List | Two Pointers Java
142 Linked List Cycle II 46.3% Hash Table | Linked List | Two Pointers Java
143 Reorder List 51.0% Linked List | Two Pointers | Stack | Recursion Java
146 LRU Cache 40.5% Hash Table | Linked List | Design | Doubly-Linked List Java
148 Sort List 54.1% Linked List | Two Pointers | Divide and Conquer | Sorting | Merge Sort Java
150 Evaluate Reverse Polish Notation 44.1% Array | Math | Stack Java
151 Reverse Words in a String 30.3% Two Pointers | String Java
152 Maximum Product Subarray 34.9% Array | Dynamic Programming Java
153 Find Minimum in Rotated Sorted Array 48.5% Array | Binary Search Java
155 Min Stack 51.8% Stack | Design Java
160 Intersection of Two Linked Lists 53.2% Hash Table | Linked List | Two Pointers Java
162 Find Peak Element 46.2% Array | Binary Search Java
167 Two Sum II - Input Array Is Sorted 60.0% Array | Two Pointers | Binary Search Java
169 Majority Element 63.8% Array | Hash Table | Divide and Conquer | Sorting | Counting Java
174 Dungeon Game 37.3% Array | Dynamic Programming | Matrix Java
179 Largest Number 34.0% String | Greedy | Sorting Java
188 Best Time to Buy and Sell Stock IV 37.9% Array | Dynamic Programming Java
189 Rotate Array 39.2% Array | Math | Two Pointers Java
190 Reverse Bits 52.1% Divide and Conquer | Bit Manipulation Java
191 Number of 1 Bits 64.7% Divide and Conquer | Bit Manipulation Java
198 House Robber 48.7% Array | Dynamic Programming Java
199 Binary Tree Right Side View 61.2% Tree | Depth-First Search | Breadth-First Search | Binary Tree Java
200 Number of Islands 56.2% Array | Depth-First Search | Breadth-First Search | Union Find | Matrix Java
202 Happy Number 54.4% Hash Table | Math | Two Pointers Java
204 Count Primes 33.1% Array | Math | Enumeration | Number Theory Java
205 Isomorphic Strings 42.6% Hash Table | String Java
206 Reverse Linked List 72.4% Linked List | Recursion Java
207 Course Schedule 45.4% Depth-First Search | Breadth-First Search | Graph | Topological Sort Java
208 Implement Trie (Prefix Tree) 60.8% Hash Table | String | Design | Trie Java
209 Minimum Size Subarray Sum 44.5% Array | Binary Search | Sliding Window | Prefix Sum Java
210 Course Schedule II 48.0% Depth-First Search | Breadth-First Search | Graph | Topological Sort Java
212 Word Search II 36.9% Array | String | Backtracking | Trie | Matrix Java
213 House Robber II 40.7% Array | Dynamic Programming Java
215 Kth Largest Element in an Array 65.7% Array | Divide and Conquer | Sorting | Heap (Priority Queue) | Quickselect Java
217 Contains Duplicate 61.3% Array | Hash Table | Sorting Java
219 Contains Duplicate II 42.3% Array | Hash Table | Sliding Window Java
221 Maximal Square 44.5% Array | Dynamic Programming | Matrix Java
226 Invert Binary Tree 73.2% Tree | Depth-First Search | Breadth-First Search | Binary Tree Java
230 Kth Smallest Element in a BST 69.3% Tree | Depth-First Search | Binary Search Tree | Binary Tree Java
235 Lowest Common Ancestor of a Binary Search Tree 60.2% Tree | Depth-First Search | Binary Search Tree | Binary Tree Java
236 Lowest Common Ancestor of a Binary Tree 57.9% Tree | Depth-First Search | Binary Tree Java
238 Product of Array Except Self 64.7% Array | Prefix Sum Java
239 Sliding Window Maximum 46.6% Array | Queue | Sliding Window | Heap (Priority Queue) | Monotonic Queue Java
240 Search a 2D Matrix II 50.6% Array | Binary Search | Divide and Conquer | Matrix Java
242 Valid Anagram 62.7% Hash Table | String | Sorting Java
257 Binary Tree Paths 60.6% String | Backtracking | Tree | Depth-First Search | Binary Tree Java
268 Missing Number 61.5% Array | Hash Table | Math | Binary Search | Bit Manipulation | Sorting Java
274 H-Index 38.1% Array | Sorting | Counting Sort Java
278 First Bad Version 42.9% Binary Search | Interactive Java
279 Perfect Squares 52.1% Math | Dynamic Programming | Breadth-First Search Java
283 Move Zeroes 61.3% Array | Two Pointers Java
287 Find the Duplicate Number 59.1% Array | Two Pointers | Binary Search | Bit Manipulation Java
289 Game of Life 66.7% Array | Matrix | Simulation Java
290 Word Pattern 40.4% Hash Table | String Java
297 Serialize and Deserialize Binary Tree 54.9% String | Tree | Depth-First Search | Breadth-First Search | Design | Binary Tree Java
299 Bulls and Cows 48.6% Hash Table | String | Counting Java
300 Longest Increasing Subsequence 51.5% Array | Binary Search | Dynamic Programming Java
304 Range Sum Query 2D - Immutable 52.1% Array | Design | Matrix | Prefix Sum Java
309 Best Time to Buy and Sell Stock with Cooldown 54.5% Array | Dynamic Programming Java
312 Burst Balloons 56.9% Array | Dynamic Programming Java
322 Coin Change 41.5% Array | Dynamic Programming | Breadth-First Search Java
328 Odd Even Linked List 60.2% Linked List Java
329 Longest Increasing Path in a Matrix 52.2% Array | Dynamic Programming | Depth-First Search | Breadth-First Search | Graph | Topological Sort | Memoization | Matrix Java
338 Counting Bits 75.2% Dynamic Programming | Bit Manipulation Java
347 Top K Frequent Elements 64.8% Array | Hash Table | Divide and Conquer | Sorting | Heap (Priority Queue) | Bucket Sort | Counting | Quickselect Java
349 Intersection of Two Arrays 70.2% Array | Hash Table | Two Pointers | Binary Search | Sorting Java
350 Intersection of Two Arrays II 55.6% Array | Hash Table | Two Pointers | Binary Search | Sorting Java
373 Find K Pairs with Smallest Sums 38.4% Array | Heap (Priority Queue) Java
377 Combination Sum IV 52.1% Array | Dynamic Programming Java
378 Kth Smallest Element in a Sorted Matrix 61.6% Array | Binary Search | Sorting | Heap (Priority Queue) | Matrix Java
387 First Unique Character in a String 58.9% Hash Table | String | Queue | Counting Java
389 Find the Difference 60.4% Hash Table | String | Bit Manipulation | Sorting Java
392 Is Subsequence 49.2% Two Pointers | String | Dynamic Programming Java
399 Evaluate Division 59.5% Array | Depth-First Search | Breadth-First Search | Union Find | Graph | Shortest Path Java
402 Remove K Digits 30.5% String | Stack | Greedy | Monotonic Stack Java
404 Sum of Left Leaves 56.2% Tree | Depth-First Search | Breadth-First Search | Binary Tree Java
409 Longest Palindrome 54.6% Hash Table | String | Greedy Java
410 Split Array Largest Sum 53.2% Array | Binary Search | Dynamic Programming | Greedy Java
416 Partition Equal Subset Sum 46.6% Array | Dynamic Programming Java
417 Pacific Atlantic Water Flow 54.0% Array | Depth-First Search | Breadth-First Search | Matrix Java
424 Longest Repeating Character Replacement 51.4% Hash Table | String | Sliding Window Java
435 Non-overlapping Intervals 49.8% Array | Dynamic Programming | Greedy | Sorting Java
437 Path Sum III 48.8% Tree | Depth-First Search | Binary Tree Java
438 Find All Anagrams in a String 48.9% Hash Table | String | Sliding Window Java
448 Find All Numbers Disappeared in an Array 59.6% Array | Hash Table Java
450 Delete Node in a BST 49.9% Tree | Binary Search Tree | Binary Tree Java
451 Sort Characters By Frequency 68.6% Hash Table | String | Sorting | Heap (Priority Queue) | Bucket Sort | Counting Java
454 4Sum II 57.3% Array | Hash Table Java
461 Hamming Distance 74.8% Bit Manipulation Java
494 Target Sum 45.6% Array | Dynamic Programming | Backtracking Java
503 Next Greater Element II 63.1% Array | Stack | Monotonic Stack Java
509 Fibonacci Number 69.2% Math | Dynamic Programming | Recursion | Memoization Java
515 Find Largest Value in Each Tree Row 64.6% Tree | Depth-First Search | Breadth-First Search | Binary Tree Java
516 Longest Palindromic Subsequence 60.6% String | Dynamic Programming Java
518 Coin Change II 59.8% Array | Dynamic Programming Java
525 Contiguous Array 46.8% Array | Hash Table | Prefix Sum Java
528 Random Pick with Weight 46.1% Math | Binary Search | Prefix Sum | Randomized Java
535 Encode and Decode TinyURL 85.8% Hash Table | String | Design | Hash Function Java
542 01 Matrix 44.2% Array | Dynamic Programming | Breadth-First Search | Matrix Java
543 Diameter of Binary Tree 56.0% Tree | Depth-First Search | Binary Tree Java
547 Number of Provinces 63.3% Depth-First Search | Breadth-First Search | Union Find | Graph Java
557 Reverse Words in a String III 81.5% Two Pointers | String Java
560 Subarray Sum Equals K 44.0% Array | Hash Table | Prefix Sum Java
567 Permutation in String 43.8% Hash Table | Two Pointers | String | Sliding Window Java
572 Subtree of Another Tree 46.0% Tree | Depth-First Search | String Matching | Binary Tree | Hash Function Java
605 Can Place Flowers 33.0% Array | Greedy Java
617 Merge Two Binary Trees 78.5% Tree | Depth-First Search | Breadth-First Search | Binary Tree Java
621 Task Scheduler 55.7% Array | Hash Table | Greedy | Sorting | Heap (Priority Queue) | Counting Java
628 Maximum Product of Three Numbers 46.4% Array | Math | Sorting Java
637 Average of Levels in Binary Tree 71.6% Tree | Depth-First Search | Breadth-First Search | Binary Tree Java
647 Palindromic Substrings 66.3% String | Dynamic Programming Java
653 Two Sum IV - Input is a BST 61.0% Hash Table | Two Pointers | Tree | Depth-First Search | Breadth-First Search | Binary Search Tree | Binary Tree Java
654 Maximum Binary Tree 84.5% Array | Divide and Conquer | Stack | Tree | Monotonic Stack | Binary Tree Java
658 Find K Closest Elements 46.7% Array | Two Pointers | Binary Search | Sliding Window | Sorting | Heap (Priority Queue) Java
662 Maximum Width of Binary Tree 40.6% Tree | Depth-First Search | Breadth-First Search | Binary Tree Java
674 Longest Continuous Increasing Subsequence 49.1% Array Java
680 Valid Palindrome II 39.3% Two Pointers | String | Greedy Java
692 Top K Frequent Words 56.8% Hash Table | String | Trie | Sorting | Heap (Priority Queue) | Bucket Sort | Counting Java
695 Max Area of Island 71.7% Array | Depth-First Search | Breadth-First Search | Union Find | Matrix Java
704 Binary Search 55.1% Array | Binary Search Java
721 Accounts Merge 56.3% Array | String | Depth-First Search | Breadth-First Search | Union Find Java
739 Daily Temperatures 66.5% Array | Stack | Monotonic Stack Java
740 Delete and Earn 57.4% Array | Hash Table | Dynamic Programming Java
744 Find Smallest Letter Greater Than Target 44.7% Array | Binary Search Java
746 Min Cost Climbing Stairs 62.4% Array | Dynamic Programming Java
767 Reorganize String 52.7% Hash Table | String | Greedy | Sorting | Heap (Priority Queue) | Counting Java
791 Custom Sort String 69.4% Hash Table | String | Sorting Java
797 All Paths From Source to Target 81.5% Backtracking | Depth-First Search | Breadth-First Search | Graph Java
811 Subdomain Visit Count 75.2% Array | Hash Table | String | Counting Java
852 Peak Index in a Mountain Array 69.5% Array | Binary Search Java
884 Uncommon Words from Two Sentences 66.0% Hash Table | String Java
896 Monotonic Array 58.2% Array Java
921 Minimum Add to Make Parentheses Valid 76.3% String | Stack | Greedy Java
938 Range Sum of BST 85.3% Tree | Depth-First Search | Binary Search Tree | Binary Tree Java
941 Valid Mountain Array 33.5% Array Java
953 Verifying an Alien Dictionary 52.7% Array | Hash Table | String Java
973 K Closest Points to Origin 65.9% Array | Math | Divide and Conquer | Geometry | Sorting | Heap (Priority Queue) | Quickselect Java
977 Squares of a Sorted Array 71.9% Array | Two Pointers | Sorting Java
994 Rotting Oranges 52.5% Array | Breadth-First Search | Matrix Java
999 Available Captures for Rook 67.8% Array | Matrix | Simulation Java
1009 Complement of Base 10 Integer 62.0% Bit Manipulation Java
1010 Pairs of Songs With Total Durations Divisible by 60 53.0% Array | Hash Table | Counting Java
1025 Divisor Game 67.1% Math | Dynamic Programming | Brainteaser | Game Theory Java
1038 Binary Search Tree to Greater Sum Tree 85.4% Tree | Depth-First Search | Binary Search Tree | Binary Tree Java
1046 Last Stone Weight 64.7% Array | Heap (Priority Queue) Java
1091 Shortest Path in Binary Matrix 44.5% Array | Breadth-First Search | Matrix Java
1137 N-th Tribonacci Number 63.3% Math | Dynamic Programming | Memoization Java
1143 Longest Common Subsequence 58.8% String | Dynamic Programming Java
1160 Find Words That Can Be Formed by Characters 67.8% Array | Hash Table | String Java
1207 Unique Number of Occurrences 70.9% Array | Hash Table Java
1249 Minimum Remove to Make Valid Parentheses 65.7% String | Stack Java
1275 Find Winner on a Tic Tac Toe Game 54.3% Array | Hash Table | Matrix | Simulation Java
1282 Group the People Given the Group Size They Belong To 85.7% Array | Hash Table Java
1302 Deepest Leaves Sum 86.9% Tree | Depth-First Search | Breadth-First Search | Binary Tree Java
1315 Sum of Nodes with Even-Valued Grandparent 85.6% Tree | Depth-First Search | Breadth-First Search | Binary Tree Java
1436 Destination City 77.6% Hash Table | String Java
1464 Maximum Product of Two Elements in an Array 79.3% Array | Sorting | Heap (Priority Queue) Java
1476 Subrectangle Queries 88.5% Array | Design | Matrix Java
1480 Running Sum of 1d Array 89.7% Array | Prefix Sum Java
1492 The kth Factor of n 62.3% Math Java
1637 Widest Vertical Area Between Two Points Containing No Points 84.2% Array | Sorting Java
1641 Count Sorted Vowel Strings 77.3% Dynamic Programming Java
1689 Partitioning Into Minimum Number Of Deci-Binary Numbers 89.7% String | Greedy Java
1769 Minimum Number of Operations to Move All Balls to Each Box 85.4% Array | String Java
1920 Build Array from Permutation 91.5% Array | Simulation Java
1929 Concatenation of Array 91.5% Array Java
2181 Merge Nodes in Between Zeros 86.8% Linked List | Simulation Java
2235 Add Two Integers 89.9% Math Java
2236 Root Equals Sum of Children 87.4% Tree | Binary Tree Java
2265 Count Nodes Equal to Average of Subtree 85.6% Tree | Depth-First Search | Binary Tree Java
2455 Average Value of Even Numbers That Are Divisible by Three 58.7% Java
2456 Most Popular Video Creator 36.5% Java
2457 Minimum Addition to Make Integer Beautiful 34.4% Java

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published