Skip to content

The accepted Java/Python solutions and explanations to the Leetcode. (454/656)

Notifications You must be signed in to change notification settings

arc-008/leetcode-1

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 

Repository files navigation

LeetCode

Language Language Progress
The accepted Java solutions and explanations to the leetcode algorithm.

Table of Contents

Array

# Title Solution Difficulty
1 Two Sum Java, Python Easy
31 Next Permutation Java Medium
41 First Missing Positive Java Hard
48 Rotate Image Java Medium
54 Spiral Matrix Java Medium
59 Spiral Matrix II Java Medium
73 Set Matrix Zeroes Java Medium
118 Pascal Triangle Java Easy
119 Pascals Triangle II Java Easy
169 Majority Element Java Easy
189 Rotate Array Java Easy
228 Summary Ranges Java Medium
229 Majority Element II Java Medium
238 Product Of Array Except Self Java Medium
243 Shortest Word Distance Java Easy
245 Shortest Word Distance III Java Medium
277 Find The Celebrity Java Medium
311 Sparse Matrix Multiplication Java Medium
370 Range Addition Java Medium
414 Third Maximum Number Java Easy
422 Valid Word Square Java Easy
442 Find All Duplicates In An Array Java Medium
448 Find All Numbers Disappeared In An Array Java Easy
463 Island Perimeter Java Easy
485 Max Consecutive Ones Java Easy
495 Teemo Attacking Java Medium
531 Lonely Pixel I Java Medium
548 Split Array With Equal Sum Java Medium
581 Shortest Unsorted Continuous Subarray Java Easy
605 Can Place Flowers Java Easy
611 ValidT riangle Number Java Medium
628 Maximum Product of Three Numbers Java Easy
661 Image Smoother Java Easy
665 Non decreasing Array Java Easy
667 Beatiful Arrangement II Java Medium
670 Maximum Swap Java Medium
674 Longest Continuous Increasing Subsequence Java Easy
683 K Empty Slots Java Hard

Backtracking

# Title Solution Difficulty
22 Generate Parentheses Java Medium
46 Permuations Java Medium
47 Permutations II Java Medium
51 N Queues Java Hard
52 N Queues II Java Hard
79 Word Search Java Medium

BFS

# Title Solution Difficulty
102 Binary Tree Level Order Traversal Java Medium
103 Binary Tree Zigzag Level Order Traversal Java Medium
107 Binary Tree Level Order Traversal II Java Easy
111 Minimum Depth of Binary Tree Java Easy
130 Surrounded Regions Java Medium
133 Clone Graph Java Medium
199 Binary Tree Right Side View Java Medium
200 Number of Islands Java Medium
207 Course Schedule Java Medium
210 Course Schedule II Java Medium
261 Graph Valid Tree (locked) Java Medium
286 Walls And Gates Java Medium
317 Shortest Distance From All Buildings Java Hard
417 Pacific Atlantic Water Flow Java Medium
490 The Maze Java Medium
499 The Maze III Java Hard
505 The Maze II Java Medium
513 Find Bottom Left Tree Value Java Medium
515 Find Largest Value in Each Tree Row Java Medium
529 Minesweeper Java Medium
582 Kill Process Java Medium
690 Employee Importance Java Easy

Binary Search

# Title Solution Difficulty
33 Search in Rotated Sorted Array Java Medium
34 Search For A Range Java Medium
35 Search Insert Position Java Easy
69 Sqrt Java Easy
74 Search a 2D Matrix Java Medium
81 Search In Rotated Sorted ArrayII Java Medium
153 Find Minimum In Rotated Sorted Array Java Easy
154 Find Minimum In Rotated Sorted Array II Java Easy
162 Find Peak Element Java Easy
240 Search a 2D Matrix II Java Easy
270 Closest Binary Search Tree Value Java Easy
278 First Bad Version Java Easy
367 Valid Perfect Square Java Easy
441 Arranging Coins Java Easy
475 Heaters Java Easy

Bit Manipulation

