Skip to content

liangchiwuu/leetcode

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 

Repository files navigation

LeetCode

License Language

LeetCode solutions in Java ☺!

Algorithms

★ indicates critical problems in my opinion.
☆ indicates LeetCode subscribers only.

# Difficulty Problem Solution Tag 1st Run 2nd Run
1 Easy Two Sum Java Hash ✔️
2 Medium Add Two Numbers Java Linked List ✔️
4 Hard Median of Two Sorted Arrays Java Array ✔️
5 Medium Longest Palindromic Substring Java Dynamic Programming ✔️
15 Medium 3Sum Java Two Pointers ✔️
20 Easy Valid Parentheses Java Stack ✔️
21 Easy Merge Two Sorted Lists Java Linked List ✔️
23 Hard Merge k Sorted Lists Java Divide and Conquer, Heap ✔️
25 Hard Reverse Nodes in k-Group Java Linked List ✔️
26 Easy Remove Duplicates from Sorted Array Java Two Pointers ✔️
28 Easy Implement strStr() Java String, Hash ✔️ ✔️
33 Medium Search in Rotated Sorted Array Java Binary Search ✔️ ✔️
34 Medium Search for a Range Java Binary Search, Divide and Conquer ✔️
35 Easy Search Insert Position Java Binary Search ✔️ ✔️
39 Medium Combination Sum Java DFS ✔️
40 Medium Combination Sum II Java DFS ✔️
45 Hard Jump Game II Java Dynamic Programming, Greedy ✔️
46 Medium Permutations Java BFS, DFS ✔️
47 Medium Permutations II Java DFS ✔️
51 Hard N-Queens Java DFS ✔️
53 Easy Maximum Subarray Java Array ✔️
55 Medium Jump Game Java Dynamic Programming, Greedy ✔️
62 Medium Unique Paths Java Dynamic Programming ✔️
63 Medium Unique Paths II Java Dynamic Programming ✔️
64 Medium Minimum Path Sum Java Dynamic Programming ✔️
69 Easy Sqrt(x) Java Binary Search ✔️ ✔️
70 Easy Climbing Stairs Java Dynamic Programming ✔️
74 Medium Search a 2D Matrix Java Binary Search ✔️ ✔️
75 Medium Sort Colors Java Array, Two Pointers ✔️
78 Medium Subsets Java Bit Manipulation, DFS ✔️ ✔️
90 Medium Subsets II Java DFS ✔️ ✔️
81 Medium Search in Rotated Sorted Array II Java Binary Search ✔️ ✔️
84 Hard Largest Rectangle in Histogram Java Array, Stack ✔️
88 Easy Merge Sorted Array Java Array ✔️ ✔️
94 Medium Binary Tree Inorder Traversal Java Binary Tree, Divide and Conquer ✔️
98 Medium Validate Binary Search Tree Java Binary Tree, Divide and Conquer ✔️ ✔️
102 Medium Binary Tree Level Order Traversal Java Binary Tree, BFS, DFS ✔️
104 Easy Maximum Depth of Binary Tree Java Binary Tree, Divide and Conquer ✔️
110 Easy Balanced Binary Tree Java Binary Tree, Divide and Conquer ✔️ ✔️
114 Medium Flatten Binary Tree to Linked List Java Binary Tree, Divide and Conquer ✔️
116 Medium Populating Next Right Pointers in Each Node Java Binary Tree, Divide and Conquer ✔️
117 Medium Populating Next Right Pointers in Each Node II Java Binary Tree, Divide and Conquer ✔️
120 Medium Triangle Java Dynamic Programming ✔️
121 Easy Best Time to Buy and Sell Stock Java Array ✔️
125 Easy Valid Palindrome Java Two Pointers ✔️
126 Hard Word Ladder II Java BFS, DFS ✔️
127 Medium Word Ladder Java BFS ✔️
128 Hard Longest Consecutive Sequence Java Hash ✔️
131 Medium Palindrome Partitioning Java DFS ✔️
133 Medium Clone Graph Java BFS, DFS ✔️
136 Easy Single Number Java Bit Manipulation ✔️
137 Medium Single Number II Java Bit Manipulation ✔️
138 Medium Copy List with Random Pointer Java Linked List ✔️
141 Easy Linked List Cycle Java Linked List, Two Pointers ✔️
142 Medium Linked List Cycle II Java Linked List, Two Pointers ✔️
144 Medium Binary Tree Preorder Traversal Java Binary Tree, Divide and Conquer ✔️
145 Hard Binary Tree Postorder Traversal Java Binary Tree, Divide and Conquer ✔️
146 Hard LRU Cache Java Hash, Linked List ✔️
148 Medium Sort List Java Divide and Conquer, Linked List ✔️
153 Medium Find Minimum in Rotated Sorted Array Java Binary Search ✔️ ✔️
154 Hard Find Minimum in Rotated Sorted Array II Java Binary Search ✔️ ✔️
155 Easy Min Stack Java Stack ✔️
160 Easy Intersection of Two Linked Lists Java Linked List ✔️
162 Medium Find Peak Element Java Binary Search ✔️ ✔️
167 Easy Two Sum II - Input array is sorted Java Two Pointers ✔️
168 Easy Excel Sheet Column Title Java Math ✔️
170 Easy Two Sum III - Data structure design Java Hash ✔️
171 Easy Excel Sheet Column Number Java Math ✔️
172 Easy Factorial Trailing Zeroes Java Math ✔️
189 Easy Rotate Array Java Array ✔️
200 Medium Number of Islands Java BFS, DFS, Union-Find ✔️
204 Easy Count Primes Java Math ✔️
206 Easy Reverse Linked List Java Linked List ✔️
207 Medium Course Schedule Java BFS ✔️
209 Medium Minimum Size Subarray Sum Java Array ✔️
210 Medium Course Schedule II Java BFS ✔️
215 Medium Kth Largest Element in an Array Java Array, Divide and Conquer ✔️
221 Medium Maximal Square Java Dynamic Programming ✔️
235 Easy Lowest Common Ancestor of a Binary Search Tree Java Binary Tree ✔️
236 Medium Lowest Common Ancestor of a Binary Tree Java Binary Tree, Divide and Conquer ✔️
239 Hard Sliding Window Maximum Java Array, Deque ✔️
242 Easy Valid Anagram Java Hash ✔️
257 Easy Binary Tree Paths Java Binary Tree, Divide and Conquer ✔️ ✔️
260 Medium Single Number III Java Bit Manipulation ✔️
★☆ 261 Medium Graph Valid Tree Java BFS, DFS, Union-Find ✔️
263 Easy Ugly Number Java Math ✔️
264 Medium Ugly Number II Java Heap, Math ✔️
278 Easy First Bad Version Java Binary Search ✔️ ✔️
279 Medium Perfect Squares Java Dynamic Programming ✔️
283 Easy Move Zeroes Java Two Pointers ✔️
297 Hard Serialize and Deserialize Binary Tree Java Binary Tree, BFS, DFS ✔️
300 Medium Longest Increasing Subsequence Java Dynamic Programming ✔️
317 Hard Shortest Distance from All Buildings Java BFS ✔️
344 Easy Reverse String Java String ✔️
349 Easy Intersection of Two Arrays Java Array, Binary Search, Two Pointers ✔️
350 Easy Intersection of Two Arrays II Java Two Pointers, Hash ✔️
354 Hard Russian Doll Envelopes Java Dynamic Programming ✔️
368 Medium Largest Divisible Subset Java Dynamic Programming ✔️
387 Easy First Unique Character in a String Java Hash ✔️
409 Easy Longest Palindrome Java Hash ✔️
438 Easy Find All Anagrams in a String Java Hash ✔️
★☆ 444 Medium Sequence Reconstruction Java BFS ✔️
560 Medium Subarray Sum Equals K Java Array, Hash ✔️
611 Medium Valid Triangle Number Java Two Pointers ✔️
658 Medium Find K Closest Elements Java Binary Search, Heap ✔️
675 Hard Cut Off Trees for Golf Event Java BFS, Heap ✔️
678 Medium Valid Parenthesis String Java Dynamic Programming, Greedy ✔️
682 Easy Baseball Game Java Stack ✔️
712 Medium Minimum ASCII Delete Sum for Two Strings Java Dynamic Programming ✔️
724 Easy Find Pivot Index Java Array ✔️
747 Easy Largest Number Greater Than Twice of Others Java Array ✔️
752 Medium Open the Lock Java BFS ✔️
763 Medium Partition Labels Java Greedy ✔️
766 Easy Toeplitz Matrix Java Array ✔️
★☆ 776 Medium Split BST Java Binary Tree ✔️
778 Hard Swim in Rising Water Java Heap ✔️
781 Medium Rabbits in Forest Java Math ✔️
783 Easy Minimum Distance Between BST Nodes Java Binary Tree ✔️
784 Easy Letter Case Permutation Java DFS ✔️
785 Medium Is Graph Bipartite? Java BFS, DFS ✔️
786 Hard K-th Smallest Prime Fraction Java Heap ✔️
787 Medium Cheapest Flights Within K Stops Java BFS ✔️
788 Easy Rotated Digits Java Math ✔️
789 Medium Escape The Ghosts Java Array ✔️
793 Hard Preimage Size of Factorial Zeroes Function Java Binary Search, Math ✔️
797 Medium All Paths From Source to Target Java DFS ✔️
799 Medium Champagne Tower Java Dynamic Programming ✔️
804 Easy Unique Morse Code Words Java Hash ✔️
806 Easy Number of Lines To Write String Java ✔️
807 Medium Max Increase to Keep City Skyline Java Array ✔️
836 Easy Rectangle Overlap Java Math ✔️
839 Hard Similar String Groups Java BFS ✔️

Releases

No releases published

Packages

No packages published

Languages