{"id":18773927,"url":"https://github.com/ejunjsh/leetcode","last_synced_at":"2025-04-13T09:20:46.642Z","repository":{"id":61147579,"uuid":"160124292","full_name":"ejunjsh/leetcode","owner":"ejunjsh","description":"😄  (600/800) learn algorithms and learn c++ by the way","archived":false,"fork":false,"pushed_at":"2021-08-25T07:47:56.000Z","size":712,"stargazers_count":4,"open_issues_count":0,"forks_count":1,"subscribers_count":0,"default_branch":"master","last_synced_at":"2025-03-27T00:54:55.206Z","etag":null,"topics":["algorithm","cpp","learning-algorithm","leetcode","shell","sql"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ejunjsh.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2018-12-03T02:59:15.000Z","updated_at":"2023-01-18T19:37:19.000Z","dependencies_parsed_at":"2022-10-11T17:58:36.455Z","dependency_job_id":null,"html_url":"https://github.com/ejunjsh/leetcode","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ejunjsh%2Fleetcode","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ejunjsh%2Fleetcode/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ejunjsh%2Fleetcode/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ejunjsh%2Fleetcode/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ejunjsh","download_url":"https://codeload.github.com/ejunjsh/leetcode/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248689189,"owners_count":21145890,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["algorithm","cpp","learning-algorithm","leetcode","shell","sql"],"created_at":"2024-11-07T19:36:18.654Z","updated_at":"2025-04-13T09:20:46.606Z","avatar_url":"https://github.com/ejunjsh.png","language":"C++","readme":"# leetcode\n\n![](https://img.shields.io/badge/language-C++-red.svg)\n![](https://img.shields.io/badge/language-sql-purple.svg)\n![](https://img.shields.io/badge/language-shell-green.svg)\n![](https://tokei.rs/b1/github/ejunjsh/leetcode?category=code)\n\nlearn algorithms and learn c++ by the way\n\n__💰 means these problems are available for subscription user__\n\n## algorithms\n\n| # | Title | Solution | Difficulty |\n|---| ----- | -------- | ---------- |\n|1|[Two Sum](https://leetcode.com/problems/two-sum/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0001/twoSum.cpp)|Easy|\n|2|[Add Two Numbers](https://leetcode.com/problems/add-two-numbers/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0002/addTwoNumbers.cpp)|Medium|\n|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|\n|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|\n|5|[Longest Palindromic Substring](https://leetcode.com/problems/longest-palindromic-substring/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0005/longestPalindrome.cpp)|Medium|\n|6|[ZigZag Conversion](https://leetcode.com/problems/zigzag-conversion/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0006/zigZagConversion.cpp)|Medium|\n|7|[Reverse Integer](https://leetcode.com/problems/reverse-integer/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0007/reverseInteger.cpp)|Easy|\n|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|\n|9|[Palindrome Number](https://leetcode.com/problems/palindrome-number/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0009/isPalindrome.cpp)|Easy|\n|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|\n|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|\n|12|[Integer to Roman](https://leetcode.com/problems/integer-to-roman/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0012/integerToRoman.cpp)|Medium|\n|13|[Roman to Integer](https://leetcode.com/problems/roman-to-integer/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0013/romanToInteger.cpp)|Easy|\n|14|[Longest Common Prefix](https://leetcode.com/problems/longest-common-prefix/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0014/longestCommonPrefix.cpp)|Easy|\n|15|[3Sum](https://leetcode.com/problems/3sum/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0015/threeSum.cpp)|Medium|\n|16|[3Sum Closest](https://leetcode.com/problems/3sum-closest/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0016/threeSumClosest.cpp)|Medium|\n|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|\n|18|[4Sum](https://leetcode.com/problems/4sum/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0018/fourSum.cpp)|Medium|\n|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|\n|20|[Valid Parentheses](https://leetcode.com/problems/valid-parentheses/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0020/isValidParentheses.cpp)|Easy|\n|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|\n|22|[Generate Parentheses](https://leetcode.com/problems/generate-parentheses/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0022/generateParenthesis.cpp)|Medium|\n|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|\n|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|\n|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|\n|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|\n|27|[Remove Element](https://leetcode.com/problems/remove-element/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0027/removeElement.cpp)|Easy|\n|28|[Implement strStr()](https://leetcode.com/problems/implement-strstr/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0028/strStr.cpp)|Easy|\n|29|[Divide Two Integers](https://leetcode.com/problems/divide-two-integers/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0029/divide.cpp)|Medium|\n|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|\n|31|[Next Permutation](https://leetcode.com/problems/next-permutation/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0031/nextPermutation.cpp)|Medium|\n|32|[Longest Valid Parentheses](https://leetcode.com/problems/longest-valid-parentheses/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0032/longestValidParentheses.cpp)|Hard|\n|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|\n|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|\n|35|[Search Insert Position](https://leetcode.com/problems/search-insert-position/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0035/searchInsert.cpp)|Easy|\n|36|[Valid Sudoku](https://leetcode.com/problems/valid-sudoku/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0036/isValidSudoku.cpp)|Medium|\n|38|[Count and Say](https://leetcode.com/problems/count-and-say/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0038/countAndSay.cpp)|Easy|\n|39|[Combination Sum](https://leetcode.com/problems/combination-sum/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0039/combinationSum.cpp)|Medium|\n|40|[Combination Sum II](https://leetcode.com/problems/combination-sum-ii/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0040/combinationSum2.cpp)|Medium|\n|41|[First Missing Positive](https://leetcode.com/problems/first-missing-positive/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0041/firstMissingPositive.cpp)|Hard|\n|42|[Trapping Rain Water](https://leetcode.com/problems/trapping-rain-water/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0042/trap.cpp)|Hard|\n|43|[Multiply Strings](https://leetcode.com/problems/multiply-strings/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0043/multiply.cpp)|Medium|\n|44|[Wildcard Matching](https://leetcode.com/problems/wildcard-matching/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0044/isMatch.cpp)|Hard|\n|45|[Jump Game II](https://leetcode.com/problems/jump-game-ii/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0045/jump.cpp)|Hard|\n|46|[Permutations](https://leetcode.com/problems/permutations/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0046/permute.cpp)|Medium|\n|47|[Permutations II](https://leetcode.com/problems/permutations-ii/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0047/permuteUnique.cpp)|Medium|\n|48|[Rotate Image](https://leetcode.com/problems/rotate-image/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0048/rotate.cpp)|Medium|\n|49|[Group Anagrams](https://leetcode.com/problems/group-anagrams/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0049/groupAnagrams.cpp)|Medium|\n|50|[Pow(x, n)](https://leetcode.com/problems/powx-n/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0050/myPow.cpp)|Medium|\n|51|[N-Queens](https://leetcode.com/problems/n-queens/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0051/solveNQueens.cpp)|Hard|\n|52|[N-Queens II](https://leetcode.com/problems/n-queens-ii/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0052/totalNQueens.cpp)|Hard|\n|53|[Maximum Subarray](https://leetcode.com/problems/maximum-subarray/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0053/maxSubArray.cpp)|Easy|\n|54|[Spiral Matrix](https://leetcode.com/problems/spiral-matrix/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0054/spiralOrder.cpp)|Medium|\n|55|[Jump Game](https://leetcode.com/problems/jump-game/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0055/canJump.cpp)|Medium|\n|56|[Merge Intervals](https://leetcode.com/problems/merge-intervals/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0056/mergeInterval.cpp)|Medium|\n|57|[Insert Interval](https://leetcode.com/problems/insert-interval/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0057/mergeInsert.cpp)|Hard|\n|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|\n|59|[Spiral Matrix II](https://leetcode.com/problems/spiral-matrix-ii/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0059/generateMatrix.cpp)|Medium|\n|60|[Permutation Sequence](https://leetcode.com/problems/permutation-sequence/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0060/getPermutation.cpp)|Medium|\n|61|[Rotate List](https://leetcode.com/problems/rotate-list/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0061/rotateRight.cpp)|Medium|\n|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|\n|63|[Unique Paths II](https://leetcode.com/problems/unique-paths-ii/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0063/uniquePathsWithObstacles.cpp)|Medium|\n|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|\n|65|[Valid Number](https://leetcode.com/problems/valid-number/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0065/validNumber.cpp)|Hard|\n|66|[Plus One](https://leetcode.com/problems/plus-one/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0066/plusOne.cpp)|Easy|\n|67|[Add Binary](https://leetcode.com/problems/add-binary/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0067/addBinary.cpp)|Easy|\n|68|[Text Justification](https://leetcode.com/problems/text-justification/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0068/fullJustify.cpp)|Hard|\n|69|[Sqrt(x)](https://leetcode.com/problems/sqrtx/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0069/mySqrt.cpp)|Easy|\n|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|\n|71|[Simplify Path](https://leetcode.com/problems/simplify-path/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0071/simplifyPath.cpp)|Medium|\n|72|[Edit Distance](https://leetcode.com/problems/edit-distance/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0072/minDistance.cpp)|Hard|\n|73|[Set Matrix Zeroes](https://leetcode.com/problems/set-matrix-zeroes/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0073/setZeroes.cpp)|Medium|\n|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|\n|75|[Sort Colors](https://leetcode.com/problems/sort-colors/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0075/sortColors.cpp)|Medium|\n|76|[Minimum Window Substring](https://leetcode.com/problems/minimum-window-substring/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0076/minWindow.cpp)|Hard|\n|77|[Combinations](https://leetcode.com/problems/combinations/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0077/combinations.cpp)|Medium|\n|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|\n|79|[Word Search](https://leetcode.com/problems/word-search/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0079/wordSearch.cpp)|Medium|\n|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|\n|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|\n|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|\n|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|\n|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|\n|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|\n|86|[Partition List](https://leetcode.com/problems/partition-list/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0086/partitionList.cpp)|Medium|\n|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|\n|88|[Merge Sorted Array](https://leetcode.com/problems/merge-sorted-array/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0088/mergeSortedArray.cpp)|Easy|\n|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|\n|90|[Subsets II](https://leetcode.com/problems/subsets-ii/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0090/subsetsWithDup.cpp)|Medium|\n|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|\n|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|\n|93|[Restore IP Addresses](https://leetcode.com/problems/restore-ip-addresses/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0093/restoreIpAddresses.cpp)|Medium|\n|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|\n|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|\n|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|\n|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|\n|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|\n|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|\n|100|[Same Tree](https://leetcode.com/problems/same-tree/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0100/isSameTree.cpp)|Easy|\n|101|[Symmetric Tree](https://leetcode.com/problems/symmetric-tree/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0101/isSymmetric.cpp)|Easy|\n|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|\n|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|\n|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|\n|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|\n|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|\n|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|\n|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|\n|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|\n|110|[Balanced Binary Tree](https://leetcode.com/problems/balanced-binary-tree/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0110/isBalanced.cpp)|Easy|\n|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|\n|112|[Path Sum](https://leetcode.com/problems/path-sum/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0112/hasPathSum.cpp)|Easy|\n|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|\n|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|\n|115|[Distinct Subsequences](https://leetcode.com/problems/distinct-subsequences/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0115/numDistinct.cpp)|Hard|\n|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|\n|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|\n|118|[Pascal's Triangle](https://leetcode.com/problems/pascals-triangle/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0118/pascalTriangle.cpp)|Easy|\n|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|\n|120|[Triangle](https://leetcode.com/problems/triangle/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0120/minimumTotal.cpp)|Medium|\n|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|\n|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|\n|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|\n|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|\n|125|[Valid Palindrome](https://leetcode.com/problems/valid-palindrome/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0125/isPalindrome.cpp)|Easy|\n|127|[Word Ladder](https://leetcode.com/problems/word-ladder/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0127/ladderLength.cpp)|Medium|\n|128|[Longest Consecutive Sequence](https://leetcode.com/problems/longest-consecutive-sequence/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0128/longestConsecutive.cpp)|Hard|\n|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|\n|130|[Surrounded Regions](https://leetcode.com/problems/surrounded-regions/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0130/surroundedRegions.cpp)|Medium|\n|131|[Palindrome Partitioning](https://leetcode.com/problems/palindrome-partitioning/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0131/partition.cpp)|Medium|\n|132|[Palindrome Partitioning II](https://leetcode.com/problems/palindrome-partitioning-ii/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0132/minCut.cpp)|Hard|\n|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|\n|134|[Gas Station](https://leetcode.com/problems/gas-station/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0134/canCompleteCircuit.cpp)|Medium|\n|135|[Candy](https://leetcode.com/problems/candy/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0135/candy.cpp)|Hard|\n|136|[Single Number](https://leetcode.com/problems/single-number/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0136/singleNumber.cpp)|Easy|\n|137|[Single Number II](https://leetcode.com/problems/single-number-ii/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0137/singleNumber2.cpp)|Easy|\n|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|\n|139|[Word Break](https://leetcode.com/problems/word-break/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0139/wordBreak.cpp)|Medium|\n|140|[Word Break II](https://leetcode.com/problems/word-break-ii/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0140/wordBreak2.cpp)|Hard|\n|141|[Linked List Cycle](https://leetcode.com/problems/linked-list-cycle/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0141/hasCycle.cpp)|Easy|\n|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|\n|143|[Reorder List](https://leetcode.com/problems/reorder-list/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0143/reorderList.cpp)|Medium|\n|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|\n|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|\n|146|[LRU Cache](https://leetcode.com/problems/lru-cache/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0146/LRUCache.cpp)|Hard|\n|147|[Insertion Sort List](https://leetcode.com/problems/insertion-sort-list/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0147/insertionSortList.cpp)|Medium|\n|148|[Sort List](https://leetcode.com/problems/sort-list/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0148/sortList.cpp)|Medium|\n|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|\n|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|\n|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|\n|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|\n|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|\n|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|\n|155|[Min Stack](https://leetcode.com/problems/min-stack/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0155/minStack.cpp)|Easy|\n|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|\n|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|\n|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|\n|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|\n|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|\n|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|\n|162|[Find Peak Element](https://leetcode.com/problems/find-peak-element/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0162/findPeakElement.cpp)|Medium|\n|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|\n|164|[Maximum Gap](https://leetcode.com/problems/maximum-gap/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0164/maximumGap.cpp)|Hard|\n|165|[Compare Version Numbers](https://leetcode.com/problems/compare-version-numbers/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0165/compareVersion.cpp)|Medium|\n|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|\n|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|\n|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|\n|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|\n|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|\n|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|\n|172|[Factorial Trailing Zeroes](https://leetcode.com/problems/factorial-trailing-zeroes/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0172/trailingZeroes.cpp)|Easy|\n|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|\n|174|[Dungeon Game](https://leetcode.com/problems/dungeon-game/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0174/calculateMinimumHP.cpp)|Hard|\n|179|[Largest Number](https://leetcode.com/problems/largest-number/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0179/largestNumber.cpp)|Medium|\n|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|\n|187|[Repeated DNA Sequences](https://leetcode.com/problems/repeated-dna-sequences/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0187/findRepeatedDnaSequences.cpp)|Medium|\n|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|\n|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|\n|190|[Reverse Bits](https://leetcode.com/problems/reverse-bits/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0190/reverseBits.cpp)|Easy|\n|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|\n|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|\n|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|\n|200|[Number of Islands](https://leetcode.com/problems/number-of-islands/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0200/numIslands.cpp)|Medium|\n|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|\n|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|\n|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|\n|204|[Count Primes](https://leetcode.com/problems/count-primes/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0204/countPrimes.cpp)|Easy|\n|205|[Isomorphic Strings](https://leetcode.com/problems/isomorphic-strings/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0205/isIsomorphic.cpp)|Easy|\n|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|\n|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|\n|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|\n|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|\n|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|\n|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|\n|212|[Word Search II](https://leetcode.com/problems/word-search-ii/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0212/findWords.cpp)|Hard|\n|213|[House Robber II](https://leetcode.com/problems/house-robber-ii/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0213/rob.cpp)|Medium|\n|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|\n|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|\n|216|[Combination Sum III](https://leetcode.com/problems/combination-sum-iii/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0216/combinationSum3.cpp)|Medium|\n|217|[Contains Duplicate](https://leetcode.com/problems/contains-duplicate/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0217/containsDuplicate.cpp)|Easy|\n|218|[The Skyline Problem](https://leetcode.com/problems/the-skyline-problem/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0218/getSkyline.cpp)|Hard|\n|219|[Contains Duplicate II](https://leetcode.com/problems/contains-duplicate-ii/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0219/containsNearbyDuplicate.cpp)|Easy|\n|220|[Contains Duplicate III](https://leetcode.com/problems/contains-duplicate-iii/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0220/containsNearbyAlmostDuplicate.cpp)|Medium|\n|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|\n|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|\n|223|[Rectangle Area](https://leetcode.com/problems/rectangle-area/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0223/computeArea.cpp)|Medium|\n|224|[Basic Calculator](https://leetcode.com/problems/basic-calculator/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0224/calculate.cpp)|Hard|\n|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|\n|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|\n|227|[Basic Calculator II](https://leetcode.com/problems/basic-calculator-ii/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0227/calculate.cpp)|Medium|\n|228|[Summary Ranges](https://leetcode.com/problems/summary-ranges/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0228/summaryRanges.cpp)|Medium|\n|229|[Majority Element II](https://leetcode.com/problems/majority-element-ii/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0229/majorityElement.cpp)|Medium|\n|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|\n|231|[Power of Two](https://leetcode.com/problems/power-of-two/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0231/isPowerOfTwo.cpp)|Easy|\n|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|\n|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|\n|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|\n|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|\n|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|\n|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|\n|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|\n|239|[Sliding Window Maximum](https://leetcode.com/problems/sliding-window-maximum/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0239/maxSlidingWindow.cpp)|Hard|\n|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|\n|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|\n|242|[Valid Anagram](https://leetcode.com/problems/valid-anagram/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0242/isAnagram.cpp)|Easy|\n|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|\n|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|\n|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|\n|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|\n|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|\n|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|\n|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|\n|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|\n|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|\n|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|\n|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|\n|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|\n|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|\n|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|\n|257|[Binary Tree Paths](https://leetcode.com/problems/binary-tree-paths/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0257/binaryTreePaths.cpp)|Easy|\n|258|[Add Digits](https://leetcode.com/problems/add-digits/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0258/addDigits.cpp)|Easy|\n|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|\n|260|[Single Number III](https://leetcode.com/problems/single-number-iii/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0260/singleNumber.cpp)|Medium|\n|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|\n|263|[Ugly Number](https://leetcode.com/problems/ugly-number/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0263/isUgly.cpp)|Easy|\n|264|[Ugly Number II](https://leetcode.com/problems/ugly-number-ii/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0264/nthUglyNumber.cpp)|Medium|\n|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|\n|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|\n|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|\n|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|\n|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|\n|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|\n|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|\n|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|\n|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|\n|274|[H-Index](https://leetcode.com/problems/h-index/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0274/hIndex.cpp)|Medium|\n|275|[H-Index II](https://leetcode.com/problems/h-index-ii/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0275/hIndex.cpp)|Medium|\n|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|\n|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|\n|278|[First Bad Version](https://leetcode.com/problems/first-bad-version/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0278/firstBadVersion.cpp)|Easy|\n|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|\n|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|\n|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|\n|282|[Expression Add Operators](https://leetcode.com/problems/expression-add-operators/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0282/addOperators.cpp)|Hard|\n|283|[Move Zeroes](https://leetcode.com/problems/move-zeroes/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0283/moveZeroes.cpp)|Easy|\n|284|[Peeking Iterator](https://leetcode.com/problems/peeking-iterator/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0284/PeekingIterator.cpp)|Medium|\n|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|\n|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|\n|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|\n|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|\n|289|[Game of Life](https://leetcode.com/problems/game-of-life/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0289/gameOfLife.cpp)|Medium|\n|290|[Word Pattern](https://leetcode.com/problems/word-pattern/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0290/wordPattern.cpp)|Easy|\n|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|\n|292|[Nim Game](https://leetcode.com/problems/nim-game/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0292/canWinNim.cpp)|Easy|\n|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|\n|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|\n|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|\n|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|\n|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|\n|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|\n|299|[Bulls and Cows](https://leetcode.com/problems/bulls-and-cows/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0299/getHint.cpp)|Medium|\n|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|\n|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|\n|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|\n|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|\n|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|\n|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|\n|306|[Additive Number](https://leetcode.com/problems/additive-number/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0306/isAdditiveNumber.cpp)|Medium|\n|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|\n|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|\n|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|\n|310|[Minimum Height Trees](https://leetcode.com/problems/minimum-height-trees/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0310/findMinHeightTrees.cpp)|Medium|\n|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|\n|312|[Burst Balloons](https://leetcode.com/problems/burst-balloons/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0312/maxCoins.cpp)|Hard|\n|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|\n|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|\n|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|\n|316|[Remove Duplicate Letters](https://leetcode.com/problems/remove-duplicate-letters/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0316/removeDuplicateLetters.cpp)|Hard|\n|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|\n|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|\n|319|[Bulb Switcher](https://leetcode.com/problems/bulb-switcher/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0319/bulbSwitch.cpp)|Medium|\n|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|\n|321|[Create Maximum Number](https://leetcode.com/problems/create-maximum-number/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0321/maxNumber.cpp)|Hard|\n|322|[Coin Change](https://leetcode.com/problems/coin-change/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0322/coinChange.cpp)|Medium|\n|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|\n|324|[Wiggle Sort II](https://leetcode.com/problems/wiggle-sort-ii/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0324/wiggleSort.cpp)|Medium|\n|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|\n|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|\n|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|\n|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|\n|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|\n|330|[Patching Array](https://leetcode.com/problems/patching-array/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0330/minPatches.cpp)|Hard|\n|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|\n|332|[Reconstruct Itinerary](https://leetcode.com/problems/reconstruct-itinerary/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0332/findItinerary.cpp)|Medium|\n|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|\n|334|[Increasing Triplet Subsequence](https://leetcode.com/problems/increasing-triplet-subsequence/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0334/increasingTriplet.cpp)|Medium|\n|335|[Self Crossing](https://leetcode.com/problems/self-crossing/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0335/isSelfCrossing.cpp)|Hard|\n|336|[Palindrome Pairs](https://leetcode.com/problems/palindrome-pairs/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0336/palindromePairs.cpp)|Hard|\n|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|\n|338|[Counting Bits](https://leetcode.com/problems/counting-bits/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0338/countBits.cpp)|Medium|\n|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|\n|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|\n|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|\n|342|[Power of Four](https://leetcode.com/problems/power-of-four/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0342/isPowerOfFour.cpp)|Easy|\n|343|[Integer Break](https://leetcode.com/problems/integer-break/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0343/integerBreak.cpp)|Medium|\n|344|[Reverse String](https://leetcode.com/problems/reverse-string/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0344/reverseString.cpp)|Easy|\n|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|\n|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|\n|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|\n|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|\n|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|\n|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|\n|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|\n|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|\n|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|\n|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|\n|355|[Design Twitter](https://leetcode.com/problems/design-twitter/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0355/Twitter.cpp)|Medium|\n|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|\n|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|\n|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|\n|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|\n|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|\n|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|\n|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|\n|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|\n|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|\n|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|\n|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|\n|367|[Valid Perfect Square](https://leetcode.com/problems/valid-perfect-square/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0367/isPerfectSquare.cpp)|Easy|\n|368|[Largest Divisible Subset](https://leetcode.com/problems/largest-divisible-subset/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0368/largestDivisibleSubset.cpp)|Medium|\n|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|\n|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|\n|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|\n|372|[Super Pow](https://leetcode.com/problems/super-pow/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0372/superPow.cpp)|Medium|\n|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|\n|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|\n|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|\n|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|\n|377|[Combination Sum IV](https://leetcode.com/problems/combination-sum-iv/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0377/combinationSum4.cpp)|Medium|\n|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|\n|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|\n|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|\n|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|\n|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|\n|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|\n|384|[Shuffle an Array](https://leetcode.com/problems/shuffle-an-array/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0384/shuffle.cpp)|Medium|\n|385|[Mini Parser](https://leetcode.com/problems/mini-parser/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0385/NestedInteger.cpp)|Medium|\n|386|[Lexicographical Numbers](https://leetcode.com/problems/lexicographical-numbers/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0386/lexicalOrder.cpp)|Medium|\n|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|\n|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|\n|389|[Find the Difference](https://leetcode.com/problems/find-the-difference/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0389/findTheDifference.cpp)|Easy|\n|390|[Elimination Game](https://leetcode.com/problems/elimination-game/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0390/lastRemaining.cpp)|Medium|\n|391|[Perfect Rectangle](https://leetcode.com/problems/perfect-rectangle/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0391/isRectangleCover.cpp)|Hard|\n|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|\n|393|[UTF-8 Validation](https://leetcode.com/problems/utf-8-validation/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0393/validUtf8.cpp)|Medium|\n|394|[Decode String](https://leetcode.com/problems/decode-string/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0394/decodeString.cpp)|Medium|\n|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|\n|396|[Rotate Function](https://leetcode.com/problems/rotate-function/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0396/maxRotateFunction.cpp)|Medium|\n|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|\n|398|[Random Pick Index](https://leetcode.com/problems/random-pick-index/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0398/pick.cpp)|Medium|\n|399|[Evaluate Division](https://leetcode.com/problems/evaluate-division/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0399/calcEquation.cpp)|Medium|\n|400|[Nth Digit](https://leetcode.com/problems/nth-digit/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0400/findNthDigit.cpp)|Medium|\n|401|[Binary Watch](https://leetcode.com/problems/binary-watch/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0401/readBinaryWatch.cpp)|Easy|\n|402|[Remove K Digits](https://leetcode.com/problems/remove-k-digits/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0402/removeKdigits.cpp)|Medium|\n|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|\n|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|\n|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|\n|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|\n|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|\n|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|\n|409|[Longest Palindrome](https://leetcode.com/problems/longest-palindrome/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0409/longestPalindrome.cpp)|Easy|\n|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|\n|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|\n|412|[Fizz Buzz](https://leetcode.com/problems/fizz-buzz/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0412/fizzbuzz.cpp)|Easy|\n|413|[Arithmetic Slices](https://leetcode.com/problems/arithmetic-slices/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0413/numberOfArithmeticSlices.cpp)|Medium|\n|414|[Third Maximum Number](https://leetcode.com/problems/third-maximum-number/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0414/thirdMax.cpp)|Easy|\n|415|[Add Strings](https://leetcode.com/problems/add-strings/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0415/addStrings.cpp)|Easy|\n|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|\n|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|\n|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|\n|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|\n|420|[Strong Password Checker](https://leetcode.com/problems/strong-password-checker/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0420/strongPasswordChecker.cpp)|Hard|\n|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|\n|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|\n|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|\n|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|\n|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|\n|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|\n|427|[Construct Quad Tree](https://leetcode.com/problems/construct-quad-tree/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0427/QuadTree.cpp)|Medium|\n|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|\n|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|\n|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|\n|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|\n|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|\n|433|[Minimum Genetic Mutation](https://leetcode.com/problems/minimum-genetic-mutation/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0433/minMutation.cpp)|Medium|\n|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|\n|435|[Non-overlapping Intervals](https://leetcode.com/problems/non-overlapping-intervals/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0435/eraseOverlapIntervals.cpp)|Medium|\n|436|[Find Right Interval](https://leetcode.com/problems/find-right-interval/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0436/findRightInterval.cpp)|Medium|\n|437|[Path Sum III](https://leetcode.com/problems/path-sum-iii/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0437/pathSum.cpp)|Easy|\n|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|\n|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|\n|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|\n|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|\n|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|\n|443|[String Compression](https://leetcode.com/problems/string-compression/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0443/compress.cpp)|Easy|\n|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|\n|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|\n|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|\n|447|[Number of Boomerangs](https://leetcode.com/problems/number-of-boomerangs/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0447/numberOfBoomerangs.cpp)|Easy|\n|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|\n|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|\n|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|\n|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|\n|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|\n|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|\n|454|[4Sum II](https://leetcode.com/problems/4sum-ii/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0454/fourSumCount.cpp)|Medium|\n|455|[Assign Cookies](https://leetcode.com/problems/assign-cookies/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0455/findContentChildren.cpp)|Easy|\n|456|[132 Pattern](https://leetcode.com/problems/132-pattern/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0456/find132pattern.cpp)|Medium|\n|457|[Circular Array Loop](https://leetcode.com/problems/circular-array-loop/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0457/circularArrayLoop.cpp)|Medium|\n|458|[Poor Pigs](https://leetcode.com/problems/poor-pigs/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0458/poorPigs.cpp)|Hard|\n|459|[Repeated Substring Pattern](https://leetcode.com/problems/repeated-substring-pattern/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0459/repeatedSubstringPattern.cpp)|Easy|\n|460|[LFU Cache](https://leetcode.com/problems/lfu-cache/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0460/LFUCache.cpp)|Hard|\n|461|[Hamming Distance](https://leetcode.com/problems/hamming-distance/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0461/hammingDistance.cpp)|Easy|\n|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|\n|463|[Island Perimeter](https://leetcode.com/problems/island-perimeter/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0463/islandPerimeter.cpp)|Easy|\n|464|[Can I Win](https://leetcode.com/problems/can-i-win/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0464/canIWin.cpp)|Medium|\n|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|\n|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|\n|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|\n|468|[Validate IP Address](https://leetcode.com/problems/validate-ip-address/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0468/validIPAddress.cpp)|Medium|\n|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|\n|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|\n|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|\n|472|[Concatenated Words](https://leetcode.com/problems/concatenated-words/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0472/findAllConcatenatedWordsInADict.cpp)|Hard|\n|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|\n|474|[Ones and Zeroes](https://leetcode.com/problems/ones-and-zeroes/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0474/findMaxForm.cpp)|Medium|\n|475|[Heaters](https://leetcode.com/problems/heaters/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0475/findRadius.cpp)|Easy|\n|476|[Number Complement](https://leetcode.com/problems/number-complement/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0476/findComplement.cpp)|Easy|\n|477|[Total Hamming Distance](https://leetcode.com/problems/total-hamming-distance/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0477/totalHammingDistance.cpp)|Medium|\n|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|\n|479|[Largest Palindrome Product](https://leetcode.com/problems/largest-palindrome-product/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0479/largestPalindrome.cpp)|Hard|\n|480|[Sliding Window Median](https://leetcode.com/problems/sliding-window-median/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0480/medianSlidingWindow.cpp)|Hard|\n|481|[Magical String](https://leetcode.com/problems/magical-string/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0481/magicalString.cpp)|Medium|\n|482|[License Key Formatting](https://leetcode.com/problems/license-key-formatting/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0482/licenseKeyFormatting.cpp)|Easy|\n|483|[Smallest Good Base](https://leetcode.com/problems/smallest-good-base/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0483/smallestGoodBase.cpp)|Hard|\n|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|\n|485|[Max Consecutive Ones](https://leetcode.com/problems/max-consecutive-ones/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0485/findMaxConsecutiveOnes.cpp)|Easy|\n|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|\n|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|\n|488|[Zuma Game](https://leetcode.com/problems/zuma-game/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0488/findMinStep.cpp)|Hard|\n|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|\n|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|\n|491|[Increasing Subsequences](https://leetcode.com/problems/increasing-subsequences/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0491/findSubsequences.cpp)|Medium|\n|492|[Construct the Rectangle](https://leetcode.com/problems/construct-the-rectangle/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0492/constructRectangle.cpp)|Easy|\n|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|\n|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|\n|495|[Teemo Attacking](https://leetcode.com/problems/teemo-attacking/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0495/findPoisonedDuration.cc)|Medium|\n|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|\n|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|\n|498|[Diagonal Traverse](https://leetcode.com/problems/diagonal-traverse/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0498/findDiagonalOrder.cc)|Medium|\n|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|\n|500|[Keyboard Row](https://leetcode.com/problems/keyboard-row/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0500/findWords.cc)|Easy|\n|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|\n|502|[IPO](https://leetcode.com/problems/ipo/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0502/findMaximizedCapital.cc)|Hard|\n|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|\n|504|[Base 7](https://leetcode.com/problems/base-7/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0504/convertToBase7.cc)|Easy|\n|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|\n|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|\n|507|[Perfect Number](https://leetcode.com/problems/perfect-number/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0507/checkPerfectNumber.cc)|Easy|\n|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|\n|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|\n|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|\n|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|\n|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|\n|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|\n|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|\n|517|[Super Washing Machines](https://leetcode.com/problems/super-washing-machines/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0517/findMinMoves.cc)|Hard|\n|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|\n|519|[Random Flip Matrix](https://leetcode.com/problems/random-flip-matrix/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0519/flip.cc)|Medium|\n|520|[Detect Capital](https://leetcode.com/problems/detect-capital/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0520/detectCapitalUse.cc)|Easy|\n|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|\n|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|\n|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|\n|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|\n|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|\n|526|[Beautiful Arrangement](https://leetcode.com/problems/beautiful-arrangement/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0526/countArrangement.cc)|Medium|\n|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|\n|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|\n|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|\n|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|\n|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|\n|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|\n|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|\n|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|\n|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|\n|537|[Complex Number Multiplication](https://leetcode.com/problems/complex-number-multiplication/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0537/complexNumberMultiply.cc)|Medium|\n|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|\n|539|[Minimum Time Difference](https://leetcode.com/problems/minimum-time-difference/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0539/findMinDifference.cc)|Medium|\n|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|\n|541|[Reverse String II](https://leetcode.com/problems/reverse-string-ii/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0541/reverseStr.cc)|Easy|\n|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|\n|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|\n|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|\n|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|\n|546|[Remove Boxes](https://leetcode.com/problems/remove-boxes/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0546/removeBoxes.cc)|Hard|\n|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|\n|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|\n|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|\n|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|\n|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|\n|553|[Optimal Division](https://leetcode.com/problems/optimal-division/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0553/optimalDivision.cc)|Medium|\n|554|[Brick Wall](https://leetcode.com/problems/brick-wall/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0554/leastBricks.cc)|Medium|\n|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|\n|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|\n|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|\n|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|\n|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|\n|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|\n|561|[Array Partition I](https://leetcode.com/problems/array-partition-i/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0561/arrayPairSum.cc)|Easy|\n|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|\n|563|[Binary Tree Tilt](https://leetcode.com/problems/binary-tree-tilt/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0563/findTilt.cc)|Easy|\n|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|\n|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|\n|566|[Reshape the Matrix](https://leetcode.com/problems/reshape-the-matrix/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0566/matrixReshape.cc)|Easy|\n|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|\n|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|\n|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|\n|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|\n|575|[Distribute Candies](https://leetcode.com/problems/distribute-candies/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0575/distributeCandies.cc)|Easy|\n|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|\n|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|\n|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|\n|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|\n|587|[Erect the Fence](https://leetcode.com/problems/erect-the-fence/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0587/outerTrees.cc)|Hard|\n|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|\n|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|\n|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|\n|591|[Tag Validator](https://leetcode.com/problems/tag-validator/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0591/tagValidator.cc)|Hard|\n|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|\n|593|[Valid Square](https://leetcode.com/problems/valid-square/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0593/validSquare.cc)|Medium|\n|594|[Longest Harmonious Subsequence](https://leetcode.com/problems/longest-harmonious-subsequence/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0594/findLHS.cc)|Easy|\n|598|[Range Addition II](https://leetcode.com/problems/range-addition-ii/)|[C++](https://github.com/ejunjsh/leetcode/blob/master/algorithms/0598/maxCount.cc)|Easy|\n|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|\n|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|\n\n## sql\n\n| # | Title | Solution | Difficulty |\n|---| ----- | -------- | ---------- |\n|175|[Combine Two Tables](https://leetcode.com/problems/combine-two-tables/)|[sql](https://github.com/ejunjsh/leetcode/blob/master/sql/0175/combineTwoTables.sql)|Easy|\n|176|[Second Highest Salary](https://leetcode.com/problems/second-highest-salary/)|[sql](https://github.com/ejunjsh/leetcode/blob/master/sql/0176/secondHighestSalary.sql)|Easy|\n|177|[Nth Highest Salary](https://leetcode.com/problems/nth-highest-salary/)|[sql](https://github.com/ejunjsh/leetcode/blob/master/sql/0177/getNthHighestSalary.sql)|Medium|\n|178|[Rank Scores](https://leetcode.com/problems/rank-scores/)|[sql](https://github.com/ejunjsh/leetcode/blob/master/sql/0178/rankScores.sql)|Medium|\n|180|[Consecutive Numbers](https://leetcode.com/problems/consecutive-numbers/)|[sql](https://github.com/ejunjsh/leetcode/blob/master/sql/0180/ConsecutiveNums.sql)|Medium|\n|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|\n|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|\n|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|\n|184|[Department Highest Salary](https://leetcode.com/problems/department-highest-salary/)|[sql](https://github.com/ejunjsh/leetcode/blob/master/sql/0184/highestSalary.sql)|Medium|\n|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|\n|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|\n|197|[Rising Temperature](https://leetcode.com/problems/rising-temperature/)|[sql](https://github.com/ejunjsh/leetcode/blob/master/sql/0197/rasingTemperature.sql)|Easy|\n|262|[Trips and Users](https://leetcode.com/problems/trips-and-users/)|[sql](https://github.com/ejunjsh/leetcode/blob/master/sql/0262/TripsAndUsers.sql)|Hard|\n|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|\n|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|\n|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|\n|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|\n|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|\n|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|\n|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|\n|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|\n|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|\n|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|\n|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|\n|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|\n|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|\n|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|\n|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|\n|595|[Big Countries](https://leetcode.com/problems/big-countries/)|[sql](https://github.com/ejunjsh/leetcode/blob/master/sql/0595/big_countries.sql)|Easy|\n|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|\n|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|\n\n## shell\n\n| # | Title | Solution | Difficulty |\n|---| ----- | -------- | ---------- |\n|192|[Word Frequency](https://leetcode.com/problems/word-frequency/)|[shell](https://github.com/ejunjsh/leetcode/blob/master/shell/0192/wordCount.sh)|Medium|\n|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|\n|194|[Transpose File](https://leetcode.com/problems/transpose-file/)|[shell](https://github.com/ejunjsh/leetcode/blob/master/shell/0194/transpose.sh)|Medium|\n|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|\n\n\n## To do\n\n* [Sudoku Solver](https://leetcode.com/problems/sudoku-solver/)\n* [Word Ladder II](https://leetcode.com/problems/word-ladder-ii/)\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fejunjsh%2Fleetcode","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fejunjsh%2Fleetcode","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fejunjsh%2Fleetcode/lists"}