# Title Solution Difficulty
136 Single Number Java Easy
137 Single Number II Java Medium
190 Reverse Bit Java Easy
191 Number of Bits Java Easy
201 Bitwise AND of Numbers Range Java Medium
231 Power of Two Java Easy
260 Single Number III Java Medium
318 Maximum Product of Word Lengths Java Medium
338 Counting Bits Java Medium
342 Power of Four Java Easy
371 Sum of Two Integers Java Easy
389 Find the Difference Java Easy
397 Integer Replacement Java Medium
401 Binary Watch Java Easy
405 Convert a Number to Hexadecimal Java Easy
461 Hamming Distance Java Easy
476 Number Complement Java Easy
477 Total Hamming Distance Java Medium
693 Binary Number with Alternating Bits Java Easy

Design

# Title Solution Difficulty
146 LRU Java Hard
155 Min Stack Java Easy
170 Two Sum III DataStructure Design Java Easy
225 Implement Stack Using Queues Java Easy
232 Implement Queue Using Stacks Java Easy
244 Shortest Word Distance I Java Medium
281 Zigzag Iterator Java Medium
284 Peeking Iterator Java Medium
341 Flatten Nested List Iterator Java Medium
346 Moving Average From Data Stream Java Easy
355 Design Twitter Java Medium
359 Logger Rate Limiter Java Easy
380 Insert Delete GetRandom Java Medium
381 Insert Delete GetRandom Duplicates Allowed Java Hard
635 Design Log Storage System Java Medium

DFS

# Title Solution Difficulty
39 Combination Sum Java Medium
40 Combination Sum II Java Medium
77 Combinations Java Medium
78 Subsets Java Medium
90 Subsets II Java Medium
98 Validate Binary Search Tree Java Medium
100 Same Tree Java Easy
101 Sysmmetric Tree Java Easy
104 Maximum Depth of Binary Tree Java Easy
105 Construct Binary Tree from Preorder and Inorder Traversal Java Medium
108 Convert Sorted Array To Binary Search Tree Java Easy
109 Convert Sorted List To Binary Search Tree Java Medium
110 Balanced Binary Tree Java Easy
111 Minimum Depth of Binary Tree Java Easy
112 Path Sum Java Easy
113 Path Sum II Java Medium
114 Flatten Binary Tree to LinkedList Java Medium
116 Populating Next Right Pointers in Each Node Java Medium
124 Binary Tree Maximum Path Sum Java Hard
129 Sum Root to Leaf Numbers Java Medium
216 CombinationSum III Java Medium
230 Kth Smallest Element Java Medium
257 Binary Tree Paths Java Easy
275 H Index II Java Medium
337 House Robber III Java Medium
364 Nested List Weight Sum II Java Medium
366 Find Leaves of Binary Tree Java Medium
437 Path Sum III Java Easy
439 Ternary Expression Parser Java Medium
473 Matchsticks to Square Java Medium
491 Increasing Subsequences Java Medium
494 Target Sum Java Medium
606 Construct String from Binary Tree Java Easy
617 Merge Two Binary Trees Java Easy
652 Find Duplicate Subtrees Java Medium
662 Maximum Width of Binary Tree Java Medium
663 Equal Tree Partition Java Medium
669 Trim A Binary Search Tree Java Easy
671 Second Minimum Node In a Binary Tree Java Easy
687 Longest Univalue Path Java Easy

Dynamic Programming

# Title Solution Difficulty
53 Maximum Subarray Java Easy
62 Unique Paths Java Medium
64 Minimum Path Sum Java Medium
70 Cimbing Stairs Java Easy
91 Decode Ways Java Medium
96 Unique Binary Search Tree Java Medium
120 Triangle Java Medium
121 Best Time to Buy and Sell Stock Java Easy
139 Word Break Java Medium
152 Maximum Product Subarray Java Medium
198 House Robber Java Easy
213 House Robber II Java Easy
221 Maximal Square Java Medium
256 Paint House Java Easy
264 Ugly Number II Java Medium
276 Paint Fence Java Medium
279 Perfect Squares Java Medium
300 Longest Increasing Subsequence Java Medium
303 Range Sum Query Immutable Java Easy
304 RangeSum Query 2D Immutable Java Medium
338 Counting Bits Java Medium
343 Integer Break Java Medium
357 Count Numbers with Unique Digits Java Medium
361 Bomb Enemy Java Medium
377 Combination Sum IV Java Easy
392 Is SubSequence Java Medium
413 Arithmetic Slices Java Medium
416 Partition Equal Subset Sum Java Medium
474 Ones And Zeros Java Medium
516 Longest Palindromic Subsequence Java Medium
523 Continuous Subarray Sum Java Medium
673 Number of Longest Increasing Subsequence Java Medium
718 Maximum Length of Repeated Subarray Java Medium

