Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/ejunjsh/leetcode
😄 (600/800) learn algorithms and learn c++ by the way
https://github.com/ejunjsh/leetcode
algorithm cpp learning-algorithm leetcode shell sql
Last synced: about 6 hours ago
JSON representation
😄 (600/800) learn algorithms and learn c++ by the way
- Host: GitHub
- URL: https://github.com/ejunjsh/leetcode
- Owner: ejunjsh
- Created: 2018-12-03T02:59:15.000Z (almost 6 years ago)
- Default Branch: master
- Last Pushed: 2021-08-25T07:47:56.000Z (about 3 years ago)
- Last Synced: 2023-03-05T02:28:17.522Z (over 1 year ago)
- Topics: algorithm, cpp, learning-algorithm, leetcode, shell, sql
- Language: C++
- Homepage:
- Size: 695 KB
- Stars: 4
- Watchers: 0
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# leetcode
![](https://img.shields.io/badge/language-C++-red.svg)
![](https://img.shields.io/badge/language-sql-purple.svg)
![](https://img.shields.io/badge/language-shell-green.svg)
![](https://tokei.rs/b1/github/ejunjsh/leetcode?category=code)learn algorithms and learn c++ by the way
__💰 means these problems are available for subscription user__
## algorithms
| # | Title | Solution | Difficulty |
|---| ----- | -------- | ---------- |
|1|[Two Sum](https://leetcode.com/problems/two-sum/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0001/twoSum.cpp)|Easy|
|2|[Add Two Numbers](https://leetcode.com/problems/add-two-numbers/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0002/addTwoNumbers.cpp)|Medium|
|3|[Longest Substring Without Repeating Characters](https://leetcode.com/problems/longest-substring-without-repeating-characters/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0003/lengthOfLongestSubstring.cpp)|Medium|
|4|[Median of Two Sorted Arrays](https://leetcode.com/problems/median-of-two-sorted-arrays/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0004/findMedianSortedArrays.cpp)|Hard|
|5|[Longest Palindromic Substring](https://leetcode.com/problems/longest-palindromic-substring/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0005/longestPalindrome.cpp)|Medium|
|6|[ZigZag Conversion](https://leetcode.com/problems/zigzag-conversion/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0006/zigZagConversion.cpp)|Medium|
|7|[Reverse Integer](https://leetcode.com/problems/reverse-integer/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0007/reverseInteger.cpp)|Easy|
|8|[String to Integer (atoi)](https://leetcode.com/problems/string-to-integer-atoi/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0008/myAtoi.cpp)|Medium|
|9|[Palindrome Number](https://leetcode.com/problems/palindrome-number/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0009/isPalindrome.cpp)|Easy|
|10|[Regular Expression Matching](https://leetcode.com/problems/regular-expression-matching/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0010/regularExpressionMatching-recursion.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0010/regularExpressionMatching-dp.cpp)|Hard|
|11|[Container With Most Water](https://leetcode.com/problems/container-with-most-water/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0011/containerWithMostWater.cpp)|Medium|
|12|[Integer to Roman](https://leetcode.com/problems/integer-to-roman/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0012/integerToRoman.cpp)|Medium|
|13|[Roman to Integer](https://leetcode.com/problems/roman-to-integer/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0013/romanToInteger.cpp)|Easy|
|14|[Longest Common Prefix](https://leetcode.com/problems/longest-common-prefix/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0014/longestCommonPrefix.cpp)|Easy|
|15|[3Sum](https://leetcode.com/problems/3sum/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0015/threeSum.cpp)|Medium|
|16|[3Sum Closest](https://leetcode.com/problems/3sum-closest/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0016/threeSumClosest.cpp)|Medium|
|17|[Letter Combinations of a Phone Number](https://leetcode.com/problems/letter-combinations-of-a-phone-number/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0017/letterCombinations.cpp)|Medium|
|18|[4Sum](https://leetcode.com/problems/4sum/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0018/fourSum.cpp)|Medium|
|19|[Remove Nth Node From End of List](https://leetcode.com/problems/remove-nth-node-from-end-of-list/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0019/removeNthFromEnd.cpp)|Medium|
|20|[Valid Parentheses](https://leetcode.com/problems/valid-parentheses/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0020/isValidParentheses.cpp)|Easy|
|21|[Merge Two Sorted Lists](https://leetcode.com/problems/merge-two-sorted-lists/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0021/mergeTwoLists.cpp)|Easy|
|22|[Generate Parentheses](https://leetcode.com/problems/generate-parentheses/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0022/generateParenthesis.cpp)|Medium|
|23|[Merge k Sorted Lists](https://leetcode.com/problems/merge-k-sorted-lists/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0023/mergeKLists.cpp)|Hard|
|24|[Swap Nodes in Pairs](https://leetcode.com/problems/swap-nodes-in-pairs/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0024/swapPairs.cpp)|Medium|
|25|[Reverse Nodes in k-Group](https://leetcode.com/problems/reverse-nodes-in-k-group/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0025/reverseKGroup.cpp)|Hard|
|26|[Remove Duplicates from Sorted Array](https://leetcode.com/problems/remove-duplicates-from-sorted-array/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0026/removeDuplicates.cpp)|Easy|
|27|[Remove Element](https://leetcode.com/problems/remove-element/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0027/removeElement.cpp)|Easy|
|28|[Implement strStr()](https://leetcode.com/problems/implement-strstr/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0028/strStr.cpp)|Easy|
|29|[Divide Two Integers](https://leetcode.com/problems/divide-two-integers/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0029/divide.cpp)|Medium|
|30|[Substring with Concatenation of All Words](https://leetcode.com/problems/substring-with-concatenation-of-all-words/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0030/findSubstring.cpp)|Hard|
|31|[Next Permutation](https://leetcode.com/problems/next-permutation/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0031/nextPermutation.cpp)|Medium|
|32|[Longest Valid Parentheses](https://leetcode.com/problems/longest-valid-parentheses/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0032/longestValidParentheses.cpp)|Hard|
|33|[Search in Rotated Sorted Array](https://leetcode.com/problems/search-in-rotated-sorted-array/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0033/search-in-rotated-sorted-array.cpp)|Medium|
|34|[Find First and Last Position of Element in Sorted Array](https://leetcode.com/problems/find-first-and-last-position-of-element-in-sorted-array/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0034/find-first-and-last-position-of-element-in-sorted-array.cpp)|Medium|
|35|[Search Insert Position](https://leetcode.com/problems/search-insert-position/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0035/searchInsert.cpp)|Easy|
|36|[Valid Sudoku](https://leetcode.com/problems/valid-sudoku/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0036/isValidSudoku.cpp)|Medium|
|38|[Count and Say](https://leetcode.com/problems/count-and-say/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0038/countAndSay.cpp)|Easy|
|39|[Combination Sum](https://leetcode.com/problems/combination-sum/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0039/combinationSum.cpp)|Medium|
|40|[Combination Sum II](https://leetcode.com/problems/combination-sum-ii/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0040/combinationSum2.cpp)|Medium|
|41|[First Missing Positive](https://leetcode.com/problems/first-missing-positive/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0041/firstMissingPositive.cpp)|Hard|
|42|[Trapping Rain Water](https://leetcode.com/problems/trapping-rain-water/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0042/trap.cpp)|Hard|
|43|[Multiply Strings](https://leetcode.com/problems/multiply-strings/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0043/multiply.cpp)|Medium|
|44|[Wildcard Matching](https://leetcode.com/problems/wildcard-matching/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0044/isMatch.cpp)|Hard|
|45|[Jump Game II](https://leetcode.com/problems/jump-game-ii/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0045/jump.cpp)|Hard|
|46|[Permutations](https://leetcode.com/problems/permutations/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0046/permute.cpp)|Medium|
|47|[Permutations II](https://leetcode.com/problems/permutations-ii/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0047/permuteUnique.cpp)|Medium|
|48|[Rotate Image](https://leetcode.com/problems/rotate-image/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0048/rotate.cpp)|Medium|
|49|[Group Anagrams](https://leetcode.com/problems/group-anagrams/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0049/groupAnagrams.cpp)|Medium|
|50|[Pow(x, n)](https://leetcode.com/problems/powx-n/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0050/myPow.cpp)|Medium|
|51|[N-Queens](https://leetcode.com/problems/n-queens/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0051/solveNQueens.cpp)|Hard|
|52|[N-Queens II](https://leetcode.com/problems/n-queens-ii/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0052/totalNQueens.cpp)|Hard|
|53|[Maximum Subarray](https://leetcode.com/problems/maximum-subarray/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0053/maxSubArray.cpp)|Easy|
|54|[Spiral Matrix](https://leetcode.com/problems/spiral-matrix/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0054/spiralOrder.cpp)|Medium|
|55|[Jump Game](https://leetcode.com/problems/jump-game/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0055/canJump.cpp)|Medium|
|56|[Merge Intervals](https://leetcode.com/problems/merge-intervals/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0056/mergeInterval.cpp)|Medium|
|57|[Insert Interval](https://leetcode.com/problems/insert-interval/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0057/mergeInsert.cpp)|Hard|
|58|[Length of Last Word](https://leetcode.com/problems/length-of-last-word/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0058/lengthOfLastWord.cpp)|Easy|
|59|[Spiral Matrix II](https://leetcode.com/problems/spiral-matrix-ii/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0059/generateMatrix.cpp)|Medium|
|60|[Permutation Sequence](https://leetcode.com/problems/permutation-sequence/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0060/getPermutation.cpp)|Medium|
|61|[Rotate List](https://leetcode.com/problems/rotate-list/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0061/rotateRight.cpp)|Medium|
|62|[Unique Paths](https://leetcode.com/problems/unique-paths/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0062/uniquePaths-unoptimized.cpp)[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0062/uniquePaths.cpp)|Medium|
|63|[Unique Paths II](https://leetcode.com/problems/unique-paths-ii/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0063/uniquePathsWithObstacles.cpp)|Medium|
|64|[Minimum Path Sum](https://leetcode.com/problems/minimum-path-sum/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0064/minPathSum-unoptimized.cpp)[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0064/minPathSum.cpp)|Medium|
|65|[Valid Number](https://leetcode.com/problems/valid-number/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0065/validNumber.cpp)|Hard|
|66|[Plus One](https://leetcode.com/problems/plus-one/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0066/plusOne.cpp)|Easy|
|67|[Add Binary](https://leetcode.com/problems/add-binary/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0067/addBinary.cpp)|Easy|
|68|[Text Justification](https://leetcode.com/problems/text-justification/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0068/fullJustify.cpp)|Hard|
|69|[Sqrt(x)](https://leetcode.com/problems/sqrtx/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0069/mySqrt.cpp)|Easy|
|70|[Climbing Stairs](https://leetcode.com/problems/climbing-stairs/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0070/climbStairs-recursion.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0070/climbStairs-memo.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0070/climbStairs-dp.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0070/climbStairs-fibonacci.cpp)|Easy|
|71|[Simplify Path](https://leetcode.com/problems/simplify-path/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0071/simplifyPath.cpp)|Medium|
|72|[Edit Distance](https://leetcode.com/problems/edit-distance/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0072/minDistance.cpp)|Hard|
|73|[Set Matrix Zeroes](https://leetcode.com/problems/set-matrix-zeroes/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0073/setZeroes.cpp)|Medium|
|74|[Search a 2D Matrix](https://leetcode.com/problems/search-a-2d-matrix/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0074/searchMatrix.cpp)|Medium|
|75|[Sort Colors](https://leetcode.com/problems/sort-colors/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0075/sortColors.cpp)|Medium|
|76|[Minimum Window Substring](https://leetcode.com/problems/minimum-window-substring/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0076/minWindow.cpp)|Hard|
|77|[Combinations](https://leetcode.com/problems/combinations/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0077/combinations.cpp)|Medium|
|78|[Subsets](https://leetcode.com/problems/subsets/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0078/subsets-backtracking.cpp)[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0078/subsets-iterative.cpp)|Medium|
|79|[Word Search](https://leetcode.com/problems/word-search/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0079/wordSearch.cpp)|Medium|
|80|[Remove Duplicates from Sorted Array II](https://leetcode.com/problems/remove-duplicates-from-sorted-array-ii/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0080/removeDuplicates.cpp)|Medium|
|81|[Search in Rotated Sorted Array II](https://leetcode.com/problems/search-in-rotated-sorted-array-ii/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0081/search.cpp)|Medium|
|82|[Remove Duplicates from Sorted List II](https://leetcode.com/problems/remove-duplicates-from-sorted-list-ii/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0082/deleteDuplicates.cpp)|Medium|
|83|[Remove Duplicates from Sorted List](https://leetcode.com/problems/remove-duplicates-from-sorted-list/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0083/deleteDuplicates.cpp)|Easy|
|84|[Largest Rectangle in Histogram](https://leetcode.com/problems/largest-rectangle-in-histogram/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0084/largestRectangleArea.cpp)|Hard|
|85|[Maximal Rectangle](https://leetcode.com/problems/maximal-rectangle/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0085/maximalRectangle.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0085/maximalRectangle-dp.cpp)|Hard|
|86|[Partition List](https://leetcode.com/problems/partition-list/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0086/partitionList.cpp)|Medium|
|87|[Scramble String](https://leetcode.com/problems/scramble-string/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0087/scrambleString.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0087/scrambleString-dp.cpp)|Hard|
|88|[Merge Sorted Array](https://leetcode.com/problems/merge-sorted-array/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0088/mergeSortedArray.cpp)|Easy|
|89|[Gray Code](https://leetcode.com/problems/gray-code/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0089/grayCode.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0089/grayCode-backtracking.cpp)|Medium|
|90|[Subsets II](https://leetcode.com/problems/subsets-ii/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0090/subsetsWithDup.cpp)|Medium|
|91|[Decode Ways](https://leetcode.com/problems/decode-ways/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0091/numDecodings-recursion.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0091/numDecodings-memoization.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0091/numDecodings-dp.cpp)|Medium|
|92|[Reverse Linked List II](https://leetcode.com/problems/reverse-linked-list-ii/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0092/reverseBetween.cpp)|Medium|
|93|[Restore IP Addresses](https://leetcode.com/problems/restore-ip-addresses/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0093/restoreIpAddresses.cpp)|Medium|
|94|[Binary Tree Inorder Traversal](https://leetcode.com/problems/binary-tree-inorder-traversal/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0094/inorderTraversal.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0094/inorderTraversal-stack.cpp)|Medium|
|95|[Unique Binary Search Trees II](https://leetcode.com/problems/unique-binary-search-trees-ii/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0095/generateTrees.cpp)|Medium|
|96|[Unique Binary Search Trees](https://leetcode.com/problems/unique-binary-search-trees/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0096/numTrees.cpp)|Medium|
|97|[Interleaving String](https://leetcode.com/problems/interleaving-string/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0097/isInterleave-recursion.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0097/isInterleave-memo.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0097/isInterleave-dp.cpp)|Hard|
|98|[Validate Binary Search Tree](https://leetcode.com/problems/validate-binary-search-tree/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0098/isValidBST.cpp)|Medium|
|99|[Recover Binary Search Tree](https://leetcode.com/problems/recover-binary-search-tree/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0099/recoverTree.cpp)|Hard|
|100|[Same Tree](https://leetcode.com/problems/same-tree/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0100/isSameTree.cpp)|Easy|
|101|[Symmetric Tree](https://leetcode.com/problems/symmetric-tree/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0101/isSymmetric.cpp)|Easy|
|102|[Binary Tree Level Order Traversal](https://leetcode.com/problems/binary-tree-level-order-traversal/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0102/levelOrder.cpp)|Medium|
|103|[Binary Tree Zigzag Level Order Traversal](https://leetcode.com/problems/binary-tree-zigzag-level-order-traversal/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0103/zigzagLevelOrder.cpp)|Medium|
|104|[Maximum Depth of Binary Tree](https://leetcode.com/problems/maximum-depth-of-binary-tree/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0104/maxDepth.cpp)|Easy|
|105|[Construct Binary Tree from Preorder and Inorder Traversal](https://leetcode.com/problems/construct-binary-tree-from-preorder-and-inorder-traversal/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0105/buildTree.cpp)|Medium|
|106|[Construct Binary Tree from Inorder and Postorder Traversal](https://leetcode.com/problems/construct-binary-tree-from-inorder-and-postorder-traversal/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0106/buildTree.cpp)|Medium|
|107|[Binary Tree Level Order Traversal II](https://leetcode.com/problems/binary-tree-level-order-traversal-ii/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0107/levelOrderBottom.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0107/levelOrderBottom.1.cpp)|Easy|
|108|[Convert Sorted Array to Binary Search Tree](https://leetcode.com/problems/convert-sorted-array-to-binary-search-tree/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0108/sortedArrayToBST.cpp)|Easy|
|109|[Convert Sorted List to Binary Search Tree](https://leetcode.com/problems/convert-sorted-list-to-binary-search-tree/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0109/sortedListToBST.cpp)|Medium|
|110|[Balanced Binary Tree](https://leetcode.com/problems/balanced-binary-tree/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0110/isBalanced.cpp)|Easy|
|111|[Minimum Depth of Binary Tree](https://leetcode.com/problems/minimum-depth-of-binary-tree/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0111/minDepth.cpp)|Easy|
|112|[Path Sum](https://leetcode.com/problems/path-sum/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0112/hasPathSum.cpp)|Easy|
|113|[Path Sum II](https://leetcode.com/problems/path-sum-ii/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0113/pathSum-recursion.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0113/pathSum-backtracking.cpp)|Medium|
|114|[Flatten Binary Tree to Linked List](https://leetcode.com/problems/flatten-binary-tree-to-linked-list/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0114/flatten.cpp)|Medium|
|115|[Distinct Subsequences](https://leetcode.com/problems/distinct-subsequences/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0115/numDistinct.cpp)|Hard|
|116|[Populating Next Right Pointers in Each Node](https://leetcode.com/problems/populating-next-right-pointers-in-each-node/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0116/connect.cpp)|Medium|
|117|[Populating Next Right Pointers in Each Node II](https://leetcode.com/problems/populating-next-right-pointers-in-each-node-ii/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0117/connect2.cpp)|Medium|
|118|[Pascal's Triangle](https://leetcode.com/problems/pascals-triangle/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0118/pascalTriangle.cpp)|Easy|
|119|[Pascal's Triangle II](https://leetcode.com/problems/pascals-triangle-ii/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0119/pascalTriangle2.cpp)|Easy|
|120|[Triangle](https://leetcode.com/problems/triangle/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0120/minimumTotal.cpp)|Medium|
|121|[Best Time to Buy and Sell Stock](https://leetcode.com/problems/best-time-to-buy-and-sell-stock/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0121/maxProfit.cpp)|Easy|
|122|[Best Time to Buy and Sell Stock II](https://leetcode.com/problems/best-time-to-buy-and-sell-stock-ii/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0122/maxProfit2.cpp)|Easy|
|123|[Best Time to Buy and Sell Stock III](https://leetcode.com/problems/best-time-to-buy-and-sell-stock-iii/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0123/maxProfit3.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0123/maxProfit3-dp.cpp)|Hard|
|124|[Binary Tree Maximum Path Sum](https://leetcode.com/problems/binary-tree-maximum-path-sum/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0124/maxPathSum.cpp)|Hard|
|125|[Valid Palindrome](https://leetcode.com/problems/valid-palindrome/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0125/isPalindrome.cpp)|Easy|
|127|[Word Ladder](https://leetcode.com/problems/word-ladder/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0127/ladderLength.cpp)|Medium|
|128|[Longest Consecutive Sequence](https://leetcode.com/problems/longest-consecutive-sequence/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0128/longestConsecutive.cpp)|Hard|
|129|[Sum Root to Leaf Numbers](https://leetcode.com/problems/sum-root-to-leaf-numbers/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0129/sumNumbers.cpp)|Medium|
|130|[Surrounded Regions](https://leetcode.com/problems/surrounded-regions/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0130/surroundedRegions.cpp)|Medium|
|131|[Palindrome Partitioning](https://leetcode.com/problems/palindrome-partitioning/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0131/partition.cpp)|Medium|
|132|[Palindrome Partitioning II](https://leetcode.com/problems/palindrome-partitioning-ii/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0132/minCut.cpp)|Hard|
|133|[Clone Graph](https://leetcode.com/problems/clone-graph/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0133/cloneGraph-bfs.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0133/cloneGraph-dfs.cpp)|Medium|
|134|[Gas Station](https://leetcode.com/problems/gas-station/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0134/canCompleteCircuit.cpp)|Medium|
|135|[Candy](https://leetcode.com/problems/candy/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0135/candy.cpp)|Hard|
|136|[Single Number](https://leetcode.com/problems/single-number/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0136/singleNumber.cpp)|Easy|
|137|[Single Number II](https://leetcode.com/problems/single-number-ii/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0137/singleNumber2.cpp)|Easy|
|138|[Copy List with Random Pointer](https://leetcode.com/problems/copy-list-with-random-pointer/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0138/copyRandomList.cpp)|Medium|
|139|[Word Break](https://leetcode.com/problems/word-break/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0139/wordBreak.cpp)|Medium|
|140|[Word Break II](https://leetcode.com/problems/word-break-ii/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0140/wordBreak2.cpp)|Hard|
|141|[Linked List Cycle](https://leetcode.com/problems/linked-list-cycle/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0141/hasCycle.cpp)|Easy|
|142|[Linked List Cycle II](https://leetcode.com/problems/linked-list-cycle-ii/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0142/detectCycle.cpp)|Medium|
|143|[Reorder List](https://leetcode.com/problems/reorder-list/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0143/reorderList.cpp)|Medium|
|144|[Binary Tree Preorder Traversal](https://leetcode.com/problems/binary-tree-preorder-traversal/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0144/preorderTraversal.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0144/preorderTraversal-stack.cpp)|Medium|
|145|[Binary Tree Postorder Traversal](https://leetcode.com/problems/binary-tree-postorder-traversal/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0145/postorderTraversal.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0145/postorderTraversal-stack.cpp)|Hard|
|146|[LRU Cache](https://leetcode.com/problems/lru-cache/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0146/LRUCache.cpp)|Hard|
|147|[Insertion Sort List](https://leetcode.com/problems/insertion-sort-list/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0147/insertionSortList.cpp)|Medium|
|148|[Sort List](https://leetcode.com/problems/sort-list/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0148/sortList.cpp)|Medium|
|149|[Max Points on a Line](https://leetcode.com/problems/max-points-on-a-line/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0149/maxPoints.cpp)|Hard|
|150|[Evaluate Reverse Polish Notation](https://leetcode.com/problems/evaluate-reverse-polish-notation/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0150/evalRPN.cpp)|Medium|
|151|[Reverse Words in a String](https://leetcode.com/problems/reverse-words-in-a-string/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0151/reverseWords.cpp)|Medium|
|152|[Maximum Product Subarray](https://leetcode.com/problems/maximum-product-subarray/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0152/maxProduct.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0152/maxProduct2.cpp)|Medium|
|153|[Find Minimum in Rotated Sorted Array](https://leetcode.com/problems/find-minimum-in-rotated-sorted-array/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0153/findMin.cpp)|Medium|
|154|[Find Minimum in Rotated Sorted Array II](https://leetcode.com/problems/find-minimum-in-rotated-sorted-array-ii/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0154/findMin.cpp)|Hard|
|155|[Min Stack](https://leetcode.com/problems/min-stack/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0155/minStack.cpp)|Easy|
|156|[💰 Binary Tree Upside Down](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0156/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0156/upsideDownBinaryTree.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0156/upsideDownBinaryTree-iterative.cpp)|Medium|
|157|[💰 Read N Characters Given Read4](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0157/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0157/read.cpp)|Easy|
|158|[💰 Read N Characters Given Read4 II - Call multiple times](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0158/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0158/read.cpp)|Hard|
|159|[💰 Longest Substring with At Most Two Distinct Characters](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0159/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0159/lengthOfLongestSubstringTwoDistinct.cpp)|Hard|
|160|[Intersection of Two Linked Lists](https://leetcode.com/problems/intersection-of-two-linked-lists/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0160/getIntersectionNode.cpp)|Easy|
|161|[💰 One Edit Distance](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0161/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0161/isOneEditDistance.cpp)|Medium|
|162|[Find Peak Element](https://leetcode.com/problems/find-peak-element/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0162/findPeakElement.cpp)|Medium|
|163|[💰 Missing Ranges](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0163/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0163/findMissingRanges.cpp)|Medium|
|164|[Maximum Gap](https://leetcode.com/problems/maximum-gap/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0164/maximumGap.cpp)|Hard|
|165|[Compare Version Numbers](https://leetcode.com/problems/compare-version-numbers/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0165/compareVersion.cpp)|Medium|
|166|[Fraction to Recurring Decimal](https://leetcode.com/problems/fraction-to-recurring-decimal/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0166/fractionToDecimal.cpp)|Medium|
|167|[Two Sum II - Input array is sorted](https://leetcode.com/problems/two-sum-ii-input-array-is-sorted/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0167/twoSum.cpp)|Easy|
|168|[Excel Sheet Column Title](https://leetcode.com/problems/excel-sheet-column-title/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0168/convertToTitle-iterative.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0168/convertToTitle-stack.cpp)|Easy|
|169|[Majority Element](https://leetcode.com/problems/majority-element/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0169/majorityElement-bit.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0169/majorityElement-dac.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0169/majorityElement-map.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0169/majorityElement-mv.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0169/majorityElement-random.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0169/majorityElement-sort.cpp)|Easy|
|170|[💰 Two Sum III - Data structure design](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0170/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0170/twoSum.cpp)|Easy|
|171|[Excel Sheet Column Number](https://leetcode.com/problems/excel-sheet-column-number/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0171/titleToNumber.cpp)|Easy|
|172|[Factorial Trailing Zeroes](https://leetcode.com/problems/factorial-trailing-zeroes/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0172/trailingZeroes.cpp)|Easy|
|173|[Binary Search Tree Iterator](https://leetcode.com/problems/binary-search-tree-iterator/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0173/BSTIterator.cpp)|Medium|
|174|[Dungeon Game](https://leetcode.com/problems/dungeon-game/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0174/calculateMinimumHP.cpp)|Hard|
|179|[Largest Number](https://leetcode.com/problems/largest-number/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0179/largestNumber.cpp)|Medium|
|186|[💰 Reverse Words in a String II](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0186/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0186/reverseWords.cpp)|Medium|
|187|[Repeated DNA Sequences](https://leetcode.com/problems/repeated-dna-sequences/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0187/findRepeatedDnaSequences.cpp)|Medium|
|188|[Best Time to Buy and Sell Stock IV](https://leetcode.com/problems/best-time-to-buy-and-sell-stock-iv/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0188/maxProfit4.cpp)|Hard|
|189|[Rotate Array](https://leetcode.com/problems/rotate-array/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0189/rotate1.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0189/rotate2.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0189/rotate3.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0189/rotate4.cpp)|Easy|
|190|[Reverse Bits](https://leetcode.com/problems/reverse-bits/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0190/reverseBits.cpp)|Easy|
|191|[Number of 1 Bits](https://leetcode.com/problems/number-of-1-bits/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0191/hammingWeight.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0191/hammingWeight-trick.cpp)|Easy|
|198|[House Robber](https://leetcode.com/problems/house-robber/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0198/rob-recursion.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0198/rob-memo.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0198/rob-memo2.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0198/rob-memo3.cpp) |Easy|
|199|[Binary Tree Right Side View](https://leetcode.com/problems/binary-tree-right-side-view/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0199/rightSideView.cpp)|Medium|
|200|[Number of Islands](https://leetcode.com/problems/number-of-islands/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0200/numIslands.cpp)|Medium|
|201|[Bitwise AND of Numbers Range](https://leetcode.com/problems/bitwise-and-of-numbers-range/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0201/rangeBitwiseAnd.cpp)|Medium|
|202|[Happy Number](https://leetcode.com/problems/happy-number/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0202/isHappy.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0202/isHappy-set.cpp)|Easy|
|203|[Remove Linked List Elements](https://leetcode.com/problems/remove-linked-list-elements/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0203/removeElements.cpp)|Easy|
|204|[Count Primes](https://leetcode.com/problems/count-primes/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0204/countPrimes.cpp)|Easy|
|205|[Isomorphic Strings](https://leetcode.com/problems/isomorphic-strings/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0205/isIsomorphic.cpp)|Easy|
|206|[Reverse Linked List](https://leetcode.com/problems/reverse-linked-list/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0206/reverseList-iterative.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0206/reverseList-recursion.cpp)|Easy|
|207|[Course Schedule](https://leetcode.com/problems/course-schedule/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0207/canFinish-bfs.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0207/canFinish-dfs.cpp)|Medium|
|208|[Implement Trie (Prefix Tree)](https://leetcode.com/problems/implement-trie-prefix-tree/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0208/trie.cpp)|Medium|
|209|[Minimum Size Subarray Sum](https://leetcode.com/problems/minimum-size-subarray-sum/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0209/minSubArrayLen-bf.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0209/minSubArrayLen-bf1.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0209/minSubArrayLen-bs.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0209/minSubArrayLen-tp.cpp)|Medium|
|210|[Course Schedule II](https://leetcode.com/problems/course-schedule-ii/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0210/findOrder-dfs.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0210/findOrder-indegree.cpp)|Medium|
|211|[Add and Search Word - Data structure design](https://leetcode.com/problems/add-and-search-word-data-structure-design/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0211/wordDict.cpp)|Medium|
|212|[Word Search II](https://leetcode.com/problems/word-search-ii/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0212/findWords.cpp)|Hard|
|213|[House Robber II](https://leetcode.com/problems/house-robber-ii/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0213/rob.cpp)|Medium|
|214|[Shortest Palindrome](https://leetcode.com/problems/shortest-palindrome/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0214/shortestPalindrome.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0214/shortestPalindrome-tp.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0214/shortestPalindrome-kmp.cpp)|Hard|
|215|[Kth Largest Element in an Array](https://leetcode.com/problems/kth-largest-element-in-an-array/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0215/findKthLargest.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0215/findKthLargest-pq.cpp)|Medium|
|216|[Combination Sum III](https://leetcode.com/problems/combination-sum-iii/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0216/combinationSum3.cpp)|Medium|
|217|[Contains Duplicate](https://leetcode.com/problems/contains-duplicate/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0217/containsDuplicate.cpp)|Easy|
|218|[The Skyline Problem](https://leetcode.com/problems/the-skyline-problem/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0218/getSkyline.cpp)|Hard|
|219|[Contains Duplicate II](https://leetcode.com/problems/contains-duplicate-ii/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0219/containsNearbyDuplicate.cpp)|Easy|
|220|[Contains Duplicate III](https://leetcode.com/problems/contains-duplicate-iii/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0220/containsNearbyAlmostDuplicate.cpp)|Medium|
|221|[Maximal Square](https://leetcode.com/problems/maximal-square/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0221/maximalSquare.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0221/maximalSquare-o.cpp)|Medium|
|222|[Count Complete Tree Nodes](https://leetcode.com/problems/count-complete-tree-nodes/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0222/countNodes.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0222/countNodes-1.cpp)|Medium|
|223|[Rectangle Area](https://leetcode.com/problems/rectangle-area/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0223/computeArea.cpp)|Medium|
|224|[Basic Calculator](https://leetcode.com/problems/basic-calculator/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0224/calculate.cpp)|Hard|
|225|[Implement Stack using Queues](https://leetcode.com/problems/implement-stack-using-queues/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0225/MyStack.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0225/MyStack-1.cpp)|Easy|
|226|[Invert Binary Tree](https://leetcode.com/problems/invert-binary-tree/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0226/invertTree-recursion.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0226/invertTree-recursion-1.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0226/invertTree-iterative.cpp)|Easy|
|227|[Basic Calculator II](https://leetcode.com/problems/basic-calculator-ii/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0227/calculate.cpp)|Medium|
|228|[Summary Ranges](https://leetcode.com/problems/summary-ranges/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0228/summaryRanges.cpp)|Medium|
|229|[Majority Element II](https://leetcode.com/problems/majority-element-ii/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0229/majorityElement.cpp)|Medium|
|230|[Kth Smallest Element in a BST](https://leetcode.com/problems/kth-smallest-element-in-a-bst/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0230/kthSmallest.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0230/kthSmallest-stack.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0230/kthSmallest-count.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0230/kthSmallest-followup.cpp)|Medium|
|231|[Power of Two](https://leetcode.com/problems/power-of-two/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0231/isPowerOfTwo.cpp)|Easy|
|232|[Implement Queue using Stacks](https://leetcode.com/problems/implement-queue-using-stacks/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0232/MyQueue.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0232/MyQueue.1.cpp)|Easy|
|233|[Number of Digit One](https://leetcode.com/problems/number-of-digit-one/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0233/countDigitOne.cpp)|Hard|
|234|[Palindrome Linked List](https://leetcode.com/problems/palindrome-linked-list/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0234/isPalindrome.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0234/isPalindrome-followup.cpp)|Easy|
|235|[Lowest Common Ancestor of a Binary Search Tree](https://leetcode.com/problems/lowest-common-ancestor-of-a-binary-search-tree/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0235/lowestCommonAncestor.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0235/lowestCommonAncestor-iterative.cpp)|Easy|
|236|[Lowest Common Ancestor of a Binary Tree](https://leetcode.com/problems/lowest-common-ancestor-of-a-binary-tree/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0236/lowestCommonAncestor.cpp)|Medium|
|237|[Delete Node in a Linked List](https://leetcode.com/problems/delete-node-in-a-linked-list/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0237/deleteNode.cpp)|Easy|
|238|[Product of Array Except Self](https://leetcode.com/problems/product-of-array-except-self/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0238/productExceptSelf.cpp)|Medium|
|239|[Sliding Window Maximum](https://leetcode.com/problems/sliding-window-maximum/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0239/maxSlidingWindow.cpp)|Hard|
|240|[Search a 2D Matrix II](https://leetcode.com/problems/search-a-2d-matrix-ii/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0240/searchMatrix.cpp)|Medium|
|241|[Different Ways to Add Parentheses](https://leetcode.com/problems/different-ways-to-add-parentheses/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0241/diffWaysToCompute.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0241/diffWaysToCompute-dp.cpp)|Medium|
|242|[Valid Anagram](https://leetcode.com/problems/valid-anagram/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0242/isAnagram.cpp)|Easy|
|243|[💰 Shortest Word Distance](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0243/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0243/shortestDistance.cpp)|Easy|
|244|[💰 Shortest Word Distance II](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0244/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0244/WordDistance.cpp)|Medium|
|245|[💰 Shortest Word Distance III](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0245/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0245/shortestWordDistance.cpp)|Medium|
|246|[💰 Strobogrammatic Number](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0246/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0246/isStrobogrammatic.cpp)|Easy|
|247|[💰 Strobogrammatic Number II](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0247/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0247/findStrobogrammatic.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0247/findStrobogrammatic-iterative.cpp)|Medium|
|248|[💰 Strobogrammatic Number III](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0248/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0248/strobogrammaticInRange.cpp)|Hard|
|249|[💰 Group Shifted Strings](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0249/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0249/groupStrings.cpp)|Medium|
|250|[💰 Count Univalue Subtrees](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0250/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0250/countUnivalSubtrees.cpp)|Medium|
|251|[💰 Flatten 2D Vector](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0251/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0251/Vector2D.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0251/Vector2D-iterator.cpp)|Medium|
|252|[💰 Meeting Rooms](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0252/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0252/canAttendMeetings.cpp)|Easy|
|253|[💰 Meeting Rooms II](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0253/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0253/minMeetingRooms.cpp)|Medium|
|254|[💰 Factor Combinations](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0254/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0254/getFactors.cpp)|Medium|
|255|[💰 Verify Preorder Sequence in Binary Search Tree](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0255/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0255/verifyPreorder.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0255/verifyPreorder-followup.cpp)|Medium|
|256|[💰 Paint House](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0256/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0256/minCost.cpp)|Easy|
|257|[Binary Tree Paths](https://leetcode.com/problems/binary-tree-paths/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0257/binaryTreePaths.cpp)|Easy|
|258|[Add Digits](https://leetcode.com/problems/add-digits/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0258/addDigits.cpp)|Easy|
|259|[💰 3Sum Smaller](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0259/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0259/threeSumSmaller.cpp)|Medium|
|260|[Single Number III](https://leetcode.com/problems/single-number-iii/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0260/singleNumber.cpp)|Medium|
|261|[💰 Graph Valid Tree](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0261/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0261/validTree-uf.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0261/validTree-dfs.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0261/validTree-bfs.cpp)|Medium|
|263|[Ugly Number](https://leetcode.com/problems/ugly-number/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0263/isUgly.cpp)|Easy|
|264|[Ugly Number II](https://leetcode.com/problems/ugly-number-ii/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0264/nthUglyNumber.cpp)|Medium|
|265|[💰 Paint House II](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0265/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0265/minCostII.cpp)|Hard|
|266|[💰 Palindrome Permutation](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0266/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0266/canPermutePalindrome.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0266/canPermutePalindrome-1.cpp)|Easy|
|267|[💰 Palindrome Permutation II](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0267/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0267/generatePalindromes.cpp)|Medium|
|268|[Missing Number](https://leetcode.com/problems/missing-number/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0268/missingNumber-bit.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0268/missingNumber-gauss.cpp)|Easy|
|269|[💰 Alien Dictionary](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0269/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0269/alienOrder-bfs.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0269/alienOrder-dfs.cpp)|Hard|
|270|[💰 Closest Binary Search Tree Value](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0270/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0270/closestValue.cpp)|Easy|
|271|[💰 Encode and Decode Strings](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0271/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0271/Codec.cpp)|Medium|
|272|[💰 Closest Binary Search Tree Value II](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0272/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0272/closestKValues-pq.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0272/closestKValues-inorder.cpp)|Hard|
|273|[Integer to English Words](https://leetcode.com/problems/integer-to-english-words/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0273/numberToWords.cpp)|Hard|
|274|[H-Index](https://leetcode.com/problems/h-index/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0274/hIndex.cpp)|Medium|
|275|[H-Index II](https://leetcode.com/problems/h-index-ii/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0275/hIndex.cpp)|Medium|
|276|[💰 Paint Fence](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0276/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0276/numWays.cpp)|Easy|
|277|[💰 Find the Celebrity](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0277/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0277/findCelebrity.cpp)|Medium|
|278|[First Bad Version](https://leetcode.com/problems/first-bad-version/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0278/firstBadVersion.cpp)|Easy|
|279|[Perfect Squares](https://leetcode.com/problems/perfect-squares/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0279/numSquares-dp.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0279/numSquares.cpp)|Medium|
|280|[💰 Wiggle Sort](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0280/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0280/wiggleSort.cpp)|Medium|
|281|[💰 Zigzag Iterator](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0281/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0281/ZigzagIterator.cpp)|Medium|
|282|[Expression Add Operators](https://leetcode.com/problems/expression-add-operators/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0282/addOperators.cpp)|Hard|
|283|[Move Zeroes](https://leetcode.com/problems/move-zeroes/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0283/moveZeroes.cpp)|Easy|
|284|[Peeking Iterator](https://leetcode.com/problems/peeking-iterator/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0284/PeekingIterator.cpp)|Medium|
|285|[💰 Inorder Successor in BST](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0285/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0285/inorderSuccessor.cpp)|Medium|
|286|[💰 Walls and Gates](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0286/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0286/wallsAndGates-dfs.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0286/wallsAndGates-bfs.cpp)|Medium|
|287|[Find the Duplicate Number](https://leetcode.com/problems/find-the-duplicate-number/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0287/findDuplicate.cpp)|Medium|
|288|[💰 Unique Word Abbreviation](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0288/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0288/ValidWordAbbr.cpp)|Medium|
|289|[Game of Life](https://leetcode.com/problems/game-of-life/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0289/gameOfLife.cpp)|Medium|
|290|[Word Pattern](https://leetcode.com/problems/word-pattern/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0290/wordPattern.cpp)|Easy|
|291|[💰 Word Pattern II](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0291/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0291/wordPatternMatch.cpp)|Hard|
|292|[Nim Game](https://leetcode.com/problems/nim-game/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0292/canWinNim.cpp)|Easy|
|293|[💰 Flip Game](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0293/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0293/generatePossibleNextMoves.cpp)|Easy|
|294|[💰 Flip Game II](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0294/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0294/canWin.cpp)|Medium|
|295|[Find Median from Data Stream](https://leetcode.com/problems/find-median-from-data-stream/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0295/MedianFinder.cpp)|Hard|
|296|[💰 Best Meeting Point](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0296/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0296/minTotalDistance.cpp)|Hard|
|297|[Serialize and Deserialize Binary Tree](https://leetcode.com/problems/serialize-and-deserialize-binary-tree/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0297/Codec.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0297/Codec-bfs.cpp)|Hard|
|298|[💰 Binary Tree Longest Consecutive Sequence](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0298/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0298/longestConsecutive.cpp)|Medium|
|299|[Bulls and Cows](https://leetcode.com/problems/bulls-and-cows/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0299/getHint.cpp)|Medium|
|300|[Longest Increasing Subsequence](https://leetcode.com/problems/longest-increasing-subsequence/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0300/lengthOfLIS.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0300/lengthOfLIS-memo.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0300/lengthOfLIS-dp.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0300/lengthOfLIS-dp-bs.cpp)|Medium|
|301|[Remove Invalid Parentheses](https://leetcode.com/problems/remove-invalid-parentheses/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0301/removeInvalidParentheses.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0301/removeInvalidParentheses-dfs.cpp)|Hard|
|302|[💰 Smallest Rectangle Enclosing Black Pixels](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0302/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0302/minArea.cpp)|Hard|
|303|[Range Sum Query - Immutable](https://leetcode.com/problems/range-sum-query-immutable/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0303/NumArray.cpp)|Easy|
|304|[Range Sum Query 2D - Immutable](https://leetcode.com/problems/range-sum-query-2d-immutable/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0304/NumMatrix.cpp)|Medium|
|305|[💰 Number of Islands II](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0305/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0305/numIslands2.cpp)|Hard|
|306|[Additive Number](https://leetcode.com/problems/additive-number/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0306/isAdditiveNumber.cpp)|Medium|
|307|[Range Sum Query - Mutable](https://leetcode.com/problems/range-sum-query-mutable/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0307/NumArray.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0307/NumArray-1.cpp)|Medium|
|308|[💰 Range Sum Query 2D - Mutable](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0308/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0308/NumMatrix.cpp)|Hard|
|309|[Best Time to Buy and Sell Stock with Cooldown](https://leetcode.com/problems/best-time-to-buy-and-sell-stock-with-cooldown/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0309/maxProfit.cpp)|Medium|
|310|[Minimum Height Trees](https://leetcode.com/problems/minimum-height-trees/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0310/findMinHeightTrees.cpp)|Medium|
|311|[💰 Sparse Matrix Multiplication](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0311/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0311/multiply.cpp)|Medium|
|312|[Burst Balloons](https://leetcode.com/problems/burst-balloons/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0312/maxCoins.cpp)|Hard|
|313|[Super Ugly Number](https://leetcode.com/problems/super-ugly-number/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0313/nthSuperUglyNumber.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0313/nthSuperUglyNumber.1.cpp)|Medium|
|314|[💰 Binary Tree Vertical Order Traversal](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0314/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0314/verticalOrder.cpp)|Medium|
|315|[Count of Smaller Numbers After Self](https://leetcode.com/problems/count-of-smaller-numbers-after-self/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0315/countSmaller.cpp)|Hard|
|316|[Remove Duplicate Letters](https://leetcode.com/problems/remove-duplicate-letters/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0316/removeDuplicateLetters.cpp)|Hard|
|317|[💰 Shortest Distance from All Buildings](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0317/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0317/shortestDistance.cpp)|Hard|
|318|[Maximum Product of Word Lengths](https://leetcode.com/problems/maximum-product-of-word-lengths/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0318/maxProduct.cpp)|Medium|
|319|[Bulb Switcher](https://leetcode.com/problems/bulb-switcher/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0319/bulbSwitch.cpp)|Medium|
|320|[💰 Generalized Abbreviation](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0320/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0320/generateAbbreviations.cpp)|Medium|
|321|[Create Maximum Number](https://leetcode.com/problems/create-maximum-number/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0321/maxNumber.cpp)|Hard|
|322|[Coin Change](https://leetcode.com/problems/coin-change/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0322/coinChange.cpp)|Medium|
|323|[💰 Number of Connected Components in an Undirected Graph](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0323/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0323/countComponents-dfs.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0323/countComponents-uf.cpp)|Medium|
|324|[Wiggle Sort II](https://leetcode.com/problems/wiggle-sort-ii/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0324/wiggleSort.cpp)|Medium|
|325|[💰 Maximum Size Subarray Sum Equals k](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0325/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0325/maxSubArrayLen.cpp)|Medium|
|326|[Power of Three](https://leetcode.com/problems/power-of-three/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0326/isPowerOfThree.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0326/isPowerOfThree1.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0326/isPowerOfThree2.cpp)|Easy|
|327|[Count of Range Sum](https://leetcode.com/problems/count-of-range-sum/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0327/countRangeSum.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0327/countRangeSum1.cpp)|Hard|
|328|[Odd Even Linked List](https://leetcode.com/problems/odd-even-linked-list/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0328/oddEvenList.cpp)|Medium|
|329|[Longest Increasing Path in a Matrix](https://leetcode.com/problems/longest-increasing-path-in-a-matrix/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0329/longestIncreasingPath-bfs.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0329/longestIncreasingPath-dfs.cpp)|Hard|
|330|[Patching Array](https://leetcode.com/problems/patching-array/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0330/minPatches.cpp)|Hard|
|331|[Verify Preorder Serialization of a Binary Tree](https://leetcode.com/problems/verify-preorder-serialization-of-a-binary-tree/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0331/isValidSerialization.cpp)|Medium|
|332|[Reconstruct Itinerary](https://leetcode.com/problems/reconstruct-itinerary/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0332/findItinerary.cpp)|Medium|
|333|[💰 Largest BST Subtree](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0333/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0333/largestBSTSubtree.cpp)|Medium|
|334|[Increasing Triplet Subsequence](https://leetcode.com/problems/increasing-triplet-subsequence/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0334/increasingTriplet.cpp)|Medium|
|335|[Self Crossing](https://leetcode.com/problems/self-crossing/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0335/isSelfCrossing.cpp)|Hard|
|336|[Palindrome Pairs](https://leetcode.com/problems/palindrome-pairs/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0336/palindromePairs.cpp)|Hard|
|337|[House Robber III](https://leetcode.com/problems/house-robber-iii/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0337/rob.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0337/rob.1.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0337/rob-dp.cpp)|Medium|
|338|[Counting Bits](https://leetcode.com/problems/counting-bits/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0338/countBits.cpp)|Medium|
|339|[💰 Nested List Weight Sum](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0339/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0339/depthSum.cpp)|Easy|
|340|[💰 Longest Substring with At Most K Distinct Characters](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0340/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0340/lengthOfLongestSubstringKDistinct.cpp)|Hard|
|341|[Flatten Nested List Iterator](https://leetcode.com/problems/flatten-nested-list-iterator/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0341/NestedIterator.cpp)|Medium|
|342|[Power of Four](https://leetcode.com/problems/power-of-four/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0342/isPowerOfFour.cpp)|Easy|
|343|[Integer Break](https://leetcode.com/problems/integer-break/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0343/integerBreak.cpp)|Medium|
|344|[Reverse String](https://leetcode.com/problems/reverse-string/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0344/reverseString.cpp)|Easy|
|345|[Reverse Vowels of a String](https://leetcode.com/problems/reverse-vowels-of-a-string/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0345/reverseVowels.cpp)|Easy|
|346|[💰 Moving Average from Data Stream](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0346/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0346/MovingAverage.cpp)|Easy|
|347|[Top K Frequent Elements](https://leetcode.com/problems/top-k-frequent-elements/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0347/topKFrequent.cpp)|Medium|
|348|[💰 Design Tic-Tac-Toe](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0348/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0348/TicTacToe.cpp)|Medium|
|349|[Intersection of Two Arrays](https://leetcode.com/problems/intersection-of-two-arrays/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0349/intersection.cpp)|Easy|
|350|[Intersection of Two Arrays II](https://leetcode.com/problems/intersection-of-two-arrays-ii/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0350/intersect.cpp)|Easy|
|351|[💰 Android Unlock Patterns](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0351/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0351/numberOfPatterns.cpp)|Medium|
|352|[Data Stream as Disjoint Intervals](https://leetcode.com/problems/data-stream-as-disjoint-intervals/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0352/SummaryRanges.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0352/SummaryRanges-set.cpp)|Hard|
|353|[💰 Design Snake Game](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0353/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0353/SnakeGame.cpp)|Medium|
|354|[Russian Doll Envelopes](https://leetcode.com/problems/russian-doll-envelopes/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0354/maxEnvelopes-dp.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0354/maxEnvelopes-dp-bs.cpp)|Hard|
|355|[Design Twitter](https://leetcode.com/problems/design-twitter/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0355/Twitter.cpp)|Medium|
|356|[💰 Line Reflection](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0356/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0356/isReflected.cpp)|Medium|
|357|[Count Numbers with Unique Digits](https://leetcode.com/problems/count-numbers-with-unique-digits/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0357/countNumbersWithUniqueDigits.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0357/countNumbersWithUniqueDigits-bt.cpp)|Medium|
|358|[💰 Rearrange String k Distance Apart](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0358/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0358/rearrangeString.cpp)|Hard|
|359|[💰 Logger Rate Limiter](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0359/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0359/Logger.cpp)|Easy|
|360|[💰 Sort Transformed Array](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0360/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0360/sortTransformedArray.cpp)|Medium|
|361|[💰 Bomb Enemy](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0361/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0361/maxKilledEnemies.cpp)|Medium|
|362|[💰 Design Hit Counter](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0362/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0362/HitCounter.cpp)|Medium|
|363|[Max Sum of Rectangle No Larger Than K](https://leetcode.com/problems/max-sum-of-rectangle-no-larger-than-k/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0363/maxSumSubmatrix.cpp)|Hard|
|364|[💰 Nested List Weight Sum II](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0364/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0364/depthSumInverse.cpp)|Medium|
|365|[Water and Jug Problem](https://leetcode.com/problems/water-and-jug-problem/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0365/canMeasureWater.cpp)|Medium|
|366|[💰 Find Leaves of Binary Tree](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0366/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0366/findLeaves.cpp)|Medium|
|367|[Valid Perfect Square](https://leetcode.com/problems/valid-perfect-square/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0367/isPerfectSquare.cpp)|Easy|
|368|[Largest Divisible Subset](https://leetcode.com/problems/largest-divisible-subset/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0368/largestDivisibleSubset.cpp)|Medium|
|369|[💰 Plus One Linked List](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0369/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0369/plusOne.cpp)|Medium|
|370|[💰 Range Addition](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0370/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0370/getModifiedArray.cpp)|Medium|
|371|[Sum of Two Integers](https://leetcode.com/problems/sum-of-two-integers/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0371/getSum.cpp)|Easy|
|372|[Super Pow](https://leetcode.com/problems/super-pow/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0372/superPow.cpp)|Medium|
|373|[Find K Pairs with Smallest Sums](https://leetcode.com/problems/find-k-pairs-with-smallest-sums/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0373/kSmallestPairs.cpp)|Medium|
|374|[Guess Number Higher or Lower](https://leetcode.com/problems/guess-number-higher-or-lower/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0374/guessNumber.cpp)|Easy|
|375|[Guess Number Higher or Lower II](https://leetcode.com/problems/guess-number-higher-or-lower-ii/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0375/getMoneyAmount.cpp)|Medium|
|376|[Wiggle Subsequence](https://leetcode.com/problems/wiggle-subsequence/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0376/wiggleMaxLength-bf.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0376/wiggleMaxLength-dp.1.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0376/wiggleMaxLength-dp.2.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0376/wiggleMaxLength-dp.3.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0376/wiggleMaxLength-greedy.cpp)|Medium|
|377|[Combination Sum IV](https://leetcode.com/problems/combination-sum-iv/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0377/combinationSum4.cpp)|Medium|
|378|[Kth Smallest Element in a Sorted Matrix](https://leetcode.com/problems/kth-smallest-element-in-a-sorted-matrix/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0378/kthSmallest-heap.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0378/kthSmallest-bf.cpp)|Medium|
|379|[💰 Design Phone Directory](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0379/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0379/PhoneDirectory.cpp)|Medium|
|380|[Insert Delete GetRandom O(1)](https://leetcode.com/problems/insert-delete-getrandom-o1/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0380/RandomizedSet.cpp)|Medium|
|381|[Insert Delete GetRandom O(1) - Duplicates allowed](https://leetcode.com/problems/insert-delete-getrandom-o1-duplicates-allowed/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0381/RandomizedCollection.cpp)|Hard|
|382|[Linked List Random Node](https://leetcode.com/problems/linked-list-random-node/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0382/randomLinkedList.cpp)|Medium|
|383|[Ransom Note](https://leetcode.com/problems/ransom-note/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0383/canConstruct-map.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0383/canConstruct-vector.cpp)|Easy|
|384|[Shuffle an Array](https://leetcode.com/problems/shuffle-an-array/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0384/shuffle.cpp)|Medium|
|385|[Mini Parser](https://leetcode.com/problems/mini-parser/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0385/NestedInteger.cpp)|Medium|
|386|[Lexicographical Numbers](https://leetcode.com/problems/lexicographical-numbers/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0386/lexicalOrder.cpp)|Medium|
|387|[First Unique Character in a String](https://leetcode.com/problems/first-unique-character-in-a-string/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0387/firstUniqChar.cpp)|Easy|
|388|[Longest Absolute File Path](https://leetcode.com/problems/longest-absolute-file-path/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0388/lengthLongestPath.cpp)|Medium|
|389|[Find the Difference](https://leetcode.com/problems/find-the-difference/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0389/findTheDifference.cpp)|Easy|
|390|[Elimination Game](https://leetcode.com/problems/elimination-game/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0390/lastRemaining.cpp)|Medium|
|391|[Perfect Rectangle](https://leetcode.com/problems/perfect-rectangle/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0391/isRectangleCover.cpp)|Hard|
|392|[Is Subsequence](https://leetcode.com/problems/is-subsequence/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0392/isSubsequence.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0392/isSubsequence-followup.cpp)|Easy|
|393|[UTF-8 Validation](https://leetcode.com/problems/utf-8-validation/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0393/validUtf8.cpp)|Medium|
|394|[Decode String](https://leetcode.com/problems/decode-string/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0394/decodeString.cpp)|Medium|
|395|[Longest Substring with At Least K Repeating Characters](https://leetcode.com/problems/longest-substring-with-at-least-k-repeating-characters/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0395/longestSubstring.cpp)|Medium|
|396|[Rotate Function](https://leetcode.com/problems/rotate-function/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0396/maxRotateFunction.cpp)|Medium|
|397|[Integer Replacement](https://leetcode.com/problems/integer-replacement/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0397/integerReplacement.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0397/integerReplacement-1.cpp)|Medium|
|398|[Random Pick Index](https://leetcode.com/problems/random-pick-index/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0398/pick.cpp)|Medium|
|399|[Evaluate Division](https://leetcode.com/problems/evaluate-division/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0399/calcEquation.cpp)|Medium|
|400|[Nth Digit](https://leetcode.com/problems/nth-digit/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0400/findNthDigit.cpp)|Medium|
|401|[Binary Watch](https://leetcode.com/problems/binary-watch/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0401/readBinaryWatch.cpp)|Easy|
|402|[Remove K Digits](https://leetcode.com/problems/remove-k-digits/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0402/removeKdigits.cpp)|Medium|
|403|[Frog Jump](https://leetcode.com/problems/frog-jump/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0403/canCross.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0403/canCross-dp.cpp)|Hard|
|404|[Sum of Left Leaves](https://leetcode.com/problems/sum-of-left-leaves/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0404/sumOfLeftLeaves.cpp)|Easy|
|405|[Convert a Number to Hexadecimal](https://leetcode.com/problems/convert-a-number-to-hexadecimal/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0405/toHex.cpp)|Easy|
|406|[Queue Reconstruction by Height](https://leetcode.com/problems/queue-reconstruction-by-height/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0406/reconstructQueue.cpp)|Medium|
|407|[Trapping Rain Water II](https://leetcode.com/problems/trapping-rain-water-ii/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0407/trapRainWater.cpp)|Hard|
|408|[💰 Valid Word Abbreviation](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0408/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0408/validWordAbbreviation.cpp)|Easy|
|409|[Longest Palindrome](https://leetcode.com/problems/longest-palindrome/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0409/longestPalindrome.cpp)|Easy|
|410|[Split Array Largest Sum](https://leetcode.com/problems/split-array-largest-sum/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0410/splitArray.cpp)|Hard|
|411|[💰 Minimum Unique Word Abbreviation](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0411/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0411/minAbbreviation.cpp)|Hard|
|412|[Fizz Buzz](https://leetcode.com/problems/fizz-buzz/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0412/fizzbuzz.cpp)|Easy|
|413|[Arithmetic Slices](https://leetcode.com/problems/arithmetic-slices/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0413/numberOfArithmeticSlices.cpp)|Medium|
|414|[Third Maximum Number](https://leetcode.com/problems/third-maximum-number/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0414/thirdMax.cpp)|Easy|
|415|[Add Strings](https://leetcode.com/problems/add-strings/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0415/addStrings.cpp)|Easy|
|416|[Partition Equal Subset Sum](https://leetcode.com/problems/partition-equal-subset-sum/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0416/canPartition-dp.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0416/canPartition-dp-1.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0416/canPartition-bitset.cpp)|Medium|
|417|[Pacific Atlantic Water Flow](https://leetcode.com/problems/pacific-atlantic-water-flow/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0417/pacificAtlantic-bfs.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0417/pacificAtlantic-dfs.cpp)|Medium|
|418|[💰 Sentence Screen Fitting](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0418/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0418/wordsTyping.cpp)|Medium|
|419|[Battleships in a Board](https://leetcode.com/problems/battleships-in-a-board/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0419/countBattleships.cpp)|Medium|
|420|[Strong Password Checker](https://leetcode.com/problems/strong-password-checker/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0420/strongPasswordChecker.cpp)|Hard|
|421|[Maximum XOR of Two Numbers in an Array](https://leetcode.com/problems/maximum-xor-of-two-numbers-in-an-array/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0421/findMaximumXOR.cpp)|Medium|
|422|[💰 Valid Word Square](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0422/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0422/validWordSquare.cpp)|Easy|
|423|[Reconstruct Original Digits from English](https://leetcode.com/problems/reconstruct-original-digits-from-english/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0423/originalDigits.cpp)|Medium|
|424|[Longest Repeating Character Replacement](https://leetcode.com/problems/longest-repeating-character-replacement/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0424/characterReplacement.cpp)|Medium|
|425|[💰 Word Squares](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0425/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0425/wordSquares.cpp)|hard|
|426|[💰 Convert Binary Search Tree to Sorted Doubly Linked List](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0426/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0426/treeToDoublyList.cpp)|Medium|
|427|[Construct Quad Tree](https://leetcode.com/problems/construct-quad-tree/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0427/QuadTree.cpp)|Medium|
|428|[💰 Serialize and Deserialize N-ary Tree](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0428/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0428/codecNTree.cpp)|Hard|
|429|[N-ary Tree Level Order Traversal](https://leetcode.com/problems/n-ary-tree-level-order-traversal/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0429/nTreeLevelOrder.cpp)|Easy|
|430|[Flatten a Multilevel Doubly Linked List](https://leetcode.com/problems/flatten-a-multilevel-doubly-linked-list/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0430/flatten-recursion.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0430/flatten.cpp)|Medium|
|431|[💰 Encode N-ary Tree to Binary Tree](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0431/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0431/codecNTree.cpp)|Hard|
|432|[All O`one Data Structure](https://leetcode.com/problems/all-oone-data-structure/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0432/AllOne.cpp)|Hard|
|433|[Minimum Genetic Mutation](https://leetcode.com/problems/minimum-genetic-mutation/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0433/minMutation.cpp)|Medium|
|434|[Number of Segments in a String](https://leetcode.com/problems/number-of-segments-in-a-string/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0434/countSegments.cpp)|Easy|
|435|[Non-overlapping Intervals](https://leetcode.com/problems/non-overlapping-intervals/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0435/eraseOverlapIntervals.cpp)|Medium|
|436|[Find Right Interval](https://leetcode.com/problems/find-right-interval/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0436/findRightInterval.cpp)|Medium|
|437|[Path Sum III](https://leetcode.com/problems/path-sum-iii/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0437/pathSum.cpp)|Easy|
|438|[Find All Anagrams in a String](https://leetcode.com/problems/find-all-anagrams-in-a-string/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0438/findAnagrams.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0438/findAnagrams-slide.cpp)|Medium|
|439|[💰 Ternary Expression Parser](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0439/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0439/parseTernary.cpp)|Medium|
|440|[K-th Smallest in Lexicographical Order](https://leetcode.com/problems/k-th-smallest-in-lexicographical-order/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0440/findKthNumber.cpp)|Hard|
|441|[Arranging Coins](https://leetcode.com/problems/arranging-coins/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0441/arrangeCoins-bs.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0441/arrangeCoins-math.cpp)|Easy|
|442|[Find All Duplicates in an Array](https://leetcode.com/problems/find-all-duplicates-in-an-array/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0442/findDuplicates.cpp)|Medium|
|443|[String Compression](https://leetcode.com/problems/string-compression/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0443/compress.cpp)|Easy|
|444|[💰 Sequence Reconstruction](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0444/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0444/sequenceReconstruction.cpp)|Medium|
|445|[Add Two Numbers II](https://leetcode.com/problems/add-two-numbers-ii/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0445/addTwoNumbers.cpp)|Medium|
|446|[Arithmetic Slices II - Subsequence](https://leetcode.com/problems/arithmetic-slices-ii-subsequence/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0446/numberOfArithmeticSlices.cpp)|Hard|
|447|[Number of Boomerangs](https://leetcode.com/problems/number-of-boomerangs/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0447/numberOfBoomerangs.cpp)|Easy|
|448|[Find All Numbers Disappeared in an Array](https://leetcode.com/problems/find-all-numbers-disappeared-in-an-array/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0448/findDisappearedNumbers.cpp)|Easy|
|449|[Serialize and Deserialize BST](https://leetcode.com/problems/serialize-and-deserialize-bst/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0449/Codec.cpp)|Medium|
|450|[Delete Node in a BST](https://leetcode.com/problems/delete-node-in-a-bst/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0450/deleteNode.cpp)|Medium|
|451|[Sort Characters By Frequency](https://leetcode.com/problems/sort-characters-by-frequency/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0451/frequencySort.cpp)|Medium|
|452|[Minimum Number of Arrows to Burst Balloons](https://leetcode.com/problems/minimum-number-of-arrows-to-burst-balloons/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0452/findMinArrowShots.cpp)|Medium|
|453|[Minimum Moves to Equal Array Elements](https://leetcode.com/problems/minimum-moves-to-equal-array-elements/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0453/minMoves.cpp)|Easy|
|454|[4Sum II](https://leetcode.com/problems/4sum-ii/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0454/fourSumCount.cpp)|Medium|
|455|[Assign Cookies](https://leetcode.com/problems/assign-cookies/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0455/findContentChildren.cpp)|Easy|
|456|[132 Pattern](https://leetcode.com/problems/132-pattern/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0456/find132pattern.cpp)|Medium|
|457|[Circular Array Loop](https://leetcode.com/problems/circular-array-loop/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0457/circularArrayLoop.cpp)|Medium|
|458|[Poor Pigs](https://leetcode.com/problems/poor-pigs/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0458/poorPigs.cpp)|Hard|
|459|[Repeated Substring Pattern](https://leetcode.com/problems/repeated-substring-pattern/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0459/repeatedSubstringPattern.cpp)|Easy|
|460|[LFU Cache](https://leetcode.com/problems/lfu-cache/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0460/LFUCache.cpp)|Hard|
|461|[Hamming Distance](https://leetcode.com/problems/hamming-distance/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0461/hammingDistance.cpp)|Easy|
|462|[Minimum Moves to Equal Array Elements II](https://leetcode.com/problems/minimum-moves-to-equal-array-elements-ii/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0462/minMoves2.cpp)|Medium|
|463|[Island Perimeter](https://leetcode.com/problems/island-perimeter/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0463/islandPerimeter.cpp)|Easy|
|464|[Can I Win](https://leetcode.com/problems/can-i-win/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0464/canIWin.cpp)|Medium|
|465|[💰 Optimal Account Balancing](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0465/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0465/minTransfers.cpp)|Hard|
|466|[Count The Repetitions](https://leetcode.com/problems/count-the-repetitions/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0466/getMaxRepetitions.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0466/getMaxRepetitions-dp.cpp)|Hard|
|467|[Unique Substrings in Wraparound String](https://leetcode.com/problems/unique-substrings-in-wraparound-string/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0467/findSubstringInWraproundString.cpp)|Medium|
|468|[Validate IP Address](https://leetcode.com/problems/validate-ip-address/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0468/validIPAddress.cpp)|Medium|
|469|[💰 Convex Polygon](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0469/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0469/isConvex.cpp)|Medium|
|470|[Implement Rand10() Using Rand7()](https://leetcode.com/problems/implement-rand10-using-rand7/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0470/rand10.cpp)|Medium|
|471|[💰 Encode String with Shortest Length](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0471/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0471/encode.cpp)|Hard|
|472|[Concatenated Words](https://leetcode.com/problems/concatenated-words/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0472/findAllConcatenatedWordsInADict.cpp)|Hard|
|473|[Matchsticks to Square](https://leetcode.com/problems/matchsticks-to-square/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0473/makesquare-dfs.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0473/makesquare-bit.cpp)|Medium|
|474|[Ones and Zeroes](https://leetcode.com/problems/ones-and-zeroes/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0474/findMaxForm.cpp)|Medium|
|475|[Heaters](https://leetcode.com/problems/heaters/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0475/findRadius.cpp)|Easy|
|476|[Number Complement](https://leetcode.com/problems/number-complement/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0476/findComplement.cpp)|Easy|
|477|[Total Hamming Distance](https://leetcode.com/problems/total-hamming-distance/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0477/totalHammingDistance.cpp)|Medium|
|478|[Generate Random Point in a Circle](https://leetcode.com/problems/generate-random-point-in-a-circle/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0478/randomPointInCircle.cpp)|Medium|
|479|[Largest Palindrome Product](https://leetcode.com/problems/largest-palindrome-product/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0479/largestPalindrome.cpp)|Hard|
|480|[Sliding Window Median](https://leetcode.com/problems/sliding-window-median/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0480/medianSlidingWindow.cpp)|Hard|
|481|[Magical String](https://leetcode.com/problems/magical-string/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0481/magicalString.cpp)|Medium|
|482|[License Key Formatting](https://leetcode.com/problems/license-key-formatting/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0482/licenseKeyFormatting.cpp)|Easy|
|483|[Smallest Good Base](https://leetcode.com/problems/smallest-good-base/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0483/smallestGoodBase.cpp)|Hard|
|484|[💰 Find Permutation](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0484/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0484/findPermutation.cpp)|Medium|
|485|[Max Consecutive Ones](https://leetcode.com/problems/max-consecutive-ones/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0485/findMaxConsecutiveOnes.cpp)|Easy|
|486|[Predict the Winner](https://leetcode.com/problems/predict-the-winner/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0486/PredictTheWinner.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0486/PredictTheWinner-memo.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0486/PredictTheWinner-dp.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0486/PredictTheWinner-dp2.cpp)|Medium|
|487|[💰 Max Consecutive Ones II](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0487/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0487/findMaxConsecutiveOnes.cpp)|Medium|
|488|[Zuma Game](https://leetcode.com/problems/zuma-game/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0488/findMinStep.cpp)|Hard|
|489|[💰 Robot Room Cleaner](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0489/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0489/cleanRoom.cpp)|Hard|
|490|[💰 The Maze](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0490/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0490/hasPath-dfs.cpp) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0490/hasPath-bfs.cpp)|Medium|
|491|[Increasing Subsequences](https://leetcode.com/problems/increasing-subsequences/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0491/findSubsequences.cpp)|Medium|
|492|[Construct the Rectangle](https://leetcode.com/problems/construct-the-rectangle/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0492/constructRectangle.cpp)|Easy|
|493|[Reverse Pairs](https://leetcode.com/problems/reverse-pairs/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0493/reversePairs.cc) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0493/reversePairs-bst.cc) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0493/reversePairs-bit.cc) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0493/reversePairs-ms.cc)|Hard|
|494|[Target Sum](https://leetcode.com/problems/target-sum/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0494/findTargetSumWays.cc) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0494/findTargetSumWays-memo.cc) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0494/findTargetSumWays-dp.cc) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0494/findTargetSumWays-dp-1.cc)|Medium|
|495|[Teemo Attacking](https://leetcode.com/problems/teemo-attacking/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0495/findPoisonedDuration.cc)|Medium|
|496|[Next Greater Element I](https://leetcode.com/problems/next-greater-element-i/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0496/nextGreaterElement.cc)|Easy|
|497|[Random Point in Non-overlapping Rectangles](https://leetcode.com/problems/random-point-in-non-overlapping-rectangles/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0497/ramdomPonitPickInRect.cc)|Medium|
|498|[Diagonal Traverse](https://leetcode.com/problems/diagonal-traverse/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0498/findDiagonalOrder.cc)|Medium|
|499|[💰 The Maze III](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0499/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0499/findShortestWay-dfs.cc) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0499/findShortestWay-bfs.cc)|Hard|
|500|[Keyboard Row](https://leetcode.com/problems/keyboard-row/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0500/findWords.cc)|Easy|
|501|[Find Mode in Binary Search Tree](https://leetcode.com/problems/find-mode-in-binary-search-tree/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0501/findMode.cc)|Easy|
|502|[IPO](https://leetcode.com/problems/ipo/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0502/findMaximizedCapital.cc)|Hard|
|503|[Next Greater Element II](https://leetcode.com/problems/next-greater-element-ii/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0503/nextGreaterElements.cc)|Medium|
|504|[Base 7](https://leetcode.com/problems/base-7/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0504/convertToBase7.cc)|Easy|
|505|[💰 The Maze II](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0505/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0505/shortestDistance-dfs.cc) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0505/shortestDistance-bfs.cc) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0505/shortestDistance-Dijkstra.cc)|Medium|
|506|[Relative Ranks](https://leetcode.com/problems/relative-ranks/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0506/findRelativeRanks-map.cc) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0506/findRelativeRanks-pq.cc)|Easy|
|507|[Perfect Number](https://leetcode.com/problems/perfect-number/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0507/checkPerfectNumber.cc)|Easy|
|508|[Most Frequent Subtree Sum](https://leetcode.com/problems/most-frequent-subtree-sum/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0508/findFrequentTreeSum.cc)|Medium|
|509|[Fibonacci Number](https://leetcode.com/problems/fibonacci-number/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0509/fib-0.cc) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0509/fib-1.cc) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0509/fib-2.cc) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0509/fib-3.cc) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0509/fib-4.cc) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0509/fib-5.cc)|Easy|
|510|[💰 Inorder Successor in BST II](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0510/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0510/inorderSuccessor.cc)|Medium|
|513|[Find Bottom Left Tree Value](https://leetcode.com/problems/find-bottom-left-tree-value/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0513/findBottomLeftValue.cc)|Medium|
|514|[Freedom Trail](https://leetcode.com/problems/freedom-trail/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0514/findRotateSteps.cc) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0514/findRotateSteps-dp.cc)|Hard|
|515|[Find Largest Value in Each Tree Row](https://leetcode.com/problems/find-largest-value-in-each-tree-row/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0515/largestValues-dfs.cc) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0515/largestValues-bfs.cc)|Medium|
|516|[Longest Palindromic Subsequence](https://leetcode.com/problems/longest-palindromic-subsequence/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0516/longestPalindromeSubseq.cc) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0516/longestPalindromeSubseq-memo.cc) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0516/longestPalindromeSubseq-dp.cc)|Medium|
|517|[Super Washing Machines](https://leetcode.com/problems/super-washing-machines/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0517/findMinMoves.cc)|Hard|
|518|[Coin Change 2](https://leetcode.com/problems/coin-change-2/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0518/changeCoins-dp.cc) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0518/changeCoins-dp-1.cc)|Medium|
|519|[Random Flip Matrix](https://leetcode.com/problems/random-flip-matrix/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0519/flip.cc)|Medium|
|520|[Detect Capital](https://leetcode.com/problems/detect-capital/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0520/detectCapitalUse.cc)|Easy|
|521|[Longest Uncommon Subsequence I](https://leetcode.com/problems/longest-uncommon-subsequence-i/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0521/findLUSlength.cc)|Easy|
|522|[Longest Uncommon Subsequence II](https://leetcode.com/problems/longest-uncommon-subsequence-ii/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0522/findLUSlength.cc)|Medium|
|523|[Continuous Subarray Sum](https://leetcode.com/problems/continuous-subarray-sum/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0523/checkSubarraySum.cc) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0523/checkSubarraySum-map.cc)|Medium|
|524|[Longest Word in Dictionary through Deleting](https://leetcode.com/problems/longest-word-in-dictionary-through-deleting/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0524/findLongestWord.cc)|Medium|
|525|[Contiguous Array](https://leetcode.com/problems/contiguous-array/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0525/findMaxLength.cc) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0525/findMaxLength-sum.cc)|Medium|
|526|[Beautiful Arrangement](https://leetcode.com/problems/beautiful-arrangement/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0526/countArrangement.cc)|Medium|
|527|[💰 Word Abbreviation](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0527/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0527/wordsAbbreviation.cc)|Hard|
|528|[Random Pick with Weight](https://leetcode.com/problems/random-pick-with-weight/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0528/pickIndex.cc)|Medium|
|529|[Minesweeper](https://leetcode.com/problems/minesweeper/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0529/minesweeper-dfs.cc) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0529/minesweeper-bfs.cc)|Medium|
|530|[Minimum Absolute Difference in BST](https://leetcode.com/problems/minimum-absolute-difference-in-bst/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0530/getMinimumDifference.cc)|Easy|
|531|[💰 Lonely Pixel I](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0531/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0531/findLonelyPixel.cc)|Medium|
|532|[K-diff Pairs in an Array](https://leetcode.com/problems/k-diff-pairs-in-an-array/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0532/findPairs.cc)|Easy|
|533|[💰 Lonely Pixel II](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0533/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0533/findBlackPixel.cc)|Medium|
|535|[Encode and Decode TinyURL](https://leetcode.com/problems/encode-and-decode-tinyurl/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0535/urlshorter.cc)|Medium|
|536|[💰 Construct Binary Tree from String](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0536/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0536/str2tree.cc)|Medium|
|537|[Complex Number Multiplication](https://leetcode.com/problems/complex-number-multiplication/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0537/complexNumberMultiply.cc)|Medium|
|538|[Convert BST to Greater Tree](https://leetcode.com/problems/convert-bst-to-greater-tree/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0538/convertBST.cc)|Easy|
|539|[Minimum Time Difference](https://leetcode.com/problems/minimum-time-difference/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0539/findMinDifference.cc)|Medium|
|540|[Single Element in a Sorted Array](https://leetcode.com/problems/single-element-in-a-sorted-array/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0540/singleNonDuplicate.cc)|Medium|
|541|[Reverse String II](https://leetcode.com/problems/reverse-string-ii/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0541/reverseStr.cc)|Easy|
|542|[01 Matrix](https://leetcode.com/problems/01-matrix/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0542/updateMatrix-bfs.cc) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0542/updateMatrix-dp.cc)|Medium|
|543|[Diameter of Binary Tree](https://leetcode.com/problems/diameter-of-binary-tree/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0543/diameterOfBinaryTree.cc)|Easy|
|544|[💰 Output Contest Matches](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0544/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0544/findContestMatch.cc)|Medium|
|545|[💰 Boundary of Binary Tree](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0545/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0545/boundaryOfBinaryTree.cc)|Medium|
|546|[Remove Boxes](https://leetcode.com/problems/remove-boxes/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0546/removeBoxes.cc)|Hard|
|547|[Friend Circles](https://leetcode.com/problems/friend-circles/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0547/findCircleNum-dfs.cc) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0547/findCircleNum-uf.cc)|Medium|
|548|[💰 Split Array with Equal Sum](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0548/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0548/splitArray.cc)|Medium|
|549|[💰 Binary Tree Longest Consecutive Sequence II](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0549/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0549/longestConsecutive.cc)|Medium|
|551|[Student Attendance Record I](https://leetcode.com/problems/student-attendance-record-i/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0551/checkRecord.cc)|Easy|
|552|[Student Attendance Record II](https://leetcode.com/problems/student-attendance-record-ii/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0552/checkRecord.cc)|Hard|
|553|[Optimal Division](https://leetcode.com/problems/optimal-division/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0553/optimalDivision.cc)|Medium|
|554|[Brick Wall](https://leetcode.com/problems/brick-wall/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0554/leastBricks.cc)|Medium|
|555|[💰 Split Concatenated Strings](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0555/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0555/splitLoopedString.cc)|Medium|
|556|[Next Greater Element III](https://leetcode.com/problems/next-greater-element-iii/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0556/nextGreaterElement.cc) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0556/nextGreaterElement-1.cc)|Medium|
|557|[Reverse Words in a String III](https://leetcode.com/problems/reverse-words-in-a-string-iii/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0557/reverseWords.cc)|Easy|
|558|[Logical OR of Two Binary Grids Represented as Quad-Trees](https://leetcode.com/problems/logical-or-of-two-binary-grids-represented-as-quad-trees/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0558/intersect.cc)|Medium|
|559|[Maximum Depth of N-ary Tree](https://leetcode.com/problems/maximum-depth-of-n-ary-tree/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0559/maxDepth-dfs.cc) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0559/maxDepth-bfs.cc)|Easy|
|560|[Subarray Sum Equals K](https://leetcode.com/problems/subarray-sum-equals-k/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0560/subarraySum.cc) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0560/subarraySum-1.cc) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0560/subarraySum-2.cc) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0560/subarraySum-3.cc)|Medium|
|561|[Array Partition I](https://leetcode.com/problems/array-partition-i/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0561/arrayPairSum.cc)|Easy|
|562|[💰 Longest Line of Consecutive One in Matrix](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0562/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0562/longestLine.cc)|Medium|
|563|[Binary Tree Tilt](https://leetcode.com/problems/binary-tree-tilt/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0563/findTilt.cc)|Easy|
|564|[Find the Closest Palindrome](https://leetcode.com/problems/find-the-closest-palindrome/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0564/nearestPalindromic.cc)|Hard|
|565|[Array Nesting](https://leetcode.com/problems/array-nesting/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0565/arrayNesting.cc) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0565/arrayNesting-1.cc) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0565/arrayNesting-2.cc)|Medium|
|566|[Reshape the Matrix](https://leetcode.com/problems/reshape-the-matrix/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0566/matrixReshape.cc)|Easy|
|567|[Permutation in String](https://leetcode.com/problems/permutation-in-string/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0567/checkInclusion.cc) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0567/checkInclusion-1.cc)|Medium|
|568|[💰 Maximum Vacation Days](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0568/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0568/maxVacationDays-0.cc) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0568/maxVacationDays.cc)|Hard|
|572|[Subtree of Another Tree](https://leetcode.com/problems/subtree-of-another-tree/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0572/isSubtree.cc)|Easy|
|573|[💰 Squirrel Simulation](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0573/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0573/minDistance.cc)|Medium|
|575|[Distribute Candies](https://leetcode.com/problems/distribute-candies/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0575/distributeCandies.cc)|Easy|
|576|[Out of Boundary Paths](https://leetcode.com/problems/out-of-boundary-paths/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0576/findPaths.cc) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0576/findPaths-memo.cc) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0576/findPaths-dp.cc)|Easy|
|581|[Shortest Unsorted Continuous Subarray](https://leetcode.com/problems/shortest-unsorted-continuous-subarray/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0581/findUnsortedSubarray.cc)|Easy|
|582|[💰 Kill Process](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0582/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0582/killProcess.cc)|Medium|
|583|[Delete Operation for Two Strings](https://leetcode.com/problems/delete-operation-for-two-strings/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0583/minDistance-lcs.cc) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0583/minDistance-lcs-memo.cc) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0583/minDistance-lcs-dp.cc) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0583/minDistance-dp.cc) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0583/minDistance-dp-1.cc)|Medium|
|587|[Erect the Fence](https://leetcode.com/problems/erect-the-fence/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0587/outerTrees.cc)|Hard|
|588|[💰 Design In-Memory File System](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0588/README.md)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0588/fs.cc)|Hard|
|589|[N-ary Tree Preorder Traversal](https://leetcode.com/problems/n-ary-tree-preorder-traversal/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0589/preorder.cc) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0589/preorder-iterative.cc)|Easy|
|590|[N-ary Tree Postorder Traversal](https://leetcode.com/problems/n-ary-tree-postorder-traversal/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0590/postorder.cc) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0590/postorder-iter.cc)|Easy|
|591|[Tag Validator](https://leetcode.com/problems/tag-validator/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0591/tagValidator.cc)|Hard|
|592|[Fraction Addition and Subtraction](https://leetcode.com/problems/fraction-addition-and-subtraction/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0592/fractionAddition.cc)|Medium|
|593|[Valid Square](https://leetcode.com/problems/valid-square/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0593/validSquare.cc)|Medium|
|594|[Longest Harmonious Subsequence](https://leetcode.com/problems/longest-harmonious-subsequence/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0594/findLHS.cc)|Easy|
|598|[Range Addition II](https://leetcode.com/problems/range-addition-ii/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0598/maxCount.cc)|Easy|
|599|[Minimum Index Sum of Two Lists](https://leetcode.com/problems/minimum-index-sum-of-two-lists/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0599/findRestaurant.cc)|Easy|
|600|[Non-negative Integers without Consecutive Ones](https://leetcode.com/problems/non-negative-integers-without-consecutive-ones/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0600/findIntegers-bf.cc) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0600/findIntegers-bf-1.cc) [C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0600/findIntegers-bit-manipulation.cc)|Hard|## sql
| # | Title | Solution | Difficulty |
|---| ----- | -------- | ---------- |
|175|[Combine Two Tables](https://leetcode.com/problems/combine-two-tables/)|[sql](https://github.com/ejunjsh/leetcode/blob/master/sql/0175/combineTwoTables.sql)|Easy|
|176|[Second Highest Salary](https://leetcode.com/problems/second-highest-salary/)|[sql](https://github.com/ejunjsh/leetcode/blob/master/sql/0176/secondHighestSalary.sql)|Easy|
|177|[Nth Highest Salary](https://leetcode.com/problems/nth-highest-salary/)|[sql](https://github.com/ejunjsh/leetcode/blob/master/sql/0177/getNthHighestSalary.sql)|Medium|
|178|[Rank Scores](https://leetcode.com/problems/rank-scores/)|[sql](https://github.com/ejunjsh/leetcode/blob/master/sql/0178/rankScores.sql)|Medium|
|180|[Consecutive Numbers](https://leetcode.com/problems/consecutive-numbers/)|[sql](https://github.com/ejunjsh/leetcode/blob/master/sql/0180/ConsecutiveNums.sql)|Medium|
|181|[Employees Earning More Than Their Managers](https://leetcode.com/problems/employees-earning-more-than-their-managers/)|[sql](https://github.com/ejunjsh/leetcode/blob/master/sql/0181/employees-earning-more-than-their-managers.sql)|Easy|
|182|[Duplicate Emails](https://leetcode.com/problems/duplicate-emails/)|[sql](https://github.com/ejunjsh/leetcode/blob/master/sql/0182/duplicateEmail.sql) [sql](https://github.com/ejunjsh/leetcode/blob/master/sql/0182/duplicateEmail-having.sql)|Easy|
|183|[Customers Who Never Order](https://leetcode.com/problems/customers-who-never-order/)|[sql](https://github.com/ejunjsh/leetcode/blob/master/sql/0183/neverOrder.sql)|Easy|
|184|[Department Highest Salary](https://leetcode.com/problems/department-highest-salary/)|[sql](https://github.com/ejunjsh/leetcode/blob/master/sql/0184/highestSalary.sql)|Medium|
|185|[Department Top Three Salaries](https://leetcode.com/problems/department-top-three-salaries/)|[sql](https://github.com/ejunjsh/leetcode/blob/master/sql/0185/top3Salary.sql)|Hard|
|196|[Delete Duplicate Emails](https://leetcode.com/problems/delete-duplicate-emails/)|[sql](https://github.com/ejunjsh/leetcode/blob/master/sql/0196/delete-duplicate-emails.sql)|Easy|
|197|[Rising Temperature](https://leetcode.com/problems/rising-temperature/)|[sql](https://github.com/ejunjsh/leetcode/blob/master/sql/0197/rasingTemperature.sql)|Easy|
|262|[Trips and Users](https://leetcode.com/problems/trips-and-users/)|[sql](https://github.com/ejunjsh/leetcode/blob/master/sql/0262/TripsAndUsers.sql)|Hard|
|511|[💰 Game Play Analysis I](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0511/README.md)|[sql](https://github.com/ejunjsh/leetcode/blob/master/sql/0511/game.sql)|Easy|
|512|[💰 Game Play Analysis II](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0512/README.md)|[sql](https://github.com/ejunjsh/leetcode/blob/master/sql/0512/game.sql)|Easy|
|534|[💰 Game Play Analysis III](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0534/README.md)|[sql](https://github.com/ejunjsh/leetcode/blob/master/sql/0534/game.sql)|Medium|
|550|[💰 Game Play Analysis IV](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0550/README.md)|[sql](https://github.com/ejunjsh/leetcode/blob/master/sql/0550/game.sql)|Medium|
|569|[💰 Median Employee Salary](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0569/README.md)|[sql](https://github.com/ejunjsh/leetcode/blob/master/sql/0569/median.sql)|Hard|
|570|[💰 Managers with at Least 5 Direct Reports](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0570/README.md)|[sql](https://github.com/ejunjsh/leetcode/blob/master/sql/0570/manager.sql)|Medium|
|571|[💰 Find Median Given Frequency of Numbers](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0571/README.md)|[sql](https://github.com/ejunjsh/leetcode/blob/master/sql/0571/median.sql)|Hard|
|574|[💰 Winning Candidate](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0574/README.md)|[sql](https://github.com/ejunjsh/leetcode/blob/master/sql/0574/candidate.sql)|Medium|
|577|[💰 Employee Bonus](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0577/README.md)|[sql](https://github.com/ejunjsh/leetcode/blob/master/sql/0577/bonus.sql)|Easy|
|578|[💰 Get Highest Answer Rate Question](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0578/README.md)|[sql](https://github.com/ejunjsh/leetcode/blob/master/sql/0578/question.sql)|Medium|
|579|[💰 Find Cumulative Salary of an Employee](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0579/README.md)|[sql](https://github.com/ejunjsh/leetcode/blob/master/sql/0579/sum.sql)|Hard|
|580|[💰 Count Student Number in Departments](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0580/README.md)|[sql](https://github.com/ejunjsh/leetcode/blob/master/sql/0580/num.sql)|Medium|
|584|[💰 Find Customer Referee](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0584/README.md)|[sql](https://github.com/ejunjsh/leetcode/blob/master/sql/0584/customer.sql)|Easy|
|585|[💰 Investments in 2016](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0585/README.md)|[sql](https://github.com/ejunjsh/leetcode/blob/master/sql/0585/invest.sql)|Medium|
|586|[💰 Customer Placing the Largest Number of Orders](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0586/README.md)|[sql](https://github.com/ejunjsh/leetcode/blob/master/sql/0586/customer.sql)|Easy|
|595|[Big Countries](https://leetcode.com/problems/big-countries/)|[sql](https://github.com/ejunjsh/leetcode/blob/master/sql/0595/big_countries.sql)|Easy|
|596|[Classes More Than 5 Students](https://leetcode.com/problems/classes-more-than-5-students/)|[sql](https://github.com/ejunjsh/leetcode/blob/master/sql/0596/class.sql)|Easy|
|597|[💰 Friend Requests I: Overall Acceptance Rate](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0597/README.md)|[sql](https://github.com/ejunjsh/leetcode/blob/master/sql/0597/rate.sql)|Easy|## shell
| # | Title | Solution | Difficulty |
|---| ----- | -------- | ---------- |
|192|[Word Frequency](https://leetcode.com/problems/word-frequency/)|[shell](https://github.com/ejunjsh/leetcode/blob/master/shell/0192/wordCount.sh)|Medium|
|193|[Valid Phone Numbers](https://leetcode.com/problems/valid-phone-numbers/)|[shell](https://github.com/ejunjsh/leetcode/blob/master/shell/0193/awk.sh) [shell](https://github.com/ejunjsh/leetcode/blob/master/shell/0193/grep.sh) [shell](https://github.com/ejunjsh/leetcode/blob/master/shell/0193/sed.sh)|Easy|
|194|[Transpose File](https://leetcode.com/problems/transpose-file/)|[shell](https://github.com/ejunjsh/leetcode/blob/master/shell/0194/transpose.sh)|Medium|
|195|[Tenth Line](https://leetcode.com/problems/tenth-line/)|[shell](https://github.com/ejunjsh/leetcode/blob/master/shell/0195/awk.sh) [shell](https://github.com/ejunjsh/leetcode/blob/master/shell/0195/headtail.sh) [shell](https://github.com/ejunjsh/leetcode/blob/master/shell/0195/sed.sh)|Easy|## To do
* [Sudoku Solver](https://leetcode.com/problems/sudoku-solver/)
* [Word Ladder II](https://leetcode.com/problems/word-ladder-ii/)