Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/b41sh/leetcode

LeetCode Solutions
https://github.com/b41sh/leetcode

leetcode leetcode-java

Last synced: about 1 month ago
JSON representation

LeetCode Solutions

Awesome Lists containing this project

README

        

# leetcode
LeetCode Solutions

| # | Title | Solution | Difficulty |
|---| ----- | -------- | ---------- |
|888|[Fair Candy Swap](https://leetcode.com/problems/fair-candy-swap)| [Java](./src/leetcode/array/FairCandySwap.java)|Easy|
|886|[Possible Bipartition](https://leetcode.com/problems/possible-bipartition)| [Java](./src/leetcode/graph/PossibleBipartition.java)|Medium|
|230|[Kth Smallest Element in a BST](https://leetcode.com/problems/kth-smallest-element-in-a-bst/)| [Java](./src/leetcode/tree/KthSmallestElementInAbst.java)|Medium|
|226|[Invert Binary Tree](https://leetcode.com/problems/invert-binary-tree/)| [Java](./src/leetcode/tree/InvertBinaryTree.java)|Easy|
|223|[Rectangle Area](https://leetcode.com/problems/rectangle-area/)| [Java](./src/leetcode/math/RectangleArea.java)|Medium|
|222|[Count Complete Tree Nodes](https://leetcode.com/problems/count-complete-tree-nodes/)| [Java](./src/leetcode/tree/CountCompleteTreeNodes.java)|Medium|
|221|[Maximal Square](https://leetcode.com/problems/maximal-square)| [Java](./src/leetcode/dp/MaximalSquare.java)|Medium|
|217|[Contains Duplicate](https://leetcode.com/problems/contains-duplicate/)| [Java](./src/leetcode/array/ContainsDuplicate.java)|Easy|
|215|[Kth Largest Element in an Array](https://leetcode.com/problems/kth-largest-element-in-an-array/)| [Java](./src/leetcode/array/KthLargestElementInAnArray.java)|Medium|
|213|[House Robber II](https://leetcode.com/problems/house-robber-ii/)| [Java](./src/leetcode/dp/HouseRobber.java)|Medium|
|211|[Add and Search Word - Data structure design](https://leetcode.com/problems/add-and-search-word-data-structure-design/description/)| [Java](./src/leetcode/design/WordDictionary.java)|Medium|
|208|[Implement Trie (Prefix Tree)](https://leetcode.com/problems/implement-trie-prefix-tree/)| [Java](./src/leetcode/design/Trie.java)|Medium|
|206|[Reverse Linked List](https://leetcode.com/problems/reverse-linked-list)| [Java](./src/leetcode/list/ReverseLinkedList.java)|Easy|
|205|[Isomorphic Strings](https://leetcode.com/problems/isomorphic-strings/)| [Java](./src/leetcode/string/IsomorphicStrings.java)|Easy|
|203|[Remove Linked List Elements](https://leetcode.com/problems/remove-linked-list-elements)| [Java](./src/leetcode/list/RemoveLinkedListElements.java)|Easy|
|202|[Happy Number](https://leetcode.com/problems/happy-number)| [Java](./src/leetcode/math/HappyNumber.java)|Easy|
|201|[Bitwise AND of Numbers Range](https://leetcode.com/problems/bitwise-and-of-numbers-range/)| [Java](./src/leetcode/bit/BitwiseAndOfNumbersRange.java)|Medium|
|199|[Binary Tree Right Side View](https://leetcode.com/problems/binary-tree-right-side-view/)| [Java](./src/leetcode/tree/BinaryTreeRightSideView.java)|Medium|
|198|[House Robber](https://leetcode.com/problems/house-robber/)| [Java](./src/leetcode/dp/HouseRobber.java)|Medium|
|191|[Number of 1 Bits](https://leetcode.com/problems/number-of-1-bits/)| [Java](./src/leetcode/bit/NumberOf1Bits.java)|Easy|
|190|[Reverse Bits](https://leetcode.com/problems/reverse-bits/)| [Java](./src/leetcode/bit/ReverseBits.java)|Easy|
|189|[Rotate Array](https://leetcode.com/problems/rotate-array/)| [Java](./src/leetcode/array/RotateArray.java)|Easy|
|187|[Repeated DNA Sequences](https://leetcode.com/problems/repeated-dna-sequences/)| [Java](./src/leetcode/bit/RepeatedDnaSequences.java)|Medium|
|176|[Second Highest Salary](https://leetcode.com/problems/second-highest-salary/)| [SQL](./src/leetcode/sql/SecondHighestSalary.sql)|Easy|
|175|[Combine Two Tables](https://leetcode.com/problems/combine-two-tables)| [SQL](./src/leetcode/sql/CombineTwoTables.sql)|Easy|
|173|[Binary Search Tree Iterator](https://leetcode.com/problems/binary-search-tree-iterator/)| [Java](./src/leetcode/design/BSTIterator.java)|Medium|
|172|[Factorial Trailing Zeroes](https://leetcode.com/problems/factorial-trailing-zeroes)| [Java](./src/leetcode/math/FactorialTrailingZeroes.java)|Easy|
|171|[Excel Sheet Column Number](https://leetcode.com/problems/excel-sheet-column-number)| [Java](./src/leetcode/math/ExcelSheetColumnNumber.java)|Easy|
|169|[Majority Element](https://leetcode.com/problems/majority-element)| [Java](./src/leetcode/math/MajorityElement.java)|Easy|
|168|[Excel Sheet Column Title](https://leetcode.com/problems/excel-sheet-column-title)| [Java](./src/leetcode/math/ExcelSheetColumnTitle.java)|Easy|
|167|[Two Sum II - Input array is sorted](https://leetcode.com/problems/two-sum-ii-input-array-is-sorted)| [Java](./src/leetcode/bs/TwoSumII.java)|Easy|
|165|[Compare Version Numbers](https://leetcode.com/problems/compare-version-numbers/)| [Java](./src/leetcode/string/CompareVersionNumbers.java)|Medium|
|162|[Find Peak Element](https://leetcode.com/problems/find-peak-element)| [Java](./src/leetcode/bs/FindPeakElement.java)|Medium|
|160|[Intersection of Two Linked Lists](https://leetcode.com/problems/intersection-of-two-linked-lists)| [Java](./src/leetcode/list/IntersectionOfTwoLinkedLists.java)|Easy|
|155|[Min Stack](https://leetcode.com/problems/min-stack/)| [Java](./src/leetcode/design/MinStack.java)|Easy|
|154|[Find Minimum in Rotated Sorted Array II](https://leetcode.com/problems/find-minimum-in-rotated-sorted-array-ii)| [Java](./src/leetcode/bs/FindMinimumInRotatedSortedArray.java)|Hard|
|153|[Find Minimum in Rotated Sorted Array](https://leetcode.com/problems/find-minimum-in-rotated-sorted-array)| [Java](./src/leetcode/bs/FindMinimumInRotatedSortedArray.java)|Medium|
|152|[Maximum Product Subarray](https://leetcode.com/problems/maximum-product-subarray)| [Java](./src/leetcode/dp/MaximumProductSubarray.java)|Medium|
|151|[Reverse Words in a String](https://leetcode.com/problems/reverse-words-in-a-string)| [Java](./src/leetcode/string/ReverseWordsInAString.java)|Medium|
|150|[Evaluate Reverse Polish Notation](https://leetcode.com/problems/evaluate-reverse-polish-notation)| [Java](./src/leetcode/stack/EvaluateReversePolishNotation.java)|Medium|
|148|[Sort List](https://leetcode.com/problems/sort-list/)| [Java](./src/leetcode/list/SortList.java)|Medium|
|147|[Insertion Sort List](https://leetcode.com/problems/insertion-sort-list/)| [Java](./src/leetcode/list/InsertionSortList.java)|Medium|
|146|[LRU Cache](https://leetcode.com/problems/lru-cache/)| [Java](./src/leetcode/design/LRUCache.java)|Hard|
|145|[Binary Tree Postorder Traversal](https://leetcode.com/problems/binary-tree-postorder-traversal)| [Java](./src/leetcode/tree/BinaryTreePostorderTraversal.java)|Hard|
|144|[Binary Tree Preorder Traversal](https://leetcode.com/problems/binary-tree-preorder-traversal)| [Java](./src/leetcode/tree/BinaryTreePreorderTraversal.java)|Medium|
|143|[Reorder List](https://leetcode.com/problems/reorder-list/)| [Java](./src/leetcode/list/ReorderList.java)|Medium|
|142|[Linked List Cycle II](https://leetcode.com/problems/linked-list-cycle-ii/)| [Java](./src/leetcode/list/LinkedListCycle.java)|Medium|
|141|[Linked List Cycle](https://leetcode.com/problems/linked-list-cycle/)| [Java](./src/leetcode/list/LinkedListCycle.java)|Easy|
|138|[Copy List with Random Pointer](https://leetcode.com/problems/copy-list-with-random-pointer)| [Java](./src/leetcode/list/CopyListWithRandomPointer.java)|Medium|
|137|[Single Number II](https://leetcode.com/problems/single-number-ii/)| [Java](./src/leetcode/bit/SingleNumber.java)|Medium|
|136|[Single Number](https://leetcode.com/problems/single-number/)| [Java](./src/leetcode/bit/SingleNumber.java)|Easy|
|135|[Candy](https://leetcode.com/problems/candy)| [Java](./src/leetcode/greedy/Candy.java)|Meidum|
|134|[Gas Station](https://leetcode.com/problems/gas-station)| [Java](./src/leetcode/greedy/GasStation.java)|Meidum|
|132|[Palindrome Partitioning II](https://leetcode.com/problems/palindrome-partitioning-ii/)| [Java](./src/leetcode/dp/PalindromePartitioningII.java)|Hard|
|131|[Palindrome Partitioning](https://leetcode.com/problems/palindrome-partitioning/)| [Java](./src/leetcode/backtracking/PalindromePartitioning.java)|Medium|
|129|[Sum Root to Leaf Numbers](https://leetcode.com/problems/sum-root-to-leaf-numbers/)| [Java](./src/leetcode/tree/SumRootToLeafNumbers.java)|Medium|
|127|[Word Ladder](https://leetcode.com/problems/word-ladder/)| [Java](./src/leetcode/bfs/WordLadder.java)|Medium|
|125|[Valid Palindrome](https://leetcode.com/problems/valid-palindrome)| [Java](./src/leetcode/tp/ValidPalindrome.java)|Easy|
|124|[Binary Tree Maximum Path Sum](https://leetcode.com/problems/binary-tree-maximum-path-sum)| [Java](./src/leetcode/tree/BinaryTreeMaximumPathSum.java)|Hard|
|123|[Best Time to Buy and Sell Stock III](https://leetcode.com/problems/best-time-to-buy-and-sell-stock-iii)| [Java](./src/leetcode/dp/BestTimeToBuyAndSellStock.java)|Hard|
|122|[Best Time to Buy and Sell Stock II](https://leetcode.com/problems/best-time-to-buy-and-sell-stock-ii)| [Java](./src/leetcode/dp/BestTimeToBuyAndSellStock.java)|Easy|
|121|[Best Time to Buy and Sell Stock](https://leetcode.com/problems/best-time-to-buy-and-sell-stock)| [Java](./src/leetcode/dp/BestTimeToBuyAndSellStock.java)|Easy|
|120|[Triangle](https://leetcode.com/problems/triangle)| [Java](./src/leetcode/dp/Triangle.java)|Medium|
|119|[Pascal's Triangle II](https://leetcode.com/problems/pascals-triangle-ii)| [Java](./src/leetcode/array/PascalsTriangle.java)|Easy|
|118|[Pascal's Triangle](https://leetcode.com/problems/pascals-triangle)| [Java](./src/leetcode/array/PascalsTriangle.java)|Easy|
|117|[Populating Next Right Pointers in Each Node II](https://leetcode.com/problems/populating-next-right-pointers-in-each-node-ii)| [Java](./src/leetcode/tree/PopulatingNextRightPointersInEachNode.java)|Medium|
|116|[Populating Next Right Pointers in Each Node](https://leetcode.com/problems/populating-next-right-pointers-in-each-node)| [Java](./src/leetcode/tree/PopulatingNextRightPointersInEachNode.java)|Medium|
|114|[Flatten Binary Tree to Linked List](https://leetcode.com/problems/flatten-binary-tree-to-linked-list)| [Java](./src/leetcode/tree/FlattenBinaryTreeToLinkedList.java)|Medium|
|113|[Path Sum II](https://leetcode.com/problems/path-sum-ii)| [Java](./src/leetcode/tree/PathSum.java)|Medium|
|112|[Path Sum](https://leetcode.com/problems/path-sum)| [Java](./src/leetcode/tree/PathSum.java)|Easy|
|111|[Minimum Depth of Binary Tree](https://leetcode.com/problems/minimum-depth-of-binary-tree)| [Java](./src/leetcode/tree/MinimumDepthOfBinaryTree.java)|Easy|
|110|[Balanced Binary Tree](https://leetcode.com/problems/balanced-binary-tree)| [Java](./src/leetcode/tree/BalancedBinaryTree.java)|Easy|
|109|[Convert Sorted List to Binary Search Tree](https://leetcode.com/problems/convert-sorted-list-to-binary-search-tree)| [Java](./src/leetcode/tree/ConvertSortedListToBinarySearchTree.java)|Medium|
|108|[Convert Sorted Array to Binary Search Tree](https://leetcode.com/problems/convert-sorted-array-to-binary-search-tree)| [Java](./src/leetcode/tree/ConvertSortedArrayToBinarySearchTree.java)|Easy|
|107|[Binary Tree Level Order Traversal II](https://leetcode.com/problems/binary-tree-level-order-traversal-ii)| [Java](./src/leetcode/tree/BinaryTreeLevelOrderTraversal.java)|Easy|
|106|[Construct Binary Tree from Inorder and Postorder Traversal](https://leetcode.com/problems/construct-binary-tree-from-inorder-and-postorder-traversal)| [Java](./src/leetcode/tree/ConstructBinaryTree.java)|Medium|
|105|[Construct Binary Tree from Preorder and Inorder Traversal](https://leetcode.com/problems/construct-binary-tree-from-preorder-and-inorder-traversal)| [Java](./src/leetcode/tree/ConstructBinaryTree.java)|Medium|
|104|[Maximum Depth of Binary Tree](https://leetcode.com/problems/maximum-depth-of-binary-tree)| [Java](./src/leetcode/tree/MaximumDepthOfBinaryTree.java)|Easy|
|103|[Binary Tree Zigzag Level Order Traversal](https://leetcode.com/problems/binary-tree-zigzag-level-order-traversal)| [Java](./src/leetcode/tree/BinaryTreeZigzagLevelOrderTraversal.java)|Medium|
|102|[Binary Tree Level Order Traversal](https://leetcode.com/problems/binary-tree-level-order-traversal/)| [Java](./src/leetcode/tree/BinaryTreeLevelOrderTraversal.java)|Medium|
|101|[Symmetric Tree](https://leetcode.com/problems/symmetric-tree/)| [Java](./src/leetcode/tree/SymmetricTree.java)|Easy|
|100|[Same Tree](https://leetcode.com/problems/same-tree/)| [Java](./src/leetcode/tree/SameTree.java)|Easy|
|99|[Recover Binary Search Tree](https://leetcode.com/problems/recover-binary-search-tree)| [Java](./src/leetcode/tree/RecoverBinarySearchTree.java)|Hard|
|98|[Validate Binary Search Tree](https://leetcode.com/problems/validate-binary-search-tree)| [Java](./src/leetcode/tree/ValidateBinarySearchTree.java)|Medium|
|97|[Interleaving String](https://leetcode.com/problems/interleaving-string/)| [Java](./src/leetcode/dp/InterleavingString.java)|Hard|
|96|[Unique Binary Search Trees](https://leetcode.com/problems/unique-binary-search-trees)| [Java](./src/leetcode/tree/UniqueBinarySearchTrees.java)|Medium|
|95|[Unique Binary Search Trees II](https://leetcode.com/problems/unique-binary-search-trees-ii)| [Java](./src/leetcode/tree/UniqueBinarySearchTrees.java)|Medium|
|94|[Binary Tree Inorder Traversal](https://leetcode.com/problems/binary-tree-inorder-traversal)| [Java](./src/leetcode/tree/BinaryTreeInorderTraversal.java)|Medium|
|93|[Restore IP Addresses](https://leetcode.com/problems/restore-ip-addresses)| [Java](./src/leetcode/backtracking/RestoreIPAddresses.java)|Medium|
|92|[Reverse Linked List II](https://leetcode.com/problems/reverse-linked-list-ii)| [Java](./src/leetcode/list/ReverseLinkedList.java)|Medium|
|91|[Decode Ways](https://leetcode.com/problems/decode-ways)| [Java](./src/leetcode/dp/DecodeWays.java)|Medium|
|90|[Subsets II](https://leetcode.com/problems/subsets-ii)| [Java](./src/leetcode/backtracking/Subsets.java)|Medium|
|89|[Gray Code](https://leetcode.com/problems/gray-code/)| [Java](./src/leetcode/backtracking/GrayCode.java)|Medium|
|88|[Merge Sorted Array](https://leetcode.com/problems/merge-sorted-array)| [Java](./src/leetcode/array/MergeSortedArray.java)|Easy|
|87|[Scramble String](https://leetcode.com/problems/scramble-string)| [Java](./src/leetcode/dp/ScrambleString.java)|Hard|
|86|[Partition List](https://leetcode.com/problems/partition-list)| [Java](./src/leetcode/list/PartitionList.java)|Medium|
|85|[Maximal Rectangle](https://leetcode.com/problems/maximal-rectangle)| [Java](./src/leetcode/stack/MaximalRectangle.java)|Hard|
|84|[Largest Rectangle in Histogram](https://leetcode.com/problems/largest-rectangle-in-histogram)| [Java](./src/leetcode/stack/LargestRectangleInHistogram.java)|Hard|
|83|[Remove Duplicates from Sorted List](https://leetcode.com/problems/remove-duplicates-from-sorted-list)| [Java](./src/leetcode/list/RemoveDuplicatesFromSortedList.java)|Easy|
|82|[Remove Duplicates from Sorted List II](https://leetcode.com/problems/remove-duplicates-from-sorted-list-ii)| [Java](./src/leetcode/list/RemoveDuplicatesFromSortedList.java)|Medium|
|81|[Search in Rotated Sorted Array II](https://leetcode.com/problems/search-in-rotated-sorted-array-ii)| [Java](./src/leetcode/bs/SearchInRotatedSortedArray.java)|Medium|
|80|[Remove Duplicates from Sorted Array II](https://leetcode.com/problems/remove-duplicates-from-sorted-array-ii/)| [Java](./src/leetcode/tp/RemoveDuplicatesFromSortedArray.java)|Medium|
|79|[Word Search](https://leetcode.com/problems/word-search/)| [Java](./src/leetcode/backtracking/WordSearch.java)|Medium|
|78|[Subsets](https://leetcode.com/problems/subsets/)| [Java](./src/leetcode/backtracking/Subsets.java)|Medium|
|77|[Combinations](https://leetcode.com/problems/combinations/)| [Java](./src/leetcode/backtracking/Combinations.java)|Medium|
|76|[Minimum Window Substring](https://leetcode.com/problems/minimum-window-substring)| [Java](./src/leetcode/tp/MinimumWindowSubstring.java)|Hard|
|75|[Sort Colors](https://leetcode.com/problems/sort-colors/)| [Java](./src/leetcode/tp/SortColors.java)|Medium|
|74|[Search a 2D Matrix](https://leetcode.com/problems/search-a-2d-matrix)| [Java](./src/leetcode/bs/SearchA2DMatrix.java)|Medium|
|73|[Set Matrix Zeroes](https://leetcode.com/problems/set-matrix-zeroes)| [Java](./src/leetcode/array/SetMatrixZeroes.java)|Medium|
|72|[Edit Distance](https://leetcode.com/problems/edit-distance/)| [Java](./src/leetcode/dp/EditDistance.java)|Hard|
|71|[Simplify Path](https://leetcode.com/problems/simplify-path/)| [Java](./src/leetcode/SimplifyPath.java)|Medium|
|70|[Climbing Stairs](https://leetcode.com/problems/climbing-stairs/)| [Java](./src/leetcode/ClimbingStairs.java)|Easy|
|69|[Sqrt(x)](https://leetcode.com/problems/sqrtx)| [Java](./src/leetcode/Sqrtx.java)|Easy|
|68|[Text Justification](https://leetcode.com/problems/text-justification)| [Java](./src/leetcode/TextJustification.java)|Hard|
|67|[Add Binary](https://leetcode.com/problems/add-binary/)| [Java](./src/leetcode/AddBinary.java)|Easy|
|66|[Plus One](https://leetcode.com/problems/plus-one/)| [Java](./src/leetcode/PlusOne.java)|Easy|
|65|[Valid Number](https://leetcode.com/problems/valid-number)| [Java](./src/leetcode/ValidNumber.java)|Hard|
|64|[Minimum Path Sum](https://leetcode.com/problems/minimum-path-sum/)| [Java](./src/leetcode/UniquePaths.java)|Medium|
|63|[Unique Paths II](https://leetcode.com/problems/unique-paths-ii/)| [Java](./src/leetcode/UniquePaths.java)|Medium|
|62|[Unique Paths](https://leetcode.com/problems/unique-paths/)| [Java](./src/leetcode/UniquePaths.java)|Medium|
|61|[Rotate List](https://leetcode.com/problems/rotate-list/)| [Java](./src/leetcode/RotateList.java)|Medium|
|60|[Permutation Sequence](https://leetcode.com/problems/permutation-sequence)| [Java](./src/leetcode/PermutationSequence.java)|Medium|
|59|[Spiral Matrix II](https://leetcode.com/problems/spiral-matrix-ii)| [Java](./src/leetcode/SpiralMatrix.java)|Medium|
|58|[Length of Last Word](https://leetcode.com/problems/length-of-last-word)| [Java](./src/leetcode/LengthOfLastWord.java)|Medium|
|57|[Insert Interval](https://leetcode.com/problems/insert-intervals)| [Java](./src/leetcode/Intervals.java)|Hard|
|56|[Merge Intervals](https://leetcode.com/problems/merge-intervals)| [Java](./src/leetcode/Intervals.java)|Medium|
|55|[Jump Game](https://leetcode.com/problems/jump-game)| [Java](./src/leetcode/JumpGame.java)|Medium|
|54|[Spiral Matrix](https://leetcode.com/problems/spiral-matrix)| [Java](./src/leetcode/SpiralMatrix.java)|Medium|
|53|[Maximum Subarray](https://leetcode.com/problems/maximum-subarray)| [Java](./src/leetcode/MaximumSubarray.java)|Easy|
|52|[N-Queens II](https://leetcode.com/problems/n-queens-ii)| [Java](./src/leetcode/NQueens.java)|Hard|
|51|[N-Queens](https://leetcode.com/problems/n-queens)| [Java](./src/leetcode/NQueens.java)|Hard|
|50|[Pow(x, n)](https://leetcode.com/problems/powx-n)| [Java](./src/leetcode/Powx.java)|Medium|
|49|[Group Anagrams](https://leetcode.com/problems/group-anagrams)| [Java](./src/leetcode/GroupAnagrams.java)|Medium|
|48|[Rotate Image](https://leetcode.com/problems/rotate-image)| [Java](./src/leetcode/RotateImage.java)|Medium|
|47|[Permutations II](https://leetcode.com/problems/permutations-ii)| [Java](./src/leetcode/Permutations.java)|Medium|
|46|[Permutations](https://leetcode.com/problems/permutations)| [Java](./src/leetcode/Permutations.java)|Medium|
|45|[Jump Game II](https://leetcode.com/problems/jump-game-ii)| [Java](./src/leetcode/JumpGame.java)|Hard|
|44|[Wildcard Matching](https://leetcode.com/problems/wildcard-matching)| [Java](./src/leetcode/dp/WildcardMatching.java)|Hard|
|43|[Multiply Strings](https://leetcode.com/problems/multiply-strings)| [Java](./src/leetcode/MultiplyStrings.java)|Medium|
|42|[Trapping Rain Water](https://leetcode.com/problems/trapping-rain-water)| [Java](./src/leetcode/TrappingRainWater.java)|Hard|
|41|[First Missing Positive](https://leetcode.com/problems/first-missing-positive)| [Java](./src/leetcode/FirstMissingPositive.java)|Hard|
|40|[Combination Sum II](https://leetcode.com/problems/combination-sum-ii)| [Java](./src/leetcode/CombinationSum.java)|Medium|
|39|[Combination Sum](https://leetcode.com/problems/combination-sum)| [Java](./src/leetcode/CombinationSum.java)|Medium|
|38|[Count and Say](https://leetcode.com/problems/count-and-say)| [Java](./src/leetcode/CountAndSay.java)|Easy|
|37|[Sudoku Solver](https://leetcode.com/problems/sudoku-solver)| [Java](./src/leetcode/SudokuSolver.java)|Hard|
|36|[Valid Sudoku](https://leetcode.com/problems/valid-sudoku)| [Java](./src/leetcode/ValidSudoku.java)|Medium|
|35|[Search Insert Position](https://leetcode.com/problems/search-insert-position)| [Java](./src/leetcode/SearchInsertPosition.java)|Easy|
|34|[Search for a Range](https://leetcode.com/problems/search-for-a-range)| [Java](./src/leetcode/SearchForARange.java)|Medium|
|33|[Search in Rotated Sorted Array](https://leetcode.com/problems/search-in-rotated-sorted-array/)| [Java](./src/leetcode/bs/SearchInRotatedSortedArray.java)|Medium|
|32|[Longest Valid Parentheses](https://leetcode.com/problems/longest-valid-parentheses/)| [Java](./src/leetcode/LongestValidParentheses.java)|Hard|
|31|[Next Permutation](https://leetcode.com/problems/next-permutation/)| [Java](./src/leetcode/NextPermutation.java)|Medium|
|30|[Substring with Concatenation of All Words](https://leetcode.com/problems/substring-with-concatenation-of-all-words/)| [Java](./src/leetcode/SubstringWithConcatenationOfAllWords.java)|Hard|
|29|[Divide Two Integers](https://leetcode.com/problems/divide-two-integers/)| [Java](./src/leetcode/DivideTwoIntegers.java)|Medium|
|28|[Implement strStr()](https://leetcode.com/problems/implement-strstr/)| [Java](./src/leetcode/ImplementStrStr.java)|Easy|
|27|[Remove Element](https://leetcode.com/problems/remove-element/)| [Java](./src/leetcode/RemoveElement.java)|Easy|
|26|[Remove Duplicates from Sorted Array](https://leetcode.com/problems/remove-duplicates-from-sorted-array/)| [Java](./src/leetcode/tp/RemoveDuplicatesFromSortedArray.java)|Easy|
|25|[Reverse Nodes in k-Group](https://leetcode.com/problems/reverse-nodes-in-k-group/)|[Java](./src/leetcode/ReverseNodesInKgroup.java)|Hard|
|24|[Swap Nodes in Pairs](https://leetcode.com/problems/swap-nodes-in-pairs/)| [Java](./src/leetcode/SwapNodesInPairs.java)|Medium|
|23|[Merge k Sorted Lists](https://leetcode.com/problems/merge-k-sorted-lists/)| [Java](./src/leetcode/MergeKSortedLists.java)|Hard|
|22|[Generate Parentheses](https://leetcode.com/problems/generate-parentheses/)| [Java](./src/leetcode/GenerateParentheses.java)|Medium|
|21|[Merge Two Sorted Lists](https://leetcode.com/problems/merge-two-sorted-lists/)| [Java](./src/leetcode/MergeTwoSortedLists.java)|Easy|
|20|[Valid Parentheses](https://leetcode.com/problems/valid-parentheses/)| [Java](./src/leetcode/ValidParentheses.java)|Easy|
|19|[Remove Nth Node From End of List](https://leetcode.com/problems/remove-nth-node-from-end-of-list/)| [Java](./src/leetcode/RemoveNthNodeFromEndOfList.java)|Medium|
|18|[4Sum](https://leetcode.com/problems/4sum/)| [Java](./src/leetcode/FourSum.java)|Medium|
|17|[Letter Combinations of a Phone Number](https://leetcode.com/problems/letter-combinations-of-a-phone-number/)| [Java](./src/leetcode/LetterCombinations.java)|Medium|
|16|[3Sum Closest](https://leetcode.com/problems/3sum-closest)| [Java](./src/leetcode/ThreeSumClosest.java)|Medium|
|15|[3Sum](https://leetcode.com/problems/3sum/)| [Java](./src/leetcode/ThreeSum.java)|Medium|
|14|[Longest Common Prefix](https://leetcode.com/problems/longest-common-prefix/)| [Java](./src/leetcode/LongestCommonPrefix.java)|Easy|
|13|[Roman to Integer](https://leetcode.com/problems/roman-to-integer/)| [Java](./src/leetcode/RomanToInt.java)|Easy|
|12|[Integer to Roman](https://leetcode.com/problems/integer-to-roman/)| [Java](./src/leetcode/IntegerToRoman.java)|Medium|
|11|[Container With Most Water](https://leetcode.com/problems/container-with-most-water/)| [Java](./src/leetcode/MaxArea.java)|Medium|
|10|[Regular Expression Matching](https://leetcode.com/problems/regular-expression-matching)| [Java](./src/leetcode/dp/RegularExpressionMatching.java)|Hard|
|9|[Palindrome Number](https://leetcode.com/problems/palindrome-number/)| [Java](./src/leetcode/IsPalindrome.java)|Easy|
|8|[String to Integer](https://leetcode.com/problems/string-to-integer-atoi/)| [Java](./src/leetcode/StringToInteger.java)|Medium|
|7|[Reverse Integer](https://leetcode.com/problems/reverse-integer/)| [Java](./src/leetcode/Reverse.java)|Easy|
|6|[ZigZag Conversion](https://leetcode.com/problems/zigzag-conversion/)| [Java](./src/leetcode/ZigZagConversion.java)|Medium|
|5|[Longest Palindromic Substring](https://leetcode.com/problems/longest-palindromic-substring/)| [Java](./src/leetcode/LongestPalindrome.java)|Medium|
|4|[Median of Two Sorted Arrays](https://leetcode.com/problems/median-of-two-sorted-arrays/)| [Java](./src/leetcode/FindMedianSortedArrays.java)|Hard|
|3|[Longest Substring Without Repeating Characters](https://leetcode.com/problems/longest-substring-without-repeating-characters/)| [Java](./src/leetcode/LengthOfLongestSubstring.java)|Medium|
|2|[Add Two Numbers](https://leetcode.com/problems/add-two-numbers/)| [Java](./src/leetcode/AddTwoNumbers.java)|Medium|
|1|[Two Sum](https://leetcode.com/problems/two-sum/)| [Java](./src/leetcode/TwoSum.java)|Medium|