Greedy

# Title Solution Difficulty
122 Best Time to Buy and Sell Stock II Java Easy
134 Gas Station Java Medium
135 Candy Java Hard
169 Majority Element Java Easy
229 Majority Element II Java Medium
406 Queue Reconstruction by Height Java Medium
455 Assign Cookies Java Easy

Hash Table

# Title Solution Difficulty
36 Valid Sudoku Java Medium
149 Max Points On A Line Java Hard
202 Happy Number Java Easy
204 Count Primes Java Easy
205 Isomorphic Strings Java Easy
217 Contains Duplicate Java Easy
219 Contains Duplicate II Java Easy
246 Strobogrammatic Number Java Easy
249 Group Shifted Strings Java Medium
266 Palindrome Permutation Java Easy
290 Word Pattern Java Easy
299 Bulls And Cows Java Medium
325 Maximum Size Subarray Sum Equals K Java Medium
336 Palindrome Pairs Java Hard
340 Longest Substring With At Most K Distinct Characters Java Hard
349 Intersection of Two Arrays Java Easy
350 Intersection of Two Arrays II Java Easy
409 Longest Palindrome Java Easy
438 Find All Anagrams In A String Java Easy
447 Number Of Boomeranges Java Easy
500 Keyboard Row Java Easy
525 Contiguous Array Java Medium
535 Encode And Decode Tiny URL Java Medium
554 Brick Wall Java Medium
575 Distribute Candies Java Easy
594 Longest Harmonious Subsequence Java Easy
599 Minimum Index Sum Of Two Lists Java Easy
729 My Calendar I Java Medium

Heap

# Title Solution Difficulty
218 The Skyline Problem Java Hard
264 Ugly Number II Java Medium
295 Find Median From Data Stream Java Hard
347 Top K Frequent Elements Java Medium
373 Find K Pairs With Smallest Sums Java Medium
407 Trapping RainWater II Java Hard
451 Sort Characters By Frequency Java Medium

LinkedList

# Title Solution Difficulty
2 Add Two Numbers Java Medium
19 Remove Nth Node From End of List Java Medium
21 Merge Two Sorted Linked List Java Easy
23 Merge K Sorted Lists Java Hard
24 Swap Nodes in Pairs Java Medium
61 Rotate List Java Medium
82 Remove Duplicates from Sorted List II Java Medium
83 Remove Duplicates Java Easy
86 Partition List Java Medium
92 Reverse Linked List II Java Medium
138 Copy List with Random Pointer Java Medium
141 Linked List Cycle Java Easy
142 Linked List Cycle II Java Medium
143 Reorder List Java Medium
147 Insertion Sort List Java Medium
160 Intersection of Two Linked List Java Easy
203 Remove Linked List Elements Java Easy
206 Reverse Linked List Java Easy
234 Palindrome Linked List Java Easy
237 Delete Node in a Linked List Java Easy
328 Odd Even Linked List Java Medium
445 Add Two Numbers II Java Medium

Math

# Title Solution Difficulty
9 Palindrome Number Java Easy
50 Pow Java Medium
168 Excel Sheet Column Title Java Easy
171 Excel Sheet Column Number Java Easy
172 Factorial Trailing Zeroes Java Easy
223 Rectangle Area Java Medium
233 Number Of Digit One Java Hard
258 Add Digits Java Easy
263 Ugly Number Java Easy
326 Power Of Three Java Easy
365 Water And Jug Problem Java Medium
396 Rotate Function Java Medium
400 Nth Digit Java Easy
415 Add String Java Easy
423 Reconstruct Original Digits From English Java Medium
453 Minimum Moves To Equal Array Elements Java Easy
462 Minimum Moves To Equal Array Element II Java Medium
469 Convex Polygon Java Medium
507 Perfect Number Java Easy
573 Squirrel Simulation Java Medium
592 Fraction Addition And Subtraction Java Medium
598 Range Addition II Java Easy
633 Sum Of Square Numbers Java Easy
728 Self Dividing Numbers Java Easy

Queue

# Title Solution Difficulty
239 Sliding Window Maximum Java Hard

Sort

# Title Solution Difficulty
56 Merge Intervals Java Medium
75 Sort Colors Java Medium
148 Sort List Java Medium
179 Largest Number Java Medium
274 H Index Java Medium
349 Intersection of Two Arrays Java Easy
350 Intersection of Two Arrays II Java Easy
524 Longest Word in Dictionary through Deleting Java Medium
Quick Sort Java
Merge Sort Java

String

# Title Solution Difficulty
5 Longest Palindromic Substring Java Medium
6 ZigZag Conversion Java Medium
14 Longest Conmmon Prefix Java Easy
38 Count And Say Java Easy
151 Reverse Words In String Java Medium
161 One Edit Distance Java Medium
165 Compare Version Numbers Java Medium
186 Reverse Words In String II Java Medium
214 Shortest Palindrome Java Hard
271 Encode And Decode Strings Java Medium
293 Filip Game Java Easy
383 Ransom Note Java Easy
408 Valid Word Abbreviation Java Easy
434 Number Of Segments In A String Java Easy
459 Repeated Substring Pattern Java Easy
468 Validate IP Address Java Medium
520 Detect Capital Java Easy
521 Longest Uncommon Subsequence I Java Easy
522 Longest Uncommon Subsequence II Java Medium
539 Minimum Time Difference Java Medium
541 Reverse String II Java Easy
551 Student Attendance Record I Java Easy
556 Next Greater Element III Java Medium
557 Reverse Words In A String III Java Easy
680 Valid Palindrome II Java Easy
681 Next Closest Time Java Medium
686 Repeated String Match Java Easy

Tree

# Title Solution Difficulty
95 Unique Binary Search Trees II Java Medium
117 Populating Next Right Pointers in Eac hNode II Java Medium
222 Count Complete Tree Node Java Medium
654 Maximum Binary Tree Java Medium

Trie

# Title Solution Difficulty
208 Implement Trie Prefix Tree Java Medium
211 Add And Search Word Data Structure Design Java Medium
212 Word Search II Java Hard
421 Maximum XOR Of Two Numbers In An Array Java Medium
648 Replace Words Java Medium

Two Pointers

# Title Solution Difficulty
3 Longest Substring without Repeating Characters Java Medium
11 Container with Most Water Java Medium
15 3Sum Java Medium
16 3SumClosest Java Medium
18 4Sum Java Medium
26 Remove Duplicates from Sorted Array Java Easy
27 Remove Elements Java Easy
28 Implement strStr Java Easy
76 Minimum Window Substring Java Hard
80 Remove Duplicates from Sorted Array II Java Medium
88 Merge Sorted Array Java Easy
125 Valid Palindrome Java Easy
167 Two Sum II Input Array Is Sorted Java Easy
209 Minimum Size Subarray Sum Java Medium
287 Find The Duplicate Java Medium
345 Reverse Vowels Of A String Java Easy
524 Longest Word In Dictionary Through Deleting Java Medium
532 Kdiff Pairs In An Array Java Easy
567 Permutation In String Java Medium

Union Find

# Title Solution Difficulty
128 Longest Consecutive Sequence Java Hard
305 Number of Islands II(locked) Java Hard
323 Number of Connected Components in an Undirected Graph(locked) Java Medium
547 Friend Circles Java Medium
684 Redundant Connection Java Medium

About

The accepted Java/Python solutions and explanations to the Leetcode. (454/656)

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Java 99.9%
  • Python 0.1%