{"id":13398729,"url":"https://github.com/soapyigu/LeetCode-Swift","last_synced_at":"2025-03-14T02:31:33.524Z","repository":{"id":37773755,"uuid":"55123440","full_name":"soapyigu/LeetCode-Swift","owner":"soapyigu","description":"Solutions to LeetCode by Swift","archived":false,"fork":false,"pushed_at":"2024-05-18T11:02:25.000Z","size":13111,"stargazers_count":4868,"open_issues_count":40,"forks_count":885,"subscribers_count":167,"default_branch":"master","last_synced_at":"2024-10-29T15:03:54.087Z","etag":null,"topics":["algorithm","data-structures","interview","leetcode","swift"],"latest_commit_sha":null,"homepage":"","language":"Swift","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/soapyigu.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"License.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-03-31T05:42:24.000Z","updated_at":"2024-10-28T22:50:36.000Z","dependencies_parsed_at":"2024-09-21T06:00:35.854Z","dependency_job_id":"31291af2-0126-4f4c-bd1d-de3745a78dd1","html_url":"https://github.com/soapyigu/LeetCode-Swift","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/soapyigu%2FLeetCode-Swift","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/soapyigu%2FLeetCode-Swift/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/soapyigu%2FLeetCode-Swift/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/soapyigu%2FLeetCode-Swift/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/soapyigu","download_url":"https://codeload.github.com/soapyigu/LeetCode-Swift/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243511660,"owners_count":20302595,"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","data-structures","interview","leetcode","swift"],"created_at":"2024-07-30T19:00:31.147Z","updated_at":"2025-03-14T02:31:32.324Z","avatar_url":"https://github.com/soapyigu.png","language":"Swift","readme":"# LeetCode by Swift\n[LeetCode Online Judge](https://leetcode.com/) is a website containing many **algorithm questions**. Most of them are real interview questions of **Google, Facebook, LinkedIn, Apple**, etc. This repo shows my solutions by Swift with the code style strictly follows the [RayWenderlich Swift Style Guide](https://github.com/raywenderlich/swift-style-guide). Please feel free to reference and **STAR** to support this repo, thank you!\n\n![Leetcode](./logo.png?style=centerme)\n\n## Progress\n[Problem Status](#problem-status) shows the latest progress to all 1000+ questions. Currently we have 400+ completed solutions. Note: questions with \u0026hearts; mark means that you have to **Subscript to premium membership** of LeetCode to unlock them.\n\n## Contributors\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"./Leetcode_Contributors.png\"\u003e\n\u003c/p\u003e\n\n## Data Structures\n* [Array](#array)\n* [String](#string)\n* [Linked List](#linked-list)\n* [Stack](#stack)\n* [Queue](#queue)\n* [Tree](#tree)\n* [Dynamic programming](#dynamic-programming)\n* [Depth-first search](#depth-first-search)\n* [Breadth-first search](#breadth-first-search)\n* [Math](#math)\n* [Search](#search)\n* [Sort](#sort)\n* [Graph](#graph)\n* [Design](#design)\n\n## Companies\n* [Google](#google)\n* [Facebook](#facebook)\n* [Snapchat](#snapchat)\n* [Uber](#uber)\n* [Airbnb](#airbnb)\n* [LinkedIn](#linkedin)\n* [Amazon](#amazon)\n* [Microsoft](#microsoft)\n\n\n## Array\n| Title | Solution | Difficulty | Time | Space |\n| ----- | -------- | ---------- | ---- | ----- |\n[Verify an Alien Dictionary](https://leetcode.com/problems/verifying-an-alien-dictionary/)|[Swift](Array/VerifyingAlienDictionary.swift)| Easy| O(n)| O(n)|\n[Sort Array By Parity](https://leetcode.com/problems/sort-array-by-parity/)|[Swift](Array/SortArrayByParity.swift)| Easy| O(n)| O(n)|\n[Max Consecutive Ones](https://leetcode.com/problems/max-consecutive-ones/)| [Swift](./Array/MaxConsecutiveOnes.swift)| Easy| O(n)| O(1)|\n[Heaters](https://leetcode.com/problems/heaters/)| [Swift](./Array/Heaters.swift)| Easy| O(nlogn)| O(1)|\n[Number of Boomerangs](https://leetcode.com/problems/number-of-boomerangs/)| [Swift](./Array/NumberBoomerangs.swift)| Easy| O(n ^ 2)| O(n)|\n[Island Perimeter](https://leetcode.com/problems/island-perimeter/)| [Swift](./Array/IslandPerimeter.swift)| Easy| O(nm)| O(1)|\n[Majority Element](https://leetcode.com/problems/majority-element/)| [Swift](./Array/MajorityElement.swift)| Easy| O(n)| O(1)|\n[Majority Element II](https://leetcode.com/problems/majority-element-ii/)| [Swift](./Array/MajorityElementII.swift)| Medium| O(n)| O(1)|\n[First Missing Positive](https://leetcode.com/problems/first-missing-positive/)| [Swift](./Array/FirstMissingPositive.swift)| Hard| O(n)| O(n)|\n[Intersection of Two Arrays](https://leetcode.com/problems/intersection-of-two-arrays/)| [Swift](./Array/IntersectionTwoArrays.swift)| Easy| O(n)| O(n)|\n[Intersection of Two Arrays II](https://leetcode.com/problems/intersection-of-two-arrays-ii/)| [Swift](./Array/IntersectionTwoArraysII.swift)| Easy| O(n)| O(n)|\n[Contains Duplicate](https://leetcode.com/problems/contains-duplicate/)| [Swift](./Array/ContainsDuplicate.swift)| Easy| O(n)| O(n)|\n[Contains Duplicate II](https://leetcode.com/problems/contains-duplicate-ii/)| [Swift](./Array/ContainsDuplicateII.swift)| Easy| O(n)| O(n)|\n[Remove Duplicates from Sorted Array](https://leetcode.com/problems/remove-duplicates-from-sorted-array/)| [Swift](./Array/RemoveDuplicatesFromSortedArray.swift)| Easy| O(n)| O(1)|\n[Remove Duplicates from Sorted Array II](https://leetcode.com/problems/remove-duplicates-from-sorted-array-ii/)| [Swift](./Array/RemoveDuplicatesFromSortedArrayII.swift)| Medium| O(n)| O(1)|\n[Move Zeroes](https://leetcode.com/problems/move-zeroes/)| [Swift](./Array/MoveZeroes.swift)| Easy| O(n)| O(1)|\n[Remove Element](https://leetcode.com/problems/remove-element/)| [Swift](./Array/RemoveElement.swift)| Easy| O(n)| O(1)|\n[Strobogrammatic Number](https://leetcode.com/problems/strobogrammatic-number/)| [Swift](./Array/StrobogrammaticNumber.swift)| Easy| O(n)| O(1)|\n[Can Place Flowers](https://leetcode.com/problems/can-place-flowers/)| [Swift](./Array/CanPlaceFlowers.swift)| Easy| O(n)| O(1)|\n[Two Sum](https://leetcode.com/problems/two-sum/)| [Swift](./Array/TwoSum.swift)| Easy| O(n)| O(n)|\n[Two Sum II - Input array is sorted](https://leetcode.com/problems/two-sum-ii-input-array-is-sorted/)| [Swift](./Array/TwoSumII.swift)| Easy| O(n)| O(1)|\n[Two Sum III - Data structure design](https://leetcode.com/problems/two-sum-iii-data-structure-design/)| [Swift](./Array/TwoSumIII.swift)| Easy| O(n)| O(1)|\n[Two Sum Less Than K](https://leetcode.com/problems/two-sum-less-than-k/)| [Swift](./Array/TwoSumLessThanK.swift)| Easy| O(nlogn)| O(n)|\n[3Sum](https://leetcode.com/problems/3sum/)| [Swift](./Array/ThreeSum.swift)| Medium| O(n^2)| O(nC3)|\n[3Sum Closest](https://leetcode.com/problems/3sum-closest/)| [Swift](./Array/ThreeSumClosest.swift)| Medium| O(n^2)| O(nC3)|\n[4Sum](https://leetcode.com/problems/4sum/)| [Swift](./Array/FourSum.swift)| Medium| O(n^3)| O(nC4)|\n[Increasing Triplet Subsequence](https://leetcode.com/problems/increasing-triplet-subsequence/)| [Swift](./Array/IncreasingTripletSubsequence.swift)| Medium| O(n)| O(1)|\n[Summary Ranges](https://leetcode.com/problems/summary-ranges/)| [Swift](./Array/SummaryRanges.swift)| Medium| O(n)| O(n)|\n[Range Sum Query 2D - Immutable](https://leetcode.com/problems/range-sum-query-2d-immutable/)| [Swift](./Array/NumMatrix.swift)| Medium| O(mn)| O(mn)|\n[Missing Ranges](https://leetcode.com/problems/missing-ranges/)| [Swift](./Array/MissingRanges.swift)| Medium| O(n)| O(1)|\n[Asteroid Collision](https://leetcode.com/problems/asteroid-collision/)| [Swift](./Array/AsteroidCollision.swift)| Medium| O(n)| O(n)|\n[Maximize Distance to Closest Person](https://leetcode.com/problems/maximize-distance-to-closest-person/)| [Swift](./Array/MaximizeDistanceToClosestPerson.swift)| Easy| O(n)| O(1)|\n[Exam Room](https://leetcode.com/problems/exam-room/)| [Swift](./Array/ExamRoom.swift)| Medium| O(n)| O(n)|\n[Shortest Word Distance](https://leetcode.com/problems/shortest-word-distance/)| [Swift](./Array/ShortestWordDistance.swift)| Easy| O(n)| O(1)|\n[Shortest Word Distance II](https://leetcode.com/problems/shortest-word-distance-ii/)| [Swift](./Array/ShortestWordDistanceII.swift)| Medium| O(n)| O(n)|\n[Shortest Word Distance III](https://leetcode.com/problems/shortest-word-distance-iii/)| [Swift](./Array/ShortestWordDistanceIII.swift)| Medium| O(n)| O(1)|\n[Minimum Size Subarray Sum](https://leetcode.com/problems/minimum-size-subarray-sum/)| [Swift](./Array/MinimumSizeSubarraySum.swift)| Medium| O(n)| O(1)|\n[Maximum Size Subarray Sum Equals k](https://leetcode.com/problems/maximum-size-subarray-sum-equals-k/)| [Swift](./Array/MaximumSizeSubarraySumEqualsK.swift)| Medium| O(n)| O(n)|\n[Smallest Range](https://leetcode.com/problems/smallest-range/)| [Swift](./Array/SmallestRange.swift)| Hard | O(nm)| O(nm)|\n[Product of Array Except Self](https://leetcode.com/problems/product-of-array-except-self/)| [Swift](./Array/ProductExceptSelf.swift)| Medium| O(n)| O(1)|\n[Rotate Array](https://leetcode.com/problems/rotate-array/)| [Swift](./Array/RotateArray.swift)| Easy| O(n)| O(1)|\n[Rotate Image](https://leetcode.com/problems/rotate-image/)| [Swift](./Array/RotateImage.swift)| Medium| O(n^2)| O(1)|\n[Spiral Matrix](https://leetcode.com/problems/spiral-matrix/)| [Swift](./Array/SpiralMatrix.swift)| Medium| O(n^2)| O(1)|\n[Spiral Matrix II](https://leetcode.com/problems/spiral-matrix-ii/)| [Swift](./Array/SpiralMatrixII.swift)| Medium| O(n^2)| O(1)|\n[Diagonal Traverse](https://leetcode.com/problems/diagonal-traverse/description/)| [Swift](./Array/DiagonalTraverse.swift)| Medium| O(mn)| O(1)|\n[Valid Sudoku](https://leetcode.com/problems/valid-sudoku/)| [Swift](./Array/ValidSudoku.swift)| Easy| O(n^2)| O(n)|\n[Set Matrix Zero](https://leetcode.com/problems/set-matrix-zeroes/)| [Swift](./Array/SetMatrixZeroes.swift)| Medium| O(n^2)| O(1)|\n[Next Permutation](https://leetcode.com/problems/next-permutation/)| [Swift](./Array/NextPermutation.swift)| Medium| O(n)| O(1)|\n[Gas Station](https://leetcode.com/problems/gas-station/)| [Swift](./Array/GasStation.swift)| Medium| O(n)| O(1)|\n[Game of Life](https://leetcode.com/problems/game-of-life/)| [Swift](./Array/GameLife.swift)| Medium| O(n)| O(1)|\n[Task Scheduler](https://leetcode.com/problems/task-scheduler/)| [Swift](./Array/TaskScheduler.swift)| Medium| O(nlogn)| O(n)|\n[Validate IP Address](https://leetcode.com/problems/validate-ip-address/)| [Swift](./Array/ValidateIPAddress.swift)| Medium| O(n)| O(1)|\n[Sliding Window Maximum ](https://leetcode.com/problems/sliding-window-maximum/)| [Swift](./Array/SlidingWindowMaximum.swift)| Hard| O(n)| O(n)|\n[Longest Consecutive Sequence](https://leetcode.com/problems/longest-consecutive-sequence/)| [Swift](./Array/LongestConsecutiveSequence.swift)| Hard| O(n)| O(n)|\n[Create Maximum Number](https://leetcode.com/problems/create-maximum-number/)| [Swift](./Array/CreateMaximumNumber.swift)| Hard| O(n^2)| O(n)|\n[Find All Numbers Disappeared in an Array](https://leetcode.com/problems/find-all-numbers-disappeared-in-an-array/)| [Swift](./Array/FindDisappearedNumbers.swift)| Easy| O(n)| O(1)|\n\n## String\n| Title | Solution | Difficulty | Time | Space |\n| ----- | -------- | ---------- | ---- | ----- |\n[Fizz Buzz](https://leetcode.com/problems/fizz-buzz/)| [Swift](./String/FizzBuzz.swift)| Easy| O(n)| O(1)|\n[First Unique Character in a String](https://leetcode.com/problems/first-unique-character-in-a-string/)| [Swift](./String/FirstUniqueCharacterInString.swift)| Easy| O(n)| O(1)|\n[Keyboard Row](https://leetcode.com/problems/keyboard-row/)| [Swift](./String/KeyboardRow.swift)| Easy| O(nm)| O(n)|\n[Valid Word Abbreviation](https://leetcode.com/problems/valid-word-abbreviation/)| [Swift](./String/ValidWordAbbreviation.swift)| Easy| O(n)| O(n)|\n[Valid Palindrome](https://leetcode.com/problems/valid-palindrome/)| [Swift](./String/ValidPalindrome.swift)| Easy| O(n)| O(n)|\n[Valid Palindrome II](https://leetcode.com/problems/valid-palindrome-ii/)| [Swift](./String/ValidPalindromeII.swift)| Easy| O(n)| O(n)|\n[Detect Capital](https://leetcode.com/problems/detect-capital/)| [Swift](./String/DetectCapital.swift)| Easy| O(n)| O(1)|\n[Count and Say](https://leetcode.com/problems/count-and-say/)| [Swift](./String/CountAndSay.swift)| Easy| O(n^2)| O(1)|\n[Flip Game](https://leetcode.com/problems/flip-game/)| [Swift](./String/FlipGame.swift)| Easy| O(n)| O(n)|\n[Implement strStr()](https://leetcode.com/problems/implement-strstr/)| [Swift](./String/StrStr.swift)| Easy| O(nm)| O(n)|\n[Isomorphic Strings](https://leetcode.com/problems/isomorphic-strings/)| [Swift](./String/IsomorphicStrings.swift)| Easy| O(n)| O(n)|\n[Reverse String](https://leetcode.com/problems/reverse-string/)| [Swift](./String/ReverseString.swift)| Easy| O(n)| O(n)|\n[Reverse String II](https://leetcode.com/problems/reverse-string-ii/)| [Swift](./String/ReverseStringII.swift)| Easy| O(n)| O(n)|\n[Reverse Vowels of a String](https://leetcode.com/problems/reverse-vowels-of-a-string/)| [Swift](./String/ReverseVowelsOfAString.swift)| Easy| O(n)| O(n)|\n[Reverse Words in a String](https://leetcode.com/problems/reverse-words-in-a-string/)| [Swift](./String/ReverseWordsString.swift)| Medium| O(n)| O(1)|\n[Reverse Words in a String II](https://leetcode.com/problems/reverse-words-in-a-string-ii/)| [Swift](./String/ReverseWordsStringII.swift)| Medium| O(n)| O(1)|\n[Reverse Words in a String III](https://leetcode.com/problems/reverse-words-in-a-string-iii/)| [Swift](./String/ReverseWordsStringIII.swift)| Easy| O(n)| O(1)|\n[Length of Last Word](https://leetcode.com/problems/length-of-last-word/)| [Swift](./String/AddStrings.swift)| Easy| O(n)| O(n)|\n[String Compression](https://leetcode.com/problems/string-compression/)| [Swift](./String/StringCompression.swift)| Easy| O(n)| O(1)|\n[Add Strings](https://leetcode.com/problems/add-strings/)| [Swift](./String/LengthLastWord.swift)| Easy| O(n)| O(1)|\n[Shortest Distance to a Character](https://leetcode.com/problems/shortest-distance-to-a-character/)| [Swift](./String/ShortestDistanceToACharacter.swift)| Easy| O(n)| O(1)|\n[Multiply Strings](https://leetcode.com/problems/multiply-strings/)| [Swift](./String/MultiplyStrings.swift)| Medium| O(n)| O(1)|\n[Palindrome Permutation](https://leetcode.com/problems/palindrome-permutation/)| [Swift](./String/PalindromePermutation.swift)| Easy| O(n)| O(n)|\n[Valid Anagram](https://leetcode.com/problems/valid-anagram/)| [Swift](./String/ValidAnagram.swift)| Easy| O(n)| O(n)|\n[Ransom Note](https://leetcode.com/problems/ransom-note/)| [Swift](./String/RansomNote.swift)| Easy| O(n)| O(n)|\n[Group Anagrams](https://leetcode.com/problems/anagrams/)| [Swift](./String/GroupAnagrams.swift)| Medium| O(nmlogm + nlogn)| O(n)\n[Find Duplicate File in System](https://leetcode.com/problems/find-duplicate-file-in-system/)| [Swift](./String/FindDuplicateFileInSystem.swift)| Medium| O(nm)| O(n)\n[Longest Common Prefix](https://leetcode.com/problems/longest-common-prefix/)| [Swift](./String/LongestCommonPrefix.swift)| Easy| O(nm)| O(m)|\n[Longest Substring Without Repeating Characters](https://leetcode.com/problems/longest-substring-without-repeating-characters/)| [Swift](./String/LongestSubstringWithoutRepeatingCharacters.swift)| Medium| O(n)| O(n)|\n[One Edit Distance](https://leetcode.com/problems/one-edit-distance/)| [Swift](./String/OneEditDistance.swift)| Medium| O(n)| O(n)|\n[Word Pattern](https://leetcode.com/problems/word-pattern/)| [Swift](./String/WordPattern.swift)| Easy| O(n)| O(n)|\n[Permutation in String](https://leetcode.com/problems/permutation-in-string/)| [Swift](/.String/PermutationInString.swift)| Medium| O(nm)| O(n)|\n[Find All Anagrams in a String](https://leetcode.com/problems/find-all-anagrams-in-a-string/)| [Swift](/.String/FindAllAnagramsInAString.swift)| Medium| O(n)| O(n)|\n[Minimum Window Substring](https://leetcode.com/problems/minimum-window-substring/)| [Swift](./String/MinimumWindowSubstring.swift)| Hard| O(n^2)| O(n)|\n[Longest Substring with At Most Two Distinct Characters](https://leetcode.com/problems/longest-substring-with-at-most-two-distinct-characters/)| [Swift](./String/LongestSubstringMostTwoDistinctCharacters.swift)| Hard| O(n)| O(n)|\n[Longest Substring with At Most K Distinct Characters](https://leetcode.com/problems/longest-substring-with-at-most-k-distinct-characters/)| [Swift](./String/LongestSubstringMostKDistinctCharacters.swift)| Hard| O(n)| O(n)|\n[Text Justification](https://leetcode.com/problems/text-justification/)| [Swift](./String/TextJustification.swift)| Hard| O(n)| O(n)|\n[Find the Closest Palindrome](https://leetcode.com/problems/find-the-closest-palindrome/)| [Swift](./String/FindClosestPalindrome.swift)| Hard| O(n)| O(n)|\n\n## Linked List\n| Title | Solution | Difficulty | Time | Space |\n| ----- | -------- | ---------- | ---- | ----- |\n[Reverse Linked List](https://leetcode.com/problems/reverse-linked-list/)| [Swift](./LinkedList/ReverseLinkedList.swift)| Easy| O(n)| O(1)|\n[Palindrome Linked List](https://leetcode.com/problems/palindrome-linked-list/)| [Swift](./LinkedList/PalindromeLinkedList.swift)| Easy| O(n)| O(1)|\n[Swap Nodes in Pairs](https://leetcode.com/problems/swap-nodes-in-pairs/)| [Swift](./LinkedList/SwapNodesInPairs.swift)| Easy| O(n)| O(1)|\n[Remove Linked List Elements](https://leetcode.com/problems/remove-linked-list-elements/)| [Swift](./LinkedList/RemoveLinkedListElements.swift)| Easy| O(n)| O(1)|\n[Remove Duplicates from Sorted List](https://leetcode.com/problems/remove-duplicates-from-sorted-list/)| [Swift](./LinkedList/RemoveDuplicatesFromSortedList.swift)| Easy| O(n)| O(1)|\n[Remove Duplicates from Sorted List II](https://leetcode.com/problems/remove-duplicates-from-sorted-list-ii/)| [Swift](./LinkedList/RemoveDuplicatesFromSortedListII.swift)| Medium| O(n)| O(1)|\n[Remove Nth Node From End of List](https://leetcode.com/problems/remove-nth-node-from-end-of-list/)| [Swift](./LinkedList/RemoveNthFromEnd.swift)| Easy| O(n)| O(1)|\n[Odd Even Linked List](https://leetcode.com/problems/odd-even-linked-list/)| [Swift](./LinkedList/OddEvenLinkedList.swift)| Medium| O(n)| O(1)|\n[Rotate List](https://leetcode.com/problems/rotate-list/)| [Swift](./LinkedList/RotateList.swift)| Medium| O(n)| O(1)|\n[Reorder List](https://leetcode.com/problems/reorder-list/)| [Swift](./LinkedList/ReorderList.swift)| Medium| O(n)| O(1)|\n[Merge Two Sorted Lists](https://leetcode.com/problems/merge-two-sorted-lists/)| [Swift](./LinkedList/MergeTwoSortedLists.swift)| Easy| O(n)| O(1)|\n[Merge k Sorted Lists](https://leetcode.com/problems/merge-k-sorted-lists/)| [Swift](./LinkedList/MergeKSortedLists.swift)| Hard| O(mlogn)| O(1)|\n[Partition List](https://leetcode.com/problems/partition-list/)| [Swift](./LinkedList/PartitionList.swift)| Medium| O(n)| O(1)|\n[Reverse Nodes in k-Group](https://leetcode.com/problems/reverse-nodes-in-k-group/)| [Swift](./LinkedList/ReverseNodesInKGroup.swift)| Hard| O(n)| O(1)|\n[LRU Cache](https://leetcode.com/problems/lru-cache/) | [Swift](./LinkedList/LRUCache.swift) | Hard| O(1)| O(1)|\n[LFU Cache](https://leetcode.com/problems/lfu-cache/) | [Swift](./LinkedList/LFUCache.swift) | Hard| O(1)| O(1)|\n\n## Stack\n| Title | Solution | Difficulty | Time | Space |\n| ----- | -------- | ---------- | ---- | ----- |\n[Min Stack](https://leetcode.com/problems/min-stack/)| [Swift](./Stack/MinStack.swift)| Easy| O(1)| O(n)|\n[Max Stack](https://leetcode.com/problems/max-stack/)| [Swift](./Stack/MaxStack.swift)| Easy| O(n)| O(n)|\n[Valid Parentheses](https://leetcode.com/problems/valid-parentheses/)| [Swift](./Stack/ValidParentheses.swift)| Easy| O(n)| O(n)|\n[Longest Valid Parentheses](https://leetcode.com/problems/longest-valid-parentheses/)| [Swift](./Stack/LongestValidParentheses.swift)| Hard| O(n)| O(n)|\n[Evaluate Reverse Polish Notation](https://leetcode.com/problems/evaluate-reverse-polish-notation/)| [Swift](./Stack/EvaluateReversePolishNotation.swift)| Medium| O(n)| O(n)|\n[Exclusive Time of Functions](https://leetcode.com/problems/exclusive-time-of-functions/)| [Swift](./Stack/ExclusiveTimeFunctions.swift) | Medium| O(n)| O(n)|\n[Simplify Path](https://leetcode.com/problems/simplify-path/)| [Swift](./Stack/SimplifyPath.swift)| Medium| O(n)| O(n)|\n[Remove K Digits](https://leetcode.com/problems/remove-k-digits/)| [Swift](./Stack/RemoveKDigits.swift)| Medium| O(n)| O(n)|\n[Ternary Expression Parser](https://leetcode.com/problems/ternary-expression-parser/)| [Swift](./Stack/TernaryExpressionParser.swift)| Medium| O(n)| O(n)|\n[Binary Tree Preorder Traversal](https://leetcode.com/problems/binary-tree-preorder-traversal/)| [Swift](./Stack/PreorderTraversal.swift)| Medium| O(n)| O(n)|\n[Binary Tree Inorder Traversal](https://leetcode.com/problems/binary-tree-inorder-traversal/)| [Swift](./Stack/InorderTraversal.swift)| Medium| O(n)| O(n)|\n[Binary Search Tree Iterator](https://leetcode.com/problems/binary-search-tree-iterator/)| [Swift](./Stack/BinarySearchTreeIterator.swift)| Medium| O(n)| O(n)|\n[Binary Tree Postorder Traversal](https://leetcode.com/problems/binary-tree-postorder-traversal/)| [Swift](./Stack/PostorderTraversal.swift)| Hard| O(n)| O(n)|\n[Decode String](https://leetcode.com/problems/decode-string/)| [Swift](./Stack/DecodeString.swift)| Medium| O(n)| O(n)|\n[Basic Calculator](https://leetcode.com/problems/basic-calculator/)| [Swift](./Stack/BasicCalculator.swift)| Hard| O(n)| O(n)|\n\n## Queue\n| Title | Solution | Difficulty | Time | Space |\n| ----- | -------- | ---------- | ---- | ----- |\n[Implement Queue using Stacks](https://leetcode.com/problems/implement-queue-using-stacks)| [Swift](./Queue/ImplementQueueUsingStacks.swift)| Easy| O(n)| O(n)|\n\n## Tree\n| Title | Solution | Difficulty | Time | Space |\n| ----- | -------- | ---------- | ---- | ----- |\n[Same Tree](https://oj.leetcode.com/problems/same-tree/)| [Swift](./Tree/SameTree.swift)| Easy| O(n)| O(n)|\n[Symmetric Tree](https://leetcode.com/problems/symmetric-tree/)| [Swift](./Tree/SymmetricTree.swift)| Easy| O(n)| O(n)|\n[Invert Binary Tree](https://leetcode.com/problems/invert-binary-tree/)| [Swift](./Tree/InvertBinaryTree.swift)| Easy| O(n)| O(n)|\n[Binary Tree Upside Down](https://leetcode.com/problems/binary-tree-upside-down/)| [Swift](./Tree/BinaryTreeUpsideDown.swift)| Medium| O(n)| O(1)|\n[Minimum Depth of Binary Tree](https://leetcode.com/problems/minimum-depth-of-binary-tree/)| [Swift](./Tree/MinimumDepthOfBinaryTree.swift)| Easy| O(n)| O(1)|\n[Maximum Depth of Binary Tree](https://leetcode.com/problems/maximum-depth-of-binary-tree/)| [Swift](./Tree/MaximumDepthOfBinaryTree.swift)| Easy| O(n)| O(1)|\n[Diameter of Binary Tree](https://leetcode.com/problems/diameter-of-binary-tree/)| [Swift](./Tree/DiameterBinaryTree.swift)| Easy| O(n)| O(1)|\n[Balanced Binary Tree](https://leetcode.com/problems/balanced-binary-tree/)| [Swift](./Tree/BalancedBinaryTree.swift)| Easy|  O(n)| O(n)|\n[Sum of Left Leaves](https://leetcode.com/problems/sum-of-left-leaves/)| [Swift](./Tree/SumLeftLeaves.swift)| Easy|  O(n)| O(1)|\n[Flatten Binary Tree to Linked List](https://leetcode.com/problems/flatten-binary-tree-to-linked-list/)| [Swift](./Tree/FlattenBinaryTreeLinkedList.swift)| Medium| O(n)| O(1)|\n[Convert Sorted Array to Binary Search Tree](https://leetcode.com/problems/convert-sorted-array-to-binary-search-tree/)| [Swift](./Tree/ConvertSortedArrayBinarySearchTree.swift)| Easy| O(n)| O(1)|\n[Validate Binary Search Tree](https://leetcode.com/problems/validate-binary-search-tree/)| [Swift](./Tree/ValidateBinarySearchTree.swift)| Medium| O(n)| O(log n)|\n[Binary Tree Level Order Traversal](https://leetcode.com/problems/binary-tree-level-order-traversal/)| [Swift](./Tree/BinaryTreeLevelOrderTraversal.swift)| Easy| O(n)| O(n)|\n[Binary Tree Level Order Traversal II](https://leetcode.com/problems/binary-tree-level-order-traversal-ii/)| [Swift](./Tree/BinaryTreeLevelOrderTraversalII.swift)| Easy| O(n)| O(n)|\n[Merge Two Binary Trees](https://leetcode.com/problems/merge-two-binary-trees/description/) | [Swift](./Tree/MergeTwoBinaryTrees.swift) | Easy | O(n) | O(n) |\n[Binary Tree Zigzag Level Order Traversal](https://leetcode.com/problems/binary-tree-zigzag-level-order-traversal/)| [Swift](./Tree/BinaryTreeZigzagLevelOrderTraversal.swift)| Medium| O(n)| O(n)|\n[Binary Tree Vertical Order Traversal](https://leetcode.com/problems/binary-tree-vertical-order-traversal/)| [Swift](./Tree/BinaryTreeVerticalOrderTraversal.swift)| Medium| O(n)| O(n)|\n[Kth Smallest Element in a BST](https://leetcode.com/problems/kth-smallest-element-in-a-bst/)| [Swift](./Tree/KthSmallestElementBST.swift)| Medium| O(n)| O(n)|\n[Binary Tree Right Side View](https://leetcode.com/problems/binary-tree-right-side-view/)| [Swift](./Tree/BinaryTreeRightSideView.swift)| Medium| O(n)| O(n)|\n[Construct Binary Tree from Preorder and Inorder Traversal](https://leetcode.com/problems/construct-binary-tree-from-preorder-and-inorder-traversal/)| [Swift](./Tree/ConstructBinaryTreePreorderInorder.swift)| Medium| O(nlogn)| O(1)|\n[Construct Binary Tree from Inorder and Postorder Traversal](https://leetcode.com/problems/construct-binary-tree-from-inorder-and-postorder-traversal/)| [Swift](./Tree/ConstructBinaryTreeInorderPostorder.swift)| Medium| O(nlogn)| O(1)|\n[Path Sum](https://leetcode.com/problems/path-sum/)| [Swift](./Tree/PathSum.swift)| Easy| O(n)| O(n)|\n[Path Sum II](https://leetcode.com/problems/path-sum-ii/)| [Swift](./Tree/PathSumII.swift)| Medium| O(n)| O(n)|\n[Path Sum III](https://leetcode.com/problems/path-sum-iii/)| [Swift](./Tree/PathSumIII.swift)| Easy| O(n^2)| O(1)|\n[Binary Tree Paths](https://leetcode.com/problems/binary-tree-paths/)| [Swift](./Tree/BinaryTreePaths.swift)| Easy| O(n)| O(n)|\n[Binary Tree Maximum Path Sum](https://leetcode.com/problems/binary-tree-maximum-path-sum/)| [Swift](./Tree/BinaryTreeMaximumPathSum.swift)| Hard| O(n)| O(1)|\n[House Robber III](https://leetcode.com/problems/house-robber-iii/)| [Swift](./Tree/HouseRobberIII.swift)| Medium| O(n)| O(1)|\n[Unique Binary Search Trees](https://leetcode.com/problems/unique-binary-search-trees/)| [Swift](./Tree/UniqueBinarySearchTrees.swift)| Medium| O(n^2)| O(n)|\n[Recover Binary Search Tree](https://leetcode.com/problems/recover-binary-search-tree/)| [Swift](./Tree/RecoverBinarySearchTree.swift)| Hard| O(n)| O(1)|\n[Serialize and Deserialize Binary Tree](https://leetcode.com/problems/serialize-and-deserialize-binary-tree/)| [Swift](./Tree/SerializeDeserializeBinaryTree.swift)| Hard| O(n)| O(n)|\n[Serialize and Deserialize N-ary Tree](https://leetcode.com/problems/serialize-and-deserialize-n-ary-tree/)| [Swift](./Tree/SerializeDeserializeNAryTree.swift)| Hard| O(n)| O(n)|\n\n## Dynamic programming\n| Title | Solution | Difficulty | Time | Space |\n| ----- | -------- | ---------- | ---- | ----- |\n[Nested List Weight Sum](https://leetcode.com/problems/nested-list-weight-sum/)| [Swift](./DP/NestedListWeightSum.swift)| Easy| O(n)| O(1)|\n[Climbing Stairs](https://leetcode.com/problems/climbing-stairs/)| [Swift](./DP/ClimbingStairs.swift)| Easy| O(n)| O(1)|\n[Min Cost Climbing Stairs](https://leetcode.com/problems/min-cost-climbing-stairs/)| [Swift](./DP/MinCostClimbingStairs.swift)| Easy| O(n)| O(n)|\n[Unique Paths](https://leetcode.com/problems/unique-paths/)| [Swift](./DP/UniquePaths.swift)| Medium| O(mn)| O(mn)|\n[Unique Paths II](https://leetcode.com/problems/unique-paths-ii/)| [Swift](./DP/UniquePathsII.swift)| Medium| O(mn)| O(mn)|\n[Nested List Weight Sum II](https://leetcode.com/problems/nested-list-weight-sum-ii/)| [Swift](./DP/NestedListWeightSumII.swift)| Medium| O(n)| O(n)|\n[Flip Game II](https://leetcode.com/problems/flip-game-ii/)| [Swift](./DP/FlipGameII.swift)| Medium| O(n)| O(n)|\n[Can I Win](https://leetcode.com/problems/can-i-win/)| [Swift](./DP/CanIWin.swift)| Medium| O(2^n)| O(n)|\n[Decode Ways](https://leetcode.com/problems/decode-ways/)| [Swift](./DP/DecodeWays.swift) | Medium| O(n)|O(n)|\n[Minimum Path Sum](https://leetcode.com/problems/minimum-path-sum/)| [Swift](./DP/MinimumPathSum.swift)| Medium| O(mn)| O(mn)|\n[Generate Parentheses](https://leetcode.com/problems/generate-parentheses/)| [Swift](./DP/GenerateParentheses.swift)| Medium| O(2^n)| O(n)|\n[Different Ways to Add Parentheses](https://leetcode.com/problems/different-ways-to-add-parentheses/)| [Swift](./DP/DifferentWaysAddParentheses.swift)| Medium| O(n^n)| O(n)|\n[Best Time to Buy and Sell Stock](https://leetcode.com/problems/best-time-to-buy-and-sell-stock/)| [Swift](./DP/BestTimeBuySellStock.swift)| Easy| O(n)| O(1)|\n[Best Time to Buy and Sell Stock II](https://leetcode.com/problems/best-time-to-buy-and-sell-stock-ii/)| [Swift](./DP/BestTimeBuySellStockII.swift)| Medium| O(n)| O(1)|\n[Best Time to Buy and Sell Stock III](https://leetcode.com/problems/best-time-to-buy-and-sell-stock-iii/)| [Swift](./DP/BestTimeBuySellStockIII.swift)| Hard| O(n)| O(n)|\n[Best Time to Buy and Sell Stock IV](https://leetcode.com/problems/https://leetcode.com/problems/best-time-to-buy-and-sell-stock-iv/)| [Swift](./DP/BestTimeBuySellStockIV.swift)| Hard| O(n^2)| O(n)|\n[Best Time to Buy and Sell Stock with Cooldown](https://leetcode.com/problems/best-time-to-buy-and-sell-stock-with-cooldown/)| [Swift](./DP/BestTimeBuySellStockCooldown.swift)| Medium| O(n^2)| O(n)|\n[Maximum Sum of 3 Non-Overlapping Subarrays](https://leetcode.com/problems/maximum-sum-of-3-non-overlapping-subarrays/)| [Swift](./DP/MaximumSumThreeNonOverlappingSubarrays.swift)| Hard| O(n)| O(n)|\n[Coin Change](https://leetcode.com/problems/coin-change/)| [Swift](./DP/CoinChange.swift)| Medium| O(n^2)| O(n)|\n[Coin Change II](https://leetcode.com/problems/coin-change-ii/)| [Swift](./DP/CoinChangeII.swift)| Medium| O(n^2)| O(n)|\n[Paint House](https://leetcode.com/problems/paint-house/)| [Swift](./DP/PaintHouse.swift)| Easy| O(n)| O(n)|\n[Paint House II](https://leetcode.com/problems/paint-house-ii/)| [Swift](./DP/PaintHouseII.swift)| Hard| O(n)| O(1)|\n[Longest Increasing Subsequence](https://leetcode.com/problems/longest-increasing-subsequence/)| [Swift](./DP/LongestIncreasingSubsequence.swift)| Medium| O(nlogn)| O(n)|\n[Longest Common Subsequence](https://leetcode.com/problems/longest-increasing-subsequence/)| [Swift](./DP/LongestCommonSubsequence.swift)| Medium| O(mn)| O(1)|\n[Palindromic Substrings](https://leetcode.com/problems/palindromic-substrings/)| [Swift](./DP/PalindromicSubstrings.swift)| Medium| O(n^2)| O(n^2)|\n[Longest Palindromic Substring](https://leetcode.com/problems/longest-palindromic-substring/)| [Swift](./DP/LongestPalindromicSubstring.swift)| Medium| O(n^2)| O(n^2)|\n[Perfect Squares](https://leetcode.com/problems/perfect-squares/)| [Swift](./DP/PerfectSquares.swift)| Medium| O(n^2)| O(n)|\n[House Robber](https://leetcode.com/problems/house-robber/)| [Swift](./DP/HouseRobber.swift)| Easy| O(n)| O(1)|\n[House Robber II](https://leetcode.com/problems/house-robber-ii/)| [Swift](./DP/HouseRobberII.swift)| Medium| O(n)| O(1)|\n[Paint Fence](https://leetcode.com/problems/paint-fence/)| [Swift](./DP/PaintFence.swift)| Easy| O(n)| O(n)|\n[Maximum Subarray](https://leetcode.com/problems/maximum-subarray/)| [Swift](./DP/MaximumSubarray.swift)| Medium| O(n)| O(1)|\n[Maximum Product Subarray](https://leetcode.com/problems/maximum-product-subarray/)| [Swift](./DP/MaximumProductSubarray.swift)| Medium| O(n)| O(1)|\n[Maximum Number of Points with Cost](https://leetcode.com/problems/maximum-number-of-points-with-cost/)| [Swift](./DP/MaximumNumberPointsCost.swift)| Medium| O(mn)| O(1)|\n[Maximal Square](https://leetcode.com/problems/maximal-square/)| [Swift](./DP/MaximalSquare.swift)| Medium| O(mn)| O(mn)|\n[Edit Distance](https://leetcode.com/problems/edit-distance/)| [Swift](./DP/EditDistance.swift)| Hard| O(mn)| O(mn)|\n[Combination Sum IV](https://leetcode.com/problems/combination-sum-iv/)| [Swift](./DP/CombinationSumIV.swift)| Medium| O(2^n)| O(n)|\n[Triangle](https://leetcode.com/problems/triangle/)| [Swift](./DP/Triangle.swift)| Medium| O(2^n)| O(m)|\n[Wiggle Subsequence](https://leetcode.com/problems/wiggle-subsequence/)| [Swift](./DP/WiggleSubsequence.swift)| Medium| O(n)| O(1)|\n[Wildcard Matching](https://leetcode.com/problems/wildcard-matching/)| [Swift](./DP/WildcardMatching.swift)| Hard| O(mn)| O(mn)|\n[Regular Expression Matching](https://leetcode.com/problems/regular-expression-matching/)| [Swift](./DP/RegularExpressionMatching.swift)| Hard| O(mn)| O(mn)|\n[Minimum Window Subsequence](https://leetcode.com/problems/minimum-window-subsequence/)| [Swift](./DP/MinimumWindowSubsequence.swift)| Hard| O(mn)| O(mn)|\n[Guess Number Higher or Lower II](https://leetcode.com/problems/guess-number-higher-or-lower-ii/)| [Swift](./DP/GuessNumberHigherOrLowerII.swift)| Medium| O(nlogn)| O(n^2)|\n[Burst Ballons](https://leetcode.com/problems/burst-balloons/)| [Swift](./DP/BurstBalloons.swift)| Hard| O(n^3)| O(n)|\n[Frog Jump](https://leetcode.com/problems/frog-jump/)| [Swift](./DP/FrogJump.swift)| Hard| O(n^2)| O(n)|\n[Jump Game](https://leetcode.com/problems/jump-game/)| [Swift](./DP/JumpGame.swift)| Medium| O(n)| O(1)|\n[Dungeon Game](https://leetcode.com/problems/dungeon-game/)| [Swift](./DP/DungeonGame.swift)| Hard| O(nm)| O(nm)|\n\n\n## Depth-first search\n| Title | Solution | Difficulty | Time | Space |\n| ----- | -------- | ---------- | ---- | ----- |\n[Permutations](https://leetcode.com/problems/permutations/)| [Swift](./DFS/Permutations.swift)| Medium| O(2^n)| O(n)|\n[Permutations II](https://leetcode.com/problems/permutations-ii/)| [Swift](./DFS/PermutationsII.swift)| Medium| O(2^n)| O(n)|\n[Subsets](https://leetcode.com/problems/subsets/)| [Swift](./DFS/Subsets.swift)| Medium| O(n^n)| O(n)|\n[Subsets II](https://leetcode.com/problems/subsets-ii/)| [Swift](./DFS/SubsetsII.swift)| Medium| O(2^n)| O(n)|\n[Combinations](https://leetcode.com/problems/combinations/)| [Swift](./DFS/Combinations.swift)| Medium| O(2^n)| O(n)|\n[Combination Sum](https://leetcode.com/problems/combination-sum/)| [Swift](./DFS/CombinationSum.swift)| Medium| O(2^n)| O(n)|\n[Combination Sum II](https://leetcode.com/problems/combination-sum-ii/)| [Swift](./DFS/CombinationSumII.swift)| Medium| O(2^n)| O(n)|\n[Combination Sum III](https://leetcode.com/problems/combination-sum-iii/)| [Swift](./DFS/CombinationSumIII.swift)| Medium| O(2^n)| O(n)|\n[Letter Combinations of a Phone Number](https://leetcode.com/problems/letter-combinations-of-a-phone-number/)| [Swift](./DFS/LetterCombinationsPhoneNumber.swift)| Medium| O(4^n)| O(n)|\n[Factor Combinations](https://leetcode.com/problems/factor-combinations/)| [Swift](./DFS/FactorCombinations.swift)| Medium| O(n^n))| O(2^n - 1)|\n[Strobogrammatic Number II](https://leetcode.com/problems/strobogrammatic-number-ii/)| [Swift](./DFS/StrobogrammaticNumberII.swift)| Medium| O(m^n)| O(n)|\n[Generalized Abbreviation](https://leetcode.com/problems/generalized-abbreviation/)| [Swift](./DFS/GeneralizedAbbreviation.swift)| Medium| O(n^n)| O(2^n)|\n[Palindrome Partitioning](https://leetcode.com/problems/palindrome-partitioning/)| [Swift](./DFS/PalindromePartitioning.swift)| Medium| O(n^n)| O(n)|\n[Is Graph Bipartite](https://leetcode.com/problems/is-graph-bipartite/)| [Swift](./DFS/IsGraphBipartite.swift)| Medium| O(n)| O(n)|\n[Number of Islands](https://leetcode.com/problems/number-of-islands/)| [Swift](./DFS/NumberofIslands.swift)| Medium| O((mn)^2)| O(1)|\n[Walls and Gates](https://leetcode.com/problems/walls-and-gates/)| [Swift](./DFS/WallsGates.swift)| Medium| O(n^n)| O(2^n)|\n[Word Search](https://leetcode.com/problems/word-search/)| [Swift](./DFS/WordSearch.swift)| Medium| O((mn * 4 ^ (k - 1))| O(mn)|\n[Word Search II](https://leetcode.com/problems/word-search-ii/)| [Swift](./DFS/WordSearchII.swift)| Hard| O(((mn)^2))| O(n^2)|\n[Add and Search Word - Data structure design](https://leetcode.com/problems/add-and-search-word-data-structure-design/)| [Swift](./DFS/WordDictionary.swift)| Medium| O(n)| O(n)|\n[Partition to K Equal Sum Subsets](https://leetcode.com/problems/partition-to-k-equal-sum-subsets/)| [Swift](./DFS/PartitionKEqualSumSubsets.swift)| Medium| O(k^n)| O(n)|\n[N-Queens](https://leetcode.com/problems/n-queens/)| [Swift](./DFS/NQueens.swift)| Hard| O((n^n))| O(n^2)|\n[N-Queens II](https://leetcode.com/problems/n-queens-ii/)| [Swift](./DFS/NQueensII.swift)| Hard| O((n^n))| O(n)|\n[Word Squares](https://leetcode.com/problems/word-squares/)| [Swift](./DFS/WordSquares.swift)| Hard| O((n^2))| O(n^2)|\n[Word Pattern II](https://leetcode.com/problems/word-pattern-ii/)| [Swift](./DFS/WordPatternII.swift)| Hard| O(n^n)| O(n)|\n[Sudoku Solver](https://leetcode.com/problems/sudoku-solver/)| [Swift](./DFS/SudokuSolver.swift)| Hard| O(n^4)| O(1)|\n[Remove Invalid Parentheses](https://leetcode.com/problems/remove-invalid-parentheses/)| [Swift](./DFS/RemoveInvalidParentheses.swift)| Hard| O(n^n)| O(n)|\n[Expression Add Operators](https://leetcode.com/problems/expression-add-operators/)| [Swift](./DFS/ExpressionAddOperators.swift)| Hard| O(n^n)| O(n)|\n\n## Breadth-first search\n| Title | Solution | Difficulty | Time | Space |\n| ----- | -------- | ---------- | ---- | ----- |\n[Word Ladder](https://leetcode.com/problems/word-ladder/)| [Swift](./BFS/WordLadder.swift)| Medium| O(nm)| O(nm)|\n[Evaluate Division](https://leetcode.com/problems/evaluate-division/)| [Swift](./BFS/EvaluateDivision.swift)| Medium| O(n^2)| O(n)|\n[Shortest Distance from All Buildings](https://leetcode.com/problems/shortest-distance-from-all-buildings/)| [Swift](./BFS/ShortestDistanceAllBuildings.swift)| Hard| O((mn)^2)| O(mn)|\n\n## Math\n| Title | Solution | Difficulty | Time | Space |\n| ----- | -------- | ---------- | ---- | ----- |\n[Add Binary](https://leetcode.com/problems/add-binary/)| [Swift](./Math/AddBinary.swift)| Easy| O(n)| O(n)|\n[Add Two Numbers](https://leetcode.com/problems/add-two-numbers/)| [Swift](./Math/AddTwoNumbers.swift)| Medium| O(n)| O(1)|\n[Add Digits](https://leetcode.com/problems/add-digits/)| [Swift](./Math/AddDigits.swift)| Easy| O(1)| O(1)|\n[Plus One](https://leetcode.com/problems/plus-one/)| [Swift](./Math/PlusOne.swift)| Easy| O(n)| O(1)|\n[Missing Number](https://leetcode.com/problems/missing-number/)| [Swift](./Math/MissingNumber.swift)| Easy| O(n)| O(1)|\n[Divide Two Integers](https://leetcode.com/problems/divide-two-integers/)| [Swift](./Math/DivideTwoIntegers.swift)| Medium| O(logn)| O(1)|\n[Number Complement](https://leetcode.com/problems/number-complement/)| [Swift](./Math/NumberComplement.swift)| Easy| O(n)| O(1)|\n[Hamming Distance](https://leetcode.com/problems/hamming-distance/)| [Swift](./Math/HammingDistance.swift)| Easy| O(n)| O(1)|\n[Integer Break](https://leetcode.com/problems/integer-break/)| [Swift](./Math/IntegerBreak.swift)| Medium| O(logn)| O(1)|\n[Factorial Trailing Zeroes](https://leetcode.com/problems/factorial-trailing-zeroes/)| [Swift](./Math/FactorialTrailingZeroes.swift)| Medium | O(logn)| O(1)|\n[Happy Number](https://leetcode.com/problems/happy-number/)| [Swift](./Math/HappyNumber.swift)| Easy| O(n)| O(n)|\n[Single Number](https://leetcode.com/problems/single-number/)| [Swift](./Math/SingleNumber.swift)| Medium| O(n)| O(1)|\n[Ugly Number](https://leetcode.com/problems/ugly-number/)| [Swift](./Math/UglyNumber.swift)| Easy| O(logn)| O(1)|\n[Ugly Number II](https://leetcode.com/problems/ugly-number-ii/)| [Swift](./Math/UglyNumberII.swift)| Medium| O(n)| O(n)|\n[Super Ugly Number](https://leetcode.com/problems/super-ugly-number/)| [Swift](./Math/SuperUglyNumber.swift)| Medium| O(n^2)| O(n)|\n[Count Primes](https://leetcode.com/problems/count-primes/)| [Swift](./Math/CountPrimes.swift)| Easy| O(n)| O(n)|\n[String to Integer (atoi)](https://leetcode.com/problems/string-to-integer-atoi/)| [Swift](./Math/Atoi.swift)| Easy| O(n)| O(1)|\n[Fraction to Recurring Decimal](https://leetcode.com/problems/fraction-to-recurring-decimal/)| [Swift](./Math/FractionToRecurringDecimal.swift) | Medium| O(logn)| O(n)|\n[Pow(x, n)](https://leetcode.com/problems/isomorphic-strings/)| [Swift](./Math/Pow.swift)| Medium| O(logn)| O(1)|\n[Power of Two](https://leetcode.com/problems/power-of-two/)| [Swift](./Math/PowerTwo.swift)| Easy| O(1)| O(1)|\n[Power of Three](https://leetcode.com/problems/power-of-three/)| [Swift](./Math/PowerThree.swift)| Easy| O(1)| O(1)|\n[Super Power](https://leetcode.com/problems/super-pow/)| [Swift](./Math/SuperPow.swift)| Medium| O(n)| O(1)|\n[Sum of Two Integers](https://leetcode.com/problems/sum-of-two-integers/)| [Swift](./Math/SumTwoIntegers.swift)| Easy| O(n)| O(1)|\n[Reverse Integer](https://leetcode.com/problems/reverse-integer/)| [Swift](./Math/ReverseInteger.swift)| Easy| O(n)| O(1)|\n[Excel Sheet Column Number](https://leetcode.com/problems/excel-sheet-column-number/)| [Swift](./Math/ExcelSheetColumnNumber.swift)| Easy| O(n)| O(1)|\n[Integer to Roman](https://leetcode.com/problems/integer-to-roman/)| [Swift](./Math/IntegerToRoman.swift)| Medium| O(n)| O(1)|\n[Roman to Integer](https://leetcode.com/problems/roman-to-integer/)| [Swift](./Math/RomanToInteger.swift)| Easy| O(n)| O(n)|\n[Integer to English Words](https://leetcode.com/problems/integer-to-english-words/)| [Swift](./Math/IntegerEnglishWords.swift)| Hard| O(n)| O(1)|\n[Sparse Matrix Multiplication](https://leetcode.com/problems/sparse-matrix-multiplication/)| [Swift](./Math/SparseMatrixMultiplication.swift)| Medium| O(n^3)| O(n^2)|\n[Rectangle Area](https://leetcode.com/problems/rectangle-area/)| [Swift](./Math/RectangleArea.swift)| Easy| O(1)| O(1)|\n[Minimum Moves to Equal Array Elements](https://leetcode.com/problems/minimum-moves-to-equal-array-elements/)| [Swift](./Math/MinimumMovesEqualArrayElements.swift)| Easy| O(n)| O(1)|\n[Pour Water](https://leetcode.com/problems/pour-water/)| [Swift](./Math/TrappingRainWater.swift)| Hard| O(n)| O(n)|\n[Trapping Rain Water](https://leetcode.com/problems/trapping-rain-water/)| [Swift](./Math/TrappingRainWater.swift)| Medium| O(nk)| O(1)|\n[Container With Most Water](https://leetcode.com/problems/container-with-most-water/)| [Swift](./Math/ContainerMostWater.swift)| Medium| O(n)| O(1)|\n[Counting Bits](https://leetcode.com/problems/counting-bits/)| [Swift](./Math/CountingBits.swift)| Medium| O(n)| O(n)|\n[K-th Smallest in Lexicographical Order](https://leetcode.com/problems/k-th-smallest-in-lexicographical-order/)| [Swift](./Math/KthSmallestLexicographicalOrder.swift)| Hard| O(n)| O(1)|\n[Gary Code](https://leetcode.com/problems/gray-code/)| [Swift](./Math/GaryCode.swift)| Medium| O(n)| O(2^n)|\n[Permutation Sequence](https://leetcode.com/problems/permutation-sequence/)| [Swift](./Math/PermutationSequence.swift)| Medium| O(n^2)| O(1)|\n[Line Reflection](https://leetcode.com/problems/line-reflection/)| [Swift](./Math/LineReflection.swift)| Medium| O(n)| O(n)|\n[Valid Number](https://leetcode.com/problems/valid-number/)| [Swift](./Math/ValidNumber.swift)| Hard| O(n)| O(1)|\n\n## Search\n| Title | Solution | Difficulty | Time | Space |\n| ----- | -------- | ---------- | ---- | ----- |\n[Closest Binary Search Tree Value](https://leetcode.com/problems/closest-binary-search-tree-value/)| [Swift](./Search/ClosestBinarySearchTreeValue.swift)| Easy| O(logn)| O(1)|\n[Closest Binary Search Tree Value II](https://leetcode.com/problems/closest-binary-search-tree-value-ii/)| [Swift](./Search/ClosestBinarySearchTreeValueII.swift)| Hard| O(n)| O(n)|\n[Search in Rotated Sorted Array](https://leetcode.com/problems/search-in-rotated-sorted-array/)| [Swift](./Search/SearchInRotatedSortedArray.swift)| Hard| O(logn)| O(1)|\n[Search in Rotated Sorted Array II](https://leetcode.com/problems/search-in-rotated-sorted-array-ii/)| [Swift](./Search/SearchInRotatedSortedArrayII.swift)| Medium| O(logn)| O(1)|\n[Find Minimum in Rotated Sorted Array](https://leetcode.com/problems/find-minimum-in-rotated-sorted-array/)| [Swift](./Search/FindMinimumRotatedSortedArray.swift)| Medium| O(logn)| O(1)|\n[Find Minimum in Rotated Sorted Array II](https://leetcode.com/problems/find-minimum-in-rotated-sorted-array-ii/)| [Swift](./Search/FindMinimumRotatedSortedArrayII.swift)| Hard| O(logn)| O(1)|\n[Search a 2D Matrix](https://leetcode.com/problems/search-a-2d-matrix/)| [Swift](./Search/Search2DMatrix.swift)| Medium| O(log(m + n))| O(1)|\n[Search a 2D Matrix II](https://leetcode.com/problems/search-a-2d-matrix-ii/)| [Swift](./Search/Search2DMatrixII.swift)| Medium| O(m + n)| O(1)|\n[Search for a Range](https://leetcode.com/problems/find-first-and-last-position-of-element-in-sorted-array/)| [Swift](./Search/SearchForARange.swift)| Medium| O(logn)| O(1)|\n[Search Insert Position](https://leetcode.com/problems/search-insert-position/)| [Swift](./Search/SearchInsertPosition.swift)| Medium| O(logn)| O(1)|\n[Peak Index in a Mountain Array](https://leetcode.com/problems/peak-index-in-a-mountain-array/)| [Swift](./Search/PeakIndexMountainArray.swift)| Easy| O(logn)| O(1)|\n[Find Peak Element](https://leetcode.com/problems/find-peak-element/)| [Swift](./Search/FindPeakElement.swift)| Medium| O(logn)| O(1)|\n[Random Pick with Weight](https://leetcode.com/problems/random-pick-with-weight/)| [Swift](./Search/RandomPickWeight.swift)| Medium| O(logn)| O(1)|\n[Sqrt(x)](https://leetcode.com/problems/sqrtx/)| [Swift](./Search/Sqrtx.swift)| Medium| O(logn)| O(1)|\n[Median of Two Sorted Arrays](https://leetcode.com/problems/median-of-two-sorted-arrays/)| [Swift](./Search/MedianTwoSortedArrays.swift)| Hard| O(log(m + n))| O(1)|\n[Minimize Max Distance to Gas Station](https://leetcode.com/problems/minimize-max-distance-to-gas-station/)| [Swift](./Search/MinimizeMaxDistanceGasStation.swift)| Hard| O(nlogm)| O(1)|\n\n## Sort\n| Title | Solution | Difficulty | Time | Space |\n| ----- | -------- | ---------- | ---- | ----- |\n[Merge Sorted Array](https://leetcode.com/problems/merge-sorted-array/)| [Swift](./Sort/MergeSortedArray.swift)| Easy| O(n)| O(1)|\n[Sort Colors](https://leetcode.com/problems/sort-colors/)| [Swift](./Sort/SortColors.swift)| Medium| O(n)| O(1)|\n[Wiggle Sort](https://leetcode.com/problems/wiggle-sort/)| [Swift](./Sort/WiggleSort.swift)| Medium| O(n)| O(1)|\n[Wiggle Sort II](https://leetcode.com/problems/wiggle-sort-ii/)| [Swift](./Sort/WiggleSortII.swift)| Medium| O(nlogn)| O(n)|\n[Sort Transformed Array](https://leetcode.com/problems/sort-transformed-array/)| [Swift](./Sort/SortTransformedArray.swift)| Medium| O(n)| O(1)|\n[Top K Frequent Elements](https://leetcode.com/problems/top-k-frequent-elements/)| [Swift](./Sort/TopKFrequentElements.swift)| Medium| O(nlogn)| O(n)|\n[Meeting Rooms](https://leetcode.com/problems/meeting-rooms/)| [Swift](./Sort/MeetingRooms.swift)| Easy| O(nlogn)| O(1)|\n[Meeting Rooms II](https://leetcode.com/problems/meeting-rooms-ii/)| [Swift](./Sort/MeetingRoomsII.swift)| Medium| O(nlogn)| O(n)|\n[Merge Intervals](https://leetcode.com/problems/merge-intervals/)| [Swift](./Sort/MergeIntervals.swift)| Hard| O(nlogn)| O(n)|\n[Alien Dictionary](https://leetcode.com/problems/alien-dictionary/)| [Swift](./Graph/AlienDictionary.swift)| Hard| O(nm)| O(nm)|\n[Kth Largest Element in an Array](https://leetcode.com/problems/kth-largest-element-in-an-array/)| [Swift](./Sort/KthLargestElementInArray.swift)| Medium| O(nlogn)| O(n)|\n[Array Partition I](https://leetcode.com/problems/array-partition-i/description/)| [Swift](./Sort/ArrayPartitionI.swift)|Easy| O(nlogn)| O(n)|\n[Insert Interval](https://leetcode.com/problems/insert-interval/description/)| [Swift](./Sort/InsertInterval.swift)|Hard| O(n)| O(1)|\n[Largest Number](https://leetcode.com/problems/largest-number/)| [Swift](./Sort/LargestNumber.swift)| Medium| O(nlogn)| O(1)|\n\n## Graph\n| Title | Solution | Difficulty | Time | Space |\n| ----- | -------- | ---------- | ---- | ----- |\n[Number of Connected Components in an Undirected Graph](https://leetcode.com/problems/number-of-connected-components-in-an-undirected-graph/)| [Swift](./Graph/NumberConnectedComponentsUndirectedGraph.swift)| Medium| O(nlogn)| O(n)|\n[Graph Valid Tree](https://leetcode.com/problems/graph-valid-tree/)| [Swift](./Graph/GraphValidTree.swift)| Medium| O(nlogn)| O(n)|\n[Number of Islands II](https://leetcode.com/problems/number-of-islands-ii/)| [Swift](./Graph/NumberIslandsII.swift)| Hard| O(klogmn)| O(mn)|\n[Course Schedule](https://leetcode.com/problems/course-schedule/)| [Swift](./Graph/CourseSchedule.swift)| Medium| O(n)| O(n)|\n[Course Schedule II](https://leetcode.com/problems/course-schedule-ii/)| [Swift](./Graph/CourseScheduleII.swift)| Medium| O(n)| O(n)|\n\n## Design\n| Title | Solution | Difficulty | Time | Space |\n| ----- | -------- | ---------- | ---- | ----- |\n[Shuffle an Array](https://leetcode.com/problems/shuffle-an-array/)| [Swift](./Design/ShuffleAnArray.swift)| Easy| O(n)| O(1)|\n[Design HashMap](https://leetcode.com/problems/design-hashmap/)| [Swift](./Design/DesignHashMap.swift)| Easy| O(n)| O(n)|\n[Design Tic-Tac-Toe](https://leetcode.com/problems/design-tic-tac-toe/)| [Swift](./Design/DesignTicTacToe.swift)| Medium| O(1)| O(n)|\n[Flatten Nested List Iterator](https://leetcode.com/problems/flatten-nested-list-iterator)| [Swift](./Design/FlattenNestedListIterator.swift)| Medium| O(n)| O(n)|\n[Flatten 2D Vector](https://leetcode.com/problems/flatten-2d-vector/)| [Swift](./Design/Vector2D.swift)| Medium | O(n)| O(n)|\n[Implement Trie (Prefix Tree)](https://leetcode.com/problems/implement-trie-prefix-tree/)| [Swift](./Design/ImplementTrie.swift)| Medium | O(n)| O(n)|\n[Add and Search Word - Data structure design](https://leetcode.com/problems/add-and-search-word-data-structure-design/)| [Swift](./Design/AddSearchWord.swift)| Medium | O(24^n)| O(n)|\n[Insert Delete GetRandom O(1)](https://leetcode.com/problems/insert-delete-getrandom-o1/)| [Swift](./Design/InsertDeleteGetRandom.swift)| Medium| O(1)| O(n)|\n[LRU Cache](https://leetcode.com/problems/lru-cache/)| [Swift](./Design/LRUCache.swift)| Hard| O(1)| O(n)|\n[All O`one Data Structure](https://leetcode.com/problems/all-oone-data-structure/)| [Swift](./Design/AllOne.swift)| Hard| O(1)| O(n)|\n\n\n## Google\n| Title | Solution | Difficulty | Frequency |\n| ----- | -------- | ---------- | --------- |\n[Race Car](https://leetcode.com/problems/race-car/)| [Swift](./BFS/RaceCar.swift)| Hard| ★★★★★★|\n[Plus One](https://leetcode.com/problems/plus-one/)| [Swift](./Math/PlusOne.swift)| Easy| ★★★★★★|\n[Number of Islands](https://leetcode.com/problems/number-of-islands/)| [Swift](./DFS/NumberofIslands.swift)| Medium| ★★★★|\n[Summary Ranges](https://leetcode.com/problems/summary-ranges/)| [Swift](./Array/SummaryRanges.swift)| Medium| ★★★★|\n[Perfect Squares](https://leetcode.com/problems/perfect-squares/)| [Swift](./DP/PerfectSquares.swift)| Medium| ★★★★|\n[Merge Intervals](https://leetcode.com/problems/merge-intervals/)| [Swift](./Sort/MergeIntervals.swift)| Hard| ★★★|\n[Valid Parentheses](https://leetcode.com/problems/valid-parentheses/)| [Swift](./Stack/ValidParentheses.swift)| Easy| ★★★|\n[Trapping Rain Water](https://leetcode.com/problems/trapping-rain-water/)| [Swift](./Math/TrappingRainWater.swift)| Hard| ★★|\n[Merge k Sorted Lists](https://leetcode.com/problems/merge-k-sorted-lists/)| [Swift](./LinkedList/MergeKSortedLists.swift)| Hard| ★★|\n[Longest Consecutive Sequence](https://leetcode.com/problems/longest-consecutive-sequence/)| [Swift](./Array/LongestConsecutiveSequence.swift)| Hard| ★★|\n[Find Peak Element](https://leetcode.com/problems/find-peak-element/)| [Swift](./Search/FindPeakElement.swift)| Medium| ★★|\n[Power of Two](https://leetcode.com/problems/power-of-two/)| [Swift](./Math/PowerTwo.swift)| Easy| ★★|\n[Spiral Matrix](https://leetcode.com/problems/spiral-matrix/)| [Swift](./Array/SpiralMatrix.swift)| Medium| ★★|\n[Sliding Window Maximum ](https://leetcode.com/problems/sliding-window-maximum/)| [Swift](./Array/SlidingWindowMaximum.swift)| Hard| ★★|\n[Pow(x, n)](https://leetcode.com/problems/isomorphic-strings/)| [Swift](./Math/Pow.swift)| Medium| ★★|\n[Letter Combinations of a Phone Number](https://leetcode.com/problems/letter-combinations-of-a-phone-number/)| [Swift](./DFS/LetterCombinationsPhoneNumber.swift)| Medium| ★★|\n[Heaters](https://leetcode.com/problems/heaters/)| [Swift](./Array/Heaters.swift)| Easy| ★|\n\n## Facebook\n| Title | Solution | Difficulty | Frequency |\n| ----- | -------- | ---------- | --------- |\n[3Sum](https://leetcode.com/problems/3sum/)| [Swift](./Array/ThreeSum.swift)| Medium| ★★★★★★|\n[Valid Palindrome](https://leetcode.com/problems/valid-palindrome/)| [Swift](./String/ValidPalindrome.swift)| Easy| ★★★★★★|\n[Valid Palindrome II](https://leetcode.com/problems/valid-palindrome-ii/)| [Swift](./String/ValidPalindromeII.swift)| Easy| ★★★★★★|\n[Move Zeroes](https://leetcode.com/problems/move-zeroes/)| [Swift](./Array/MoveZeroes.swift)| Easy| ★★★★★★|\n[Remove Invalid Parentheses](https://leetcode.com/problems/remove-invalid-parentheses/)| [Swift](./DFS/RemoveInvalidParentheses.swift)| Hard| ★★★★★★|\n[Add Binary](https://leetcode.com/problems/add-binary/)| [Swift](./Math/AddBinary.swift)| Easy| ★★★★★|\n[Two Sum](https://leetcode.com/problems/two-sum/)| [Swift](./Array/TwoSum.swift)| Easy| ★★★★★|\n[Binary Tree Paths](https://leetcode.com/problems/binary-tree-paths/)| [Swift](./Tree/BinaryTreePaths.swift)| Easy| ★★★★|\n[Letter Combinations of a Phone Number](https://leetcode.com/problems/letter-combinations-of-a-phone-number/)| [Swift](./DFS/LetterCombinationsPhoneNumber.swift)| Medium| ★★★★|\n[Merge k Sorted Lists](https://leetcode.com/problems/merge-k-sorted-lists/)| [Swift](./LinkedList/MergeKSortedLists.swift)| Hard| ★★★★|\n[Reverse Linked List](https://leetcode.com/problems/reverse-linked-list/)| [Swift](./LinkedList/ReverseLinkedList.swift)| Easy| ★★★|\n[Merge Intervals](https://leetcode.com/problems/merge-intervals/)| [Swift](./Sort/MergeIntervals.swift)| Hard| ★★★|\n[Number of Islands](https://leetcode.com/problems/number-of-islands/)| [Swift](./DFS/NumberofIslands.swift)| Medium| ★★★|\n[Reverse Linked List](https://leetcode.com/problems/reverse-linked-list/)| [Swift](./LinkedList/ReverseLinkedList.swift)| Easy| ★★★|\n[Expression Add Operators](https://leetcode.com/problems/expression-add-operators/)| [Swift](./DFS/ExpressionAddOperators.swift)| Hard| ★★★|\n[Subsets](https://leetcode.com/problems/subsets/)| [Swift](./DFS/Subsets.swift)| Medium| ★★★|\n[Sort Colors](https://leetcode.com/problems/sort-colors/)| [Swift](./Sort/SortColors.swift)| Medium| ★★|\n\n## Snapchat\n| Title | Solution | Difficulty | Frequency |\n| ----- | -------- | ---------- | --------- |\n[Game of Life](https://leetcode.com/problems/game-of-life/)\t|\t[Swift](./Array/GameLife.swift)| Medium| ★★★★★★|\n[Meeting Rooms II](https://leetcode.com/problems/meeting-rooms-ii/)| [Swift](./Sort/MeetingRoomsII.swift)| Medium| ★★★★★★|\n[Valid Sudoku](https://leetcode.com/problems/valid-sudoku/)| [Swift](./Array/ValidSudoku.swift)| Easy| ★★★★★|\n[Binary Tree Vertical Order Traversal](https://leetcode.com/problems/binary-tree-vertical-order-traversal/)| [Swift](./Tree/BinaryTreeVerticalOrderTraversal.swift)| Medium| ★★★★|\n[Alien Dictionary](https://leetcode.com/problems/alien-dictionary/)| [Swift](./Graph/AlienDictionary.swift)| Hard| ★★★★|\n[One Edit Distance](https://leetcode.com/problems/one-edit-distance/)| [Swift](./String/OneEditDistance.swift)| Medium| ★★★|\n[Sudoku Solver](https://leetcode.com/problems/sudoku-solver/)| [Swift](./Math/SudokuSolver.swift)| Hard| ★★★|\n[Reverse Linked List](https://leetcode.com/problems/reverse-linked-list/)| [Swift](./LinkedList/ReverseLinkedList.swift)| Easy| ★★|\n[Unique Binary Search Trees](https://leetcode.com/problems/unique-binary-search-trees/)| [Swift](./Tree/UniqueBinarySearchTrees.swift)| Medium| ★★|\n[Minimum Window Substring](https://leetcode.com/problems/minimum-window-substring/)| [Swift](./String/MinimumWindowSubstring.swift)| Hard| ★★|\n[Remove K Digits](https://leetcode.com/problems/remove-k-digits/)| [Swift](./Stack/RemoveKDigits.swift)| Medium| ★|\n[Ternary Expression Parser](https://leetcode.com/problems/ternary-expression-parser/)| [Swift](./Stack/TernaryExpressionParser.swift)| Medium| ★|\n\n## Uber\n| Title | Solution | Difficulty | Frequency |\n| ----- | -------- | ---------- | --------- |\n[Valid Sudoku](https://leetcode.com/problems/valid-sudoku/)| [Swift](./Array/ValidSudoku.swift)| Easy| ★★★★|\n[Spiral Matrix](https://leetcode.com/problems/spiral-matrix/)| [Swift](./Array/SpiralMatrix.swift)| Medium| ★★★★|\n[Letter Combinations of a Phone Number](https://leetcode.com/problems/letter-combinations-of-a-phone-number/)| [Swift](./DFS/LetterCombinationsPhoneNumber.swift)| Medium| ★★★★|\n[Group Anagrams](https://leetcode.com/problems/anagrams/)| [Swift](./String/GroupAnagrams.swift)| Medium| ★★★★|\n[Word Pattern](https://leetcode.com/problems/word-pattern/)| [Swift](./String/WordPattern.swift)| Easy| ★★★|\n[Roman to Integer](https://leetcode.com/problems/roman-to-integer/)| [Swift](./Math/RomanToInteger.swift)| Easy| ★★★|\n[Combination Sum](https://leetcode.com/problems/combination-sum/)| [Swift](./DFS/CombinationSum.swift)| Medium| ★★|\n\n## Airbnb\n| Title | Solution | Difficulty | Frequency |\n| ----- | -------- | ---------- | --------- |\n[Two Sum](https://leetcode.com/problems/two-sum/)| [Swift](./Array/TwoSum.swift)| Easy| ★★★★★|\n[Text Justification](https://leetcode.com/problems/text-justification/)| [Swift](./String/TextJustification.swift)| Hard| ★★★★|\n[House Robber](https://leetcode.com/problems/house-robber/)| [Swift](./DP/HouseRobber.swift)| Easy| ★★|\n[Single Number](https://leetcode.com/problems/single-number/)| [Swift](./Math/SingleNumber.swift)| Medium| ★★|\n[Word Search II](https://leetcode.com/problems/word-search-ii/)| [Swift](./DFS/WordSearchII.swift)| Hard| ★★|\n[Add Two Numbers](https://leetcode.com/problems/add-two-numbers/)| [Swift](./Math/AddTwoNumbers.swift)| Medium| ★★|\n\n## LinkedIn\n| Title | Solution | Difficulty | Frequency |\n| ----- | -------- | ---------- | --------- |\n[Maximum Subarray](https://leetcode.com/problems/maximum-subarray/)| [Swift](./DP/MaximumSubarray.swift)| Medium| ★★★★★★|\n[Pow(x, n)](https://leetcode.com/problems/isomorphic-strings/)| [Swift](./Math/Pow.swift)| Medium| ★★★★★★|\n[Merge Intervals](https://leetcode.com/problems/merge-intervals/)| [Swift](./Sort/MergeIntervals.swift)| Hard| ★★★★★★|\n[Isomorphic Strings](https://leetcode.com/problems/isomorphic-strings/)| [Swift](./String/IsomorphicStrings.swift)| Easy| ★★★★★★|\n[Search in Rotated Sorted Array](https://leetcode.com/problems/search-in-rotated-sorted-array/)| [Swift](./Search/SearchInRotatedSortedArray.swift)| Hard| ★★★★★|\n[Search for a Range](https://leetcode.com/problems/find-first-and-last-position-of-element-in-sorted-array/)| [Swift](./Search/SearchForARange.swift)| Medium| ★★★★★|\n[Two Sum](https://leetcode.com/problems/two-sum/)| [Swift](./Array/TwoSum.swift)| Easy| ★★★★|\n[Binary Tree Level Order Traversal](https://leetcode.com/problems/binary-tree-level-order-traversal/)| [Swift](./Tree/BinaryTreeLevelOrderTraversal.swift)| Easy| ★★★★|\n[Evaluate Reverse Polish Notation](https://leetcode.com/problems/evaluate-reverse-polish-notation/)| [Swift](./Stack/EvaluateReversePolishNotation.swift)| Medium| ★★★|\n[Maximum Product Subarray](https://leetcode.com/problems/maximum-product-subarray/)| [Swift](./DP/MaximumProductSubarray.swift)| Medium| ★★★|\n[Product of Array Except Self](https://leetcode.com/problems/product-of-array-except-self/)| [Swift](./Array/ProductExceptSelf.swift)| Medium| ★★★|\n[Symmetric Tree](https://leetcode.com/problems/symmetric-tree/)| [Swift](./Tree/SymmetricTree.swift)| Easy| ★★|\n\n## Amazon\n| Title | Solution | Difficulty | Frequency |\n| ----- | -------- | ---------- | --------- |\n[Two Sum](https://leetcode.com/problems/two-sum/)| [Swift](./Array/TwoSum.swift)| Easy| ★★★★★★|\n[Min Cost Climbing Stairs](https://leetcode.com/problems/min-cost-climbing-stairs/)| [Swift](./DP/MinCostClimbingStairs.swift)| Easy| ★★★★|\n[Number of Islands](https://leetcode.com/problems/number-of-islands/)| [Swift](./DFS/NumberofIslands.swift)| Medium| ★★|\n[Add Two Numbers](https://leetcode.com/problems/add-two-numbers/)| [Swift](./Math/AddTwoNumbers.swift)| Medium| ★★|\n[Reverse Linked List](https://leetcode.com/problems/reverse-linked-list/)| [Swift](./LinkedList/ReverseLinkedList.swift)| Easy| ★★|\n[Valid Parentheses](https://leetcode.com/problems/valid-parentheses/)| [Swift](./Stack/ValidParentheses.swift)| Easy| ★★|\n[Longest Palindromic Substring](https://leetcode.com/problems/longest-palindromic-substring/)| [Swift](./DP/LongestPalindromicSubstring.swift)| Medium| ★★|\n[Trapping Rain Water](https://leetcode.com/problems/trapping-rain-water/)| [Swift](./Math/TrappingRainWater.swift)| Hard| ★★|\n[Longest Substring Without Repeating Characters](https://leetcode.com/problems/longest-substring-without-repeating-characters/)| [Swift](./String/LongestSubstringWithoutRepeatingCharacters.swift)| Medium| ★★|\n[Letter Combinations of a Phone Number](https://leetcode.com/problems/letter-combinations-of-a-phone-number/)| [Swift](./DFS/LetterCombinationsPhoneNumber.swift)| Medium| ★★|\n[Valid Anagram](https://leetcode.com/problems/valid-anagram/)| [Swift](./String/ValidAnagram.swift)| Easy| ★★|\n[Rotate Image](https://leetcode.com/problems/rotate-image/)| [Swift](./Array/RotateImage.swift)| Medium| ★★|\n[Best Time to Buy and Sell Stock](https://leetcode.com/problems/best-time-to-buy-and-sell-stock/)| [Swift](./DP/BestTimeBuySellStock.swift)| Easy| ★★|\n[3Sum](https://leetcode.com/problems/3sum/)| [Swift](./Array/ThreeSum.swift)| Medium| ★★|\n[Sliding Window Maximum ](https://leetcode.com/problems/sliding-window-maximum/)| [Swift](./Array/SlidingWindowMaximum.swift)| Hard| ★★|\n\n## Microsoft\n| Title | Solution | Difficulty | Frequency |\n| ----- | -------- | ---------- | --------- |\n[Reverse Linked List](https://leetcode.com/problems/reverse-linked-list/)| [Swift](./LinkedList/ReverseLinkedList.swift)| Easy| ★★★★★★|\n[Two Sum](https://leetcode.com/problems/two-sum/)| [Swift](./Array/TwoSum.swift)| Easy| ★★★★★|\n[String to Integer (atoi)](https://leetcode.com/problems/string-to-integer-atoi/)| [Swift](./Math/Atoi.swift)| Easy| ★★★★|\n[Add Two Numbers](https://leetcode.com/problems/add-two-numbers/)| [Swift](./Math/AddTwoNumbers.swift)| Medium| ★★★★|\n[Excel Sheet Column Number](https://leetcode.com/problems/excel-sheet-column-number/)| [Swift](./Math/ExcelSheetColumnNumber.swift)| Easy| ★★★★|\n[Validate Binary Search Tree](https://leetcode.com/problems/validate-binary-search-tree/)| [Swift](./Tree/ValidateBinarySearchTree.swift)| Medium| ★★★|\n[Merge Two Sorted Lists](https://leetcode.com/problems/merge-two-sorted-lists/)| [Swift](./LinkedList/MergeTwoSortedLists.swift)| Easy| ★★★|\n\n\n\n## Problem Status\n| Solution | Number | Title | Difficulty |\n| -------- | ------ | ----- | ---------- |\n| [Swift](./LinkedList/LFUCache.swift)\t|\t460\t|\t[LFU Cache](https://oj.leetcode.com/problems/lfu-cache/)\t| Hard\t|\n| [Swift](./Array/FindDisappearedNumbers.swift)| 448| [Find All Numbers Disappeared in an Array](https://leetcode.com/problems/find-all-numbers-disappeared-in-an-array/)| Easy|\n| [Swift](./DFS/CombinationSumIV.swift)\t|\t377\t|\t[Combination Sum IV](https://leetcode.com/problems/combination-sum-iv/)\t|\tMedium\n|\t\t|\t376\t|\t[Wiggle Subsequence](https://leetcode.com/problems/wiggle-subsequence/)\t|\tMedium\n|\t[Swift](./DP/GuessNumberHigherOrLowerII.swift)\t|\t375\t|\t[Guess Number Higher or Lower II](https://leetcode.com/problems/guess-number-higher-or-lower-ii/)\t|\tMedium\n|\t\t|\t374\t|\t[Guess Number Higher or Lower](https://leetcode.com/problems/guess-number-higher-or-lower/)\t| Easy\n|\t\t|\t373\t|\t[Find K Pairs with Smallest Sums](https://leetcode.com/problems/find-k-pairs-with-smallest-sums/)\t|\tMedium\n|\t[Swift](./Math/SuperPow.swift)\t|\t372\t|\t[Super Pow](https://leetcode.com/problems/super-pow/)\t|\tMedium\n|\t[Swift](./Math/SumTwoIntegers.swift)\t|\t371\t|\t[Sum of Two Integers](https://leetcode.com/problems/sum-of-two-integers/)\t| Easy\n|\t\t|\t370\t|\t[Range Addition](https://leetcode.com/problems/range-addition/) \u0026hearts;\t|\tMedium\n|\t\t|\t369\t|\t[Plus One Linked List](https://leetcode.com/problems/plus-one-linked-list/) \u0026hearts;\t|\tMedium\n|\t\t|\t368\t|\t[Largest Divisible Subset](https://leetcode.com/problems/largest-divisible-subset/)\t|\tMedium\n|\t\t|\t367\t|\t[Valid Perfect Square](https://leetcode.com/problems/valid-perfect-square/)\t|\tMedium\n|\t\t|\t366\t|\t[Find Leaves of Binary Tree](https://leetcode.com/problems/find-leaves-of-binary-tree/) \u0026hearts;\t|\tMedium\n|\t\t|\t365\t|\t[Water and Jug Problem](https://leetcode.com/problems/water-and-jug-problem/)\t|\tMedium\n| [Swift](./DP/NestedListWeightSumII.swift)\t\t|\t364\t|\t[Nested List Weight Sum II](https://leetcode.com/problems/nested-list-weight-sum-ii/) \u0026hearts;\t|\tMedium\n|\t\t|\t363\t|\t[Max Sum of Rectangle No Larger Than K](https://leetcode.com/problems/max-sum-of-sub-matrix-no-larger-than-k/)\t|\tHard\n|\t\t|\t362\t|\t[Design Hit Counter](https://leetcode.com/problems/design-hit-counter/) \u0026hearts;\t|\tMedium\n|\t\t|\t361\t|\t[Bomb Enemy](https://leetcode.com/problems/bomb-enemy/) \u0026hearts;\t|\tMedium\n| [Swift](./Sort/SortTransformedArray.swift)\t|\t360\t|\t[Sort Transformed Array](https://leetcode.com/problems/sort-transformed-array/) \u0026hearts;\t|\tMedium\n|\t\t|\t359\t|\t[Logger Rate Limiter](https://leetcode.com/problems/logger-rate-limiter/) \u0026hearts;\t| Easy\n|\t\t|\t358\t|\t[Rearrange String k Distance Apart](https://leetcode.com/problems/rearrange-string-k-distance-apart/) \u0026hearts;\t|\tHard\n|\t\t|\t357\t|\t[Count Numbers with Unique Digits](https://leetcode.com/problems/count-numbers-with-unique-digits/)\t|\tMedium\n|\t\t|\t356\t|\t[Line Reflection](https://leetcode.com/problems/line-reflection/) \u0026hearts;\t|\tMedium\n|\t\t|\t355\t|\t[Design Twitter](https://leetcode.com/problems/design-twitter/)\t|\tMedium\n|\t\t|\t354\t|\t[Russian Doll Envelopes](https://leetcode.com/problems/russian-doll-envelopes/)\t|\tHard\n|\t\t|\t353\t|\t[Design Snake Game](https://leetcode.com/problems/design-snake-game/) \u0026hearts;\t|\tMedium\n|\t\t|\t352\t|\t[Data Stream as Disjoint Intervals](https://leetcode.com/problems/data-stream-as-disjoint-intervals/)\t|\tHard\n|\t\t|\t351\t|\t[Android Unlock Patterns](https://leetcode.com/problems/android-unlock-patterns/) \u0026hearts;\t|\tMedium\n|\t[Swift](./Array/IntersectionTwoArraysII.swift)\t|\t350\t|\t[Intersection of Two Arrays II](https://leetcode.com/problems/intersection-of-two-arrays-ii/)\t| Easy\n|\t[Swift](./Array/IntersectionTwoArrays.swift)\t|\t349\t|\t[Intersection of Two Arrays](https://leetcode.com/problems/intersection-of-two-arrays/)\t| Easy\n|\t\t|\t348\t|\t[Design Tic-Tac-Toe](https://leetcode.com/problems/design-tic-tac-toe/) \u0026hearts;\t|\tMedium\n|\t[Swift](./Sort/TopKFrequentElements.swift)\t|\t347\t|\t[Top K Frequent Elements](https://leetcode.com/problems/top-k-frequent-elements/)\t|\tMedium\n|\t\t|\t346\t|\t[Moving Average from Data Stream](https://leetcode.com/problems/moving-average-from-data-stream/) \u0026hearts;\t| Easy\n|\t[Swift](./String/ReverseVowelsOfAString.swift)\t|\t345\t|\t[Reverse Vowels of a String](https://leetcode.com/problems/reverse-vowels-of-a-string/)\t| Easy\n|\t[Swift](./String/ReverseString.swift)\t|\t344\t|\t[Reverse String](https://leetcode.com/problems/reverse-string/)\t| Easy\n|\t[Swift](./Math/IntegerBreak.swift)\t|\t343\t|\t[Integer Break](https://leetcode.com/problems/integer-break/)\t|\tMedium\n|\t\t|\t342\t|\t[Power of Four](https://leetcode.com/problems/power-of-four/)\t| Easy\n|\t[Swift](./Design/FlattenNestedListIterator.swift)\t|\t341\t|\t[Flatten Nested List Iterator](https://leetcode.com/problems/flatten-nested-list-iterator/)\t|\tMedium\n|\t[Swift](./String/LongestSubstringMostKDistinctCharacters.swift)\t|\t340\t|\t[Longest Substring with At Most K Distinct Characters](https://leetcode.com/problems/longest-substring-with-at-most-k-distinct-characters/)  \u0026hearts;\t|\tHard\n|\t[Swift](./DP/NestedListWeightSum.swift)\t|\t339\t|\t[Nested List Weight Sum](https://leetcode.com/problems/nested-list-weight-sum/)  \u0026hearts;\t| Easy\n|\t[Swift](./Math/CountingBits.swift)\t|\t338\t|\t[Counting Bits](https://leetcode.com/problems/counting-bits/)\t|\tMedium\n|\t[Swift](./Tree/HouseRobberIII.swift)\t|\t337\t|\t[House Robber III](https://leetcode.com/problems/house-robber-iii/)\t|\tMedium\n|\t\t|\t336\t|\t[Palindrome Pairs](https://leetcode.com/problems/palindrome-pairs/)\t|\tHard\n|\t\t|\t335\t|\t[Self Crossing](https://leetcode.com/problems/self-crossing/)\t|\tHard\n|\t[Swift](./Tree/IncreasingTripletSubsequence.swift)\t|\t334\t|\t[Increasing Triplet Subsequence](https://leetcode.com/problems/increasing-triplet-subsequence/)\t|\tMedium\n|\t\t|\t333\t|\t[Largest BST Subtree](https://leetcode.com/problems/largest-bst-subtree/)  \u0026hearts;\t|\tMedium\n|\t\t|\t332\t|\t[Reconstruct Itinerary](https://leetcode.com/problems/reconstruct-itinerary/)\t|\tMedium\n|\t\t|\t331\t|\t[Verify Preorder Serialization of a Binary Tree](https://leetcode.com/problems/verify-preorder-serialization-of-a-binary-tree/)\t|\tMedium\n|\t\t|\t330\t|\t[Patching Array](https://leetcode.com/problems/patching-array/)\t|\tHard\n|\t\t|\t329\t|\t[Longest Increasing Path in a Matrix](https://leetcode.com/problems/longest-increasing-path-in-a-matrix/)\t|\tHard\n| [Swift](./LinkedList/OddEvenLinkedList.swift)\t|\t328\t|\t[Odd Even Linked List](https://leetcode.com/problems/odd-even-linked-list/)\t|\tMedium\n|\t\t|\t327\t|\t[Count of Range Sum](https://leetcode.com/problems/count-of-range-sum/)\t|\tHard\n|\t[Swift](./Math/PowerThree.swift)\t|\t326\t|\t[Power of Three](https://leetcode.com/problems/power-of-three/)\t| Easy\n|\t[Swift](./Array/MaximumSizeSubarraySumEqualsK.swift)\t|\t325\t|\t[Maximum Size Subarray Sum Equals k](https://leetcode.com/problems/maximum-size-subarray-sum-equals-k/)  \u0026hearts;\t|\tMedium\n|\t[Swift](./Sort/WiggleSortII.swift)\t|\t324\t|\t[Wiggle Sort II](https://leetcode.com/problems/wiggle-sort-ii/)\t|\tMedium\n|\t[Swift](./Sort/NumberConnectedComponentsUndirectedGraph.swift)\t|\t323\t|\t[Number of Connected Components in an Undirected Graph](https://leetcode.com/problems/number-of-connected-components-in-an-undirected-graph/)  \u0026hearts;\t|\tMedium\n|\t[Swift](./DP/CoinChange.swift)\t|\t322\t|\t[Coin Change](https://leetcode.com/problems/coin-change/)\t|\tMedium\n|\t[Swift](./Array/CreateMaximumNumber.swift)\t|\t321\t|\t[Create Maximum Number](https://leetcode.com/problems/create-maximum-number/)\t|\tHard\n|\t[Swift](./DFS/GeneralizedAbbreviation.swift) |\t320\t|\t[Generalized Abbreviation](https://leetcode.com/problems/generalized-abbreviation/)  \u0026hearts;\t|\tMedium\n|\t\t|\t319\t|\t[Bulb Switcher](https://leetcode.com/problems/bulb-switcher/)\t|\tMedium\n|\t\t|\t318\t|\t[Maximum Product of Word Lengths](https://leetcode.com/problems/maximum-product-of-word-lengths/)\t|\tMedium\n|\t[Swift](./BFS/ShortestDistanceAllBuildings.swift)\t|\t317\t|\t[Shortest Distance from All Buildings](https://leetcode.com/problems/shortest-distance-from-all-buildings/)  \u0026hearts;\t|\tHard\n|\t\t|\t316\t|\t[Remove Duplicate Letters](https://leetcode.com/problems/remove-duplicate-letters/)\t|\tHard\n|\t\t|\t315\t|\t[Count of Smaller Numbers After Self](https://leetcode.com/problems/count-of-smaller-numbers-after-self/)\t|\tHard\n|\t[Swift](./Tree/BinaryTreeVerticalOrderTraversal.swift)\t|\t314\t|\t[Binary Tree Vertical Order Traversal](https://leetcode.com/problems/binary-tree-vertical-order-traversal/) \u0026hearts;\t|\tMedium\n|\t[Swift](./Math/SuperUglyNumber.swift)\t|\t313\t|\t[Super Ugly Number](https://leetcode.com/problems/super-ugly-number/)\t|\tMedium\n|\t[Swift](./DP/GuessNumberHigherOrLowerII.swift)\t|\t312\t|\t[Burst Balloons](https://leetcode.com/problems/burst-balloons/)\t|\tHard\n|\t[Swift](./Math/SparseMatrixMultiplication.swift)\t|\t311\t|\t[Sparse Matrix Multiplication](https://leetcode.com/problems/sparse-matrix-multiplication/)  \u0026hearts;\t|\tMedium\n|\t\t|\t310\t|\t[Minimum Height Trees](https://leetcode.com/problems/minimum-height-trees/)\t|\tMedium\n|\t[Swift](./DP/BestTimeBuySellStockCooldown.swift)\t|\t309\t|\t[Best Time to Buy and Sell Stock with Cooldown](https://leetcode.com/problems/best-time-to-buy-and-sell-stock-with-cooldown/)\t|\tMedium\n|\t\t|\t308\t|\t[Range Sum Query 2D - Mutable](https://leetcode.com/problems/range-sum-query-2d-mutable/) \u0026hearts;\t|\tHard\n|\t\t|\t307\t|\t[Range Sum Query - Mutable](https://leetcode.com/problems/range-sum-query-mutable/)\t|\tMedium\n|\t\t|\t306\t|\t[Additive Number](https://leetcode.com/problems/additive-number/)\t|\tMedium\n|\t[Swift](./Graph/NumberIslandsII.swift)\t|\t305\t|\t[Number of Islands II](https://leetcode.com/problems/number-of-islands-ii/)  \u0026hearts;\t|\tHard\n|\t[Swift](./Array/NumMatrix.swift)\t|\t304\t|\t[Range Sum Query 2D - Immutable](https://leetcode.com/problems/range-sum-query-2d-immutable/)\t|\tMedium\n|\t\t|\t303\t|\t[Range Sum Query - Immutable](https://leetcode.com/problems/range-sum-query-immutable/)\t| Easy\n|\t\t|\t302\t|\t[Smallest Rectangle Enclosing Black Pixels](https://leetcode.com/problems/smallest-rectangle-enclosing-black-pixels/)  \u0026hearts;\t|\tHard\n|\t[Swift](./DFS/RemoveInvalidParentheses.swift)\t|\t301\t|\t[Remove Invalid Parentheses](https://leetcode.com/problems/remove-invalid-parentheses/)\t|\tHard\n|\t[Swift](./DP/LongestIncreasingSubsequence.swift)\t|\t300\t|\t[Longest Increasing Subsequence](https://leetcode.com/problems/longest-increasing-subsequence/)\t|\tMedium\n|\t\t|\t299\t|\t[Bulls and Cows](https://leetcode.com/problems/bulls-and-cows/)\t| Easy\t|\n|\t\t|\t298\t|\t[Binary Tree Longest Consecutive Sequence](https://leetcode.com/problems/binary-tree-longest-consecutive-sequence/) \u0026hearts;\t|\tMedium\t|\n|\t\t|\t297\t|\t[Serialize and Deserialize Binary Tree](https://leetcode.com/problems/serialize-and-deserialize-binary-tree/)\t|\tHard\t|\n|\t[Swift](./Tree/UniqueBinarySearchTrees.swift)\t|\t296\t|\t[Best Meeting Point](https://leetcode.com/problems/best-meeting-point/) \u0026hearts;\t|\tHard\t|\n|\t\t|\t295\t|\t[Find Median from Data Stream](https://leetcode.com/problems/find-median-from-data-stream/)\t|\tHard\t|\n|\t[Swift](./DP/FlipGameII.swift)\t|\t294\t|\t[Flip Game II](https://leetcode.com/problems/flip-game-ii/) \u0026hearts;\t|\tMedium\t|\n|\t[Swift](./String/FlipGame.swift)\t|\t293\t|\t[Flip Game](https://leetcode.com/problems/flip-game/) \u0026hearts;\t| Easy\t|\n|\t\t|\t292\t|\t[Nim Game](https://leetcode.com/problems/nim-game/)\t| Easy\t|\n|\t\t|\t291\t|\t[Word Pattern II](https://leetcode.com/problems/word-pattern-ii/) \u0026hearts;\t|\tHard\t|\n|\t[Swift](./String/WordPattern.swift)\t|\t290\t|\t[Word Pattern](https://leetcode.com/problems/word-pattern/)\t| Easy\t|\n|\t[Swift](./Array/GameLife.swift)\t|\t289\t|\t[Game of Life](https://leetcode.com/problems/game-of-life/)\t|\tMedium\t|\n|\t\t|\t288\t|\t[Unique Word Abbreviation](https://leetcode.com/problems/unique-word-abbreviation/) \u0026hearts;\t| Easy\t|\n|\t\t|\t287\t|\t[Find the Duplicate Number](https://leetcode.com/problems/find-the-duplicate-number/)\t|\tHard\t|\n|\t[Swift](./DFS/NumberofIslands.swift)\t|\t286\t|\t[Walls and Gates](https://leetcode.com/problems/walls-and-gates/) \u0026hearts;\t|\tMedium\t|\n|\t\t|\t285\t|\t[Inorder Successor in BST](https://leetcode.com/problems/inorder-successor-in-bst/) \u0026hearts;\t|\tMedium\t|\n|\t\t|\t284\t|\t[Peeking Iterator](https://leetcode.com/problems/peeking-iterator/)\t|\tMedium\t|\n|\t[Swift](./Array/MoveZeroes.swift)\t|\t283\t|\t[Move Zeroes](https://leetcode.com/problems/move-zeroes/)\t| Easy\t|\n|\t[Swift](./DFS/ExpressionAddOperators.swift)\t|\t282\t|\t[Expression Add Operators](https://leetcode.com/problems/expression-add-operators/)\t|\tHard\t|\n|\t\t|\t281\t|\t[Zigzag Iterator](https://leetcode.com/problems/zigzag-iterator/) \u0026hearts;\t|\tMedium\t|\n|\t[Swift](./Sort/WiggleSort.swift)\t|\t280\t|\t[Wiggle Sort](https://leetcode.com/problems/wiggle-sort/) \u0026hearts;\t|\tMedium\t|\n|\t[Swift](./DP/PerfectSquares.swift)\t|\t279\t|\t[Perfect Squares](https://leetcode.com/problems/perfect-squares/)\t|\tMedium\t|\n|\t\t|\t278\t|\t[First Bad Version](https://leetcode.com/problems/first-bad-version/)\t| Easy\t|\n|\t\t|\t277\t|\t[Find the Celebrity](https://leetcode.com/problems/find-the-celebrity/) \u0026hearts;\t|\tMedium\t|\n|\t[Swift](./DP/PaintFence.swift)\t|\t276\t|\t[Paint Fence](https://leetcode.com/problems/paint-fence/) \u0026hearts;\t| Easy\t|\n|\t\t|\t275\t|\t[H-Index II](https://leetcode.com/problems/h-index-ii/)\t|\tMedium\t|\n|\t\t|\t274\t|\t[H-Index](https://leetcode.com/problems/h-index/)\t|\tMedium\t|\n|\t[Swift](./Math/IntegerEnglishWords.swift)\t|\t273\t|\t[Integer to English Words](https://leetcode.com/problems/integer-to-english-words/)\t|\tHard\t|\n|\t[Swift](./Search/ClosestBinarySearchTreeValueII.swift)\t|\t272\t|\t[Closest Binary Search Tree Value II](https://leetcode.com/problems/closest-binary-search-tree-value-ii/) \u0026hearts;\t|\tHard\t|\n|\t\t|\t271\t|\t[Encode and Decode Strings](https://leetcode.com/problems/encode-and-decode-strings/) \u0026hearts;\t|\tMedium\t|\n|\t[Swift](./Search/ClosestBinarySearchTreeValue.swift)\t|\t270\t|\t[Closest Binary Search Tree Value](https://leetcode.com/problems/closest-binary-search-tree-value/) \u0026hearts;\t| Easy\t|\n|\t[Swift](./Graph/AlienDictionary.swift)\t|\t269\t|\t[Alien Dictionary](https://leetcode.com/problems/alien-dictionary/) \u0026hearts;\t|\tHard\t|\n|\t[Swift](./Math/MissingNumber.swift)\t|\t268\t|\t[Missing Number](https://leetcode.com/problems/missing-number/)\t|\tEasy\t|\n|\t\t|\t267\t|\t[Palindrome Permutation II](https://leetcode.com/problems/palindrome-permutation-ii/) \u0026hearts;\t|\tMedium\t|\n|\t[Swift](./String/PalindromePermutation.swift)\t|\t266\t|\t[Palindrome Permutation](https://leetcode.com/problems/palindrome-permutation/) \u0026hearts;\t| Easy\t|\n|\t[Swift](./DP/PaintHouseII.swift)\t|\t265\t|\t[Paint House II](https://leetcode.com/problems/paint-house-ii/) \u0026hearts;\t|\tHard\t|\n|\t[Swift](./Math/UglyNumberII.swift)\t|\t264\t|\t[Ugly Number II](https://leetcode.com/problems/ugly-number-ii/)\t|\tMedium\t|\n|\t[Swift](./Math/UglyNumber.swift)\t|\t263\t|\t[Ugly Number](https://leetcode.com/problems/ugly-number/)\t| Easy\t|\n|\t[Swift](./Sort/GraphValidTree.swift)\t|\t261\t|\t[Graph Valid Tree](https://leetcode.com/problems/graph-valid-tree/) \u0026hearts;\t|\tMedium\t|\n|\t\t|\t260\t|\t[Single Number III](https://leetcode.com/problems/single-number-iii/)\t|\tMedium\t|\n|\t\t|\t259\t|\t[3Sum Smaller](https://leetcode.com/problems/3sum-smaller/) \u0026hearts;\t|\tMedium\t|\n|\t[Swift](./Math/AddDigits.swift)\t|\t258\t|\t[Add Digits](https://leetcode.com/problems/add-digits/)\t| Easy\t|\n|\t[Swift](./Tree/BinaryTreePaths.swift)\t|\t257\t|\t[Binary Tree Paths](https://leetcode.com/problems/binary-tree-paths/)\t| Easy\t|\n|\t[Swift](./DP/PaintHouse.swift)\t|\t256\t|\t[Paint House](https://leetcode.com/problems/paint-house/) \u0026hearts;\t|\tMedium\t|\n|\t\t|\t255\t|\t[Verify Preorder Sequence in Binary Search Tree](https://leetcode.com/problems/verify-preorder-sequence-in-binary-search-tree/) \u0026hearts;\t|\tMedium\t|\n|\t[Swift](./DFS/FactorCombinations.swift)\t|\t254\t|\t[Factor Combinations](https://leetcode.com/problems/factor-combinations/) \u0026hearts;\t|\tMedium\t|\n|\t[Swift](./Sort/MeetingRoomsII.swift)\t|\t253\t|\t[Meeting Rooms II](https://leetcode.com/problems/meeting-rooms-ii/) \u0026hearts;\t|\tMedium\t|\n|\t[Swift](./Sort/MeetingRooms.swift)\t|\t252\t|\t[Meeting Rooms](https://leetcode.com/problems/meeting-rooms/) \u0026hearts;\t| Easy\t|\n|\t[Swift](./Design/Vector2D.swift)\t|\t251\t|\t[Flatten 2D Vector](https://leetcode.com/problems/flatten-2d-vector/) \u0026hearts;\t|\tMedium\t|\n|\t\t|\t250\t|\t[Count Univalue Subtrees](https://leetcode.com/problems/count-univalue-subtrees/) \u0026hearts;\t|\tMedium\t|\n|\t\t|\t249\t|\t[Group Shifted Strings](https://leetcode.com/problems/group-shifted-strings/) \u0026hearts;\t| Easy\t|\n|\t\t|\t248\t|\t[Strobogrammatic Number III](https://leetcode.com/problems/strobogrammatic-number-iii/) \u0026hearts;\t|\tHard\t|\n|\t[Swift](./DFS/StrobogrammaticNumberII.swift)\t|\t247\t|\t[Strobogrammatic Number II](https://leetcode.com/problems/strobogrammatic-number-ii/) \u0026hearts;\t|\tMedium\t|\n|\t[Swift](./Array/StrobogrammaticNumber.swift)\t|\t246\t|\t[Strobogrammatic Number](https://leetcode.com/problems/strobogrammatic-number/) \u0026hearts;\t| Easy\t|\n|\t[Swift](./Array/ShortestWordDistanceIII.swift)\t|\t245\t|\t[Shortest Word Distance III](https://leetcode.com/problems/shortest-word-distance-iii/) \u0026hearts;\t|\tMedium\t|\n|\t[Swift](./String/ShortestWordDistanceII.swift)\t|\t244\t|\t[Shortest Word Distance II](https://leetcode.com/problems/shortest-word-distance-ii/) \u0026hearts;\t|\tMedium\t|\n| [Swift](./String/ShortestWordDistance.swift)\t|\t243\t|\t[Shortest Word Distance](https://leetcode.com/problems/shortest-word-distance/) \u0026hearts;\t| Easy\t|\n|\t[Swift](./String/ValidAnagram.swift)\t|\t242\t|\t[Valid Anagram](https://leetcode.com/problems/valid-anagram/)\t| Easy\t|\n|\t[Swift](./DP/DifferentWaysAddParentheses.swift)\t|\t241\t|\t[Different Ways to Add Parentheses](https://leetcode.com/problems/different-ways-to-add-parentheses/)\t|\tMedium\t|\n|\t[Swift](./Search/Search2DMatrixII.swift) \t|\t240\t|\t[Search a 2D Matrix II](https://leetcode.com/problems/search-a-2d-matrix-ii/)\t|\tMedium\t|\n|\t[Swift](./Array/SlidingWindowMaximum.swift)\t|\t239\t|\t[Sliding Window Maximum](https://leetcode.com/problems/sliding-window-maximum/)\t|\tHard\t|\n|\t[Swift](./Array/ProductExceptSelf.swift)\t|\t238\t|\t[Product of Array Except Self](https://leetcode.com/problems/product-of-array-except-self/)\t|\tMedium\t|\n|\t\t|\t237\t|\t[Delete Node in a Linked List](https://leetcode.com/problems/delete-node-in-a-linked-list/)\t| Easy\t|\n|\t\t|\t236\t|\t[Lowest Common Ancestor of a Binary Tree](https://leetcode.com/problems/lowest-common-ancestor-of-a-binary-tree/)\t|\tMedium\t|\n|\t[Swift](./Tree/LowestCommonAncestorBinarySearchTree.swift)\t|\t235\t|\t[Lowest Common Ancestor of a Binary Search Tree](https://leetcode.com/problems/lowest-common-ancestor-of-a-binary-search-tree/)\t| Easy\t|\n|\t[Swift](./LinkedList/PalindromeLinkedList.swift)\t|\t234\t|\t[Palindrome Linked List](https://leetcode.com/problems/palindrome-linked-list/)\t| Easy\t|\n|\t\t|\t233\t|\t[Number of Digit One](https://leetcode.com/problems/number-of-digit-one/)\t|\tHard\t|\n|\t[Swift](./Queue/ImplementQueueUsingStacks.swift)\t|\t232\t|\t[Implement Queue using Stacks](https://leetcode.com/problems/implement-queue-using-stacks/)\t| Easy\t|\n|\t[Swift](./Math/PowerTwo.swift)\t|\t231\t|\t[Power of Two](https://leetcode.com/problems/power-of-two/)\t| Easy\t|\n|\t[Swift](./Tree/KthSmallestElementBST.swift)\t|\t230\t|\t[Kth Smallest Element in a BST](https://leetcode.com/problems/kth-smallest-element-in-a-bst/)\t|\tMedium\t|\n|\t[Swift](./Array/MajorityElementII.swift)\t|\t229\t|\t[Majority Element II](https://leetcode.com/problems/majority-element-ii/)\t|\tMedium\t|\n|\t[Swift](./Array/SummaryRanges.swift)\t|\t228\t|\t[Summary Ranges](https://leetcode.com/problems/summary-ranges/)\t|\tMedium\t|\n|\t\t|\t227\t|\t[Basic Calculator II](https://leetcode.com/problems/basic-calculator-ii/)\t|\tMedium\t|\n|\t[Swift](./Tree/InvertBinaryTree.swift)\t|\t226\t|\t[Invert Binary Tree](https://leetcode.com/problems/invert-binary-tree/)\t| Easy\t|\n|\t\t|\t225\t|\t[Implement Stack using Queues](https://leetcode.com/problems/implement-stack-using-queues/)\t| Easy\t|\n|\t[Swift](./Stack/BasicCalculator.swift)\t|\t224\t|\t[Basic Calculator](https://leetcode.com/problems/basic-calculator/)\t|\tHard\t|\n|\t[Swift](./Math/RectangleArea.swift)\t|\t223\t|\t[Rectangle Area](https://leetcode.com/problems/rectangle-area/)\t| Easy\t|\n|\t\t|\t222\t|\t[Count Complete Tree Nodes](https://leetcode.com/problems/count-complete-tree-nodes/)\t|\tMedium\t|\n|\t[Swift](./DP/MaximalSquare.swift)\t|\t221\t|\t[Maximal Square](https://leetcode.com/problems/maximal-square/)\t|\tMedium\t|\n|\t\t|\t220\t|\t[Contains Duplicate III](https://leetcode.com/problems/contains-duplicate-iii/)\t|\tMedium\t|\n|\t[Swift](./Array/ContainsDuplicateII.swift)\t|\t219\t|\t[Contains Duplicate II](https://leetcode.com/problems/contains-duplicate-ii/)\t| Easy\t|\n|\t\t|\t218\t|\t[The Skyline Problem](https://leetcode.com/problems/the-skyline-problem/)\t|\tHard\t|\n|\t[Swift](./Array/ContainsDuplicate.swift)\t|\t217\t|\t[Contains Duplicate](https://leetcode.com/problems/contains-duplicate/)\t| Easy\t|\n|\t[Swift](./DFS/combinationSumIII.swift)\t|\t216\t|\t[Combination Sum III](https://leetcode.com/problems/combination-sum-iii/)\t|\tMedium\t|\n|\t[Swift](./Sort/KthLargestElementInArray.swift)\t|\t215\t|\t[Kth Largest Element in an Array](https://leetcode.com/problems/kth-largest-element-in-an-array/)\t|\tMedium\t|\n|\t\t|\t214\t|\t[Shortest Palindrome](https://leetcode.com/problems/shortest-palindrome/)\t|\tHard\t|\n|\t[Swift](./DP/HouseRobberII.swift)\t|\t213\t|\t[House Robber II](https://leetcode.com/problems/house-robber-ii/)\t|\tMedium\t|\n| [Swift](./DFS/WordSearchII.swift)\t|\t212\t|\t[Word Search II](https://leetcode.com/problems/word-search-ii/)\t|\tHard\t|\n|\t[Swift](./DFS/WordDictionary.swift)\t|\t211\t|\t[Add and Search Word - Data structure design](https://leetcode.com/problems/add-and-search-word-data-structure-design/)\t|\tMedium\t|\n|\t[Swift](./Graph/CourseScheduleII.swift)\t|\t210\t|\t[Course Schedule II](https://leetcode.com/problems/course-schedule-ii/)\t|\tMedium\t|\n|\t[Swift](./Array/MinimumSizeSubarraySum.swift)\t|\t209\t|\t[Minimum Size Subarray Sum](https://leetcode.com/problems/minimum-size-subarray-sum/)\t|\tMedium\t|\n|\t[Swift](./Design/ImplementTrie.swift)\t|\t208\t|\t[Implement Trie (Prefix Tree)](https://leetcode.com/problems/implement-trie-prefix-tree/)\t|\tMedium\t|\n|\t[Swift](./Graph/CourseSchedule.swift)\t|\t207\t|\t[Course Schedule](https://leetcode.com/problems/course-schedule/)\t|\tMedium\t|\n|\t[Swift](./LinkedList/ReverseLinkedList.swift)\t|\t206\t|\t[Reverse Linked List](https://leetcode.com/problems/reverse-linked-list/)\t| Easy\t|\n|\t[Swift](./String/IsomorphicStrings.swift)\t|\t205\t|\t[Isomorphic Strings](https://leetcode.com/problems/isomorphic-strings/)\t| Easy\t|\n|\t[Swift](./Math/CountPrimes.swift)\t|\t204\t|\t[Count Primes](https://leetcode.com/problems/count-primes/)\t| Easy\t|\n|\t[Swift](./LinkedList/RemoveLinkedListElements.swift)\t|\t203\t|\t[Remove Linked List Elements](https://leetcode.com/problems/remove-linked-list-elements/)\t| Easy\t|\n|\t[Swift](./Math/HappyNumber.swift)\t|\t202\t|\t[Happy Number](https://leetcode.com/problems/happy-number/)\t| Easy\t|\n|\t\t|\t201\t|\t[Bitwise AND of Numbers Range](https://leetcode.com/problems/bitwise-and-of-numbers-range/)\t|\tMedium\t|\n|\t[Swift](./DFS/NumberofIslands.swift)\t|\t200\t|\t[Number of Islands](https://leetcode.com/problems/number-of-islands/)\t|\tMedium\t|\n| [Swift](./Tree/BinaryTreeRightSideView.swift)\t|\t199\t|\t[Binary Tree Right Side View](https://leetcode.com/problems/binary-tree-right-side-view/)\t| Medium\t|\n|\t[Swift](./DP/HouseRobber.swift)\t|\t198\t|\t[House Robber](https://leetcode.com/problems/house-robber/)\t| Easy\t|\n|\t\t|\t191\t|\t[Number of 1 Bits](https://oj.leetcode.com/problems/number-of-1-bits/)\t| Easy\t|\n|\t\t|\t190\t|\t[Reverse Bits](https://oj.leetcode.com/problems/reverse-bits/)\t| Easy\t|\n|\t[Swift](./Array/RotateArray.swift)\t|\t189\t|\t[Rotate Array](https://oj.leetcode.com/problems/rotate-array/)\t| Easy\t|\n|\t[Swift](./DP/BestTimeBuySellStockIV.swift)\t|\t188\t|\t[Best Time to Buy and Sell Stock IV](https://oj.leetcode.com/problems/best-time-to-buy-and-sell-stock-iv/)\t| Hard\t|\n|\t\t|\t187\t|\t[Repeated DNA Sequences](https://oj.leetcode.com/problems/repeated-dna-sequences/)\t| Medium\t|\n|\t[Swift](./String/ReverseWordsStringII.swift)\t|\t186\t|\t[Reverse Words in a String II](https://oj.leetcode.com/problems/reverse-words-in-a-string-ii/) \u0026hearts;\t| Medium\t|\n|\t[Swift]((./Sort/LargestNumber.swift))\t|\t179\t|\t[Largest Number](https://oj.leetcode.com/problems/largest-number/)\t| Medium\t|\n|\t\t|\t174\t|\t[Dungeon Game](https://oj.leetcode.com/problems/dungeon-game/)\t| Hard\t|\n|\t[Swift](./Stack/BinarySearchTreeIterator.swift)\t|\t173\t|\t[Binary Search Tree Iterator](https://oj.leetcode.com/problems/binary-search-tree-iterator/)\t| Medium\t|\n|\t[Swift](./Math/FactorialTrailingZeroes.swift)\t|\t172\t|\t[Factorial Trailing Zeroes](https://oj.leetcode.com/problems/factorial-trailing-zeroes/)\t| Easy\t|\n|\t[Swift](./Math/ExcelSheetColumnNumber.swift)\t|\t171\t|\t[Excel Sheet Column Number](https://oj.leetcode.com/problems/excel-sheet-column-number/)\t| Easy\t|\n|\t[Swift](./Array/TwoSumIII.swift)\t|\t170\t|\t[Two Sum III - Data structure design](https://oj.leetcode.com/problems/two-sum-iii-data-structure-design/) \u0026hearts;\t| Easy\t|\n| \t[Swift](./Array/MajorityElement.swift)  |\t169\t|\t[Majority Element](https://oj.leetcode.com/problems/majority-element/)\t| Easy\t|\n|\t\t|\t168\t|\t[Excel Sheet Column Title](https://oj.leetcode.com/problems/excel-sheet-column-title/)\t| Easy\t|\n|\t[Swift](./Array/TwoSumII.swift)\t|\t167\t|\t[Two Sum II - Input array is sorted](https://oj.leetcode.com/problems/two-sum-ii-input-array-is-sorted/) \u0026hearts;\t| Medium\t|\n|\t[Swift](./Math/FractionToRecurringDecimal.swift)\t|\t166\t|\t[Fraction to Recurring Decimal](https://oj.leetcode.com/problems/fraction-to-recurring-decimal/)\t| Medium\t|\n|\t\t|\t165\t|\t[Compare Version Numbers](https://oj.leetcode.com/problems/compare-version-numbers/)\t| Easy\t|\n|\t\t|\t164\t|\t[Maximum Gap](https://oj.leetcode.com/problems/maximum-gap/)\t| Hard\t|\n|\t[Swift](./Array/MissingRanges.swift)\t|\t163\t|\t[Missing Ranges](https://oj.leetcode.com/problems/missing-ranges/) \u0026hearts;\t| Medium\t|\n|\t[Swift](./Search/FindPeakElement.swift)\t|\t162\t|\t[Find Peak Element](https://oj.leetcode.com/problems/find-peak-element/)\t| Medium\t|\n|\t[Swift](./String/OneEditDistance.swift)\t|\t161\t|\t[One Edit Distance](https://oj.leetcode.com/problems/one-edit-distance/)\u0026hearts;\t| Medium\t|\n|\t\t|\t160\t|\t[Intersection of Two Linked Lists](https://oj.leetcode.com/problems/intersection-of-two-linked-lists/)\t| Easy\t|\n|\t[Swift](./String/LongestSubstringMostTwoDistinctCharacters.swift)\t|\t159\t|\t[Longest Substring with At Most Two Distinct Characters](https://oj.leetcode.com/problems/longest-substring-with-at-most-two-distinct-characters/) \u0026hearts;\t| Hard\t|\n|\t\t|\t158\t|\t[Read N Characters Given Read4 II - Call multiple times](https://oj.leetcode.com/problems/read-n-characters-given-read4-ii-call-multiple-times/) \u0026hearts;\t| Hard\t|\n|\t\t|\t157\t|\t[Read N Characters Given Read4](https://oj.leetcode.com/problems/read-n-characters-given-read4/) \u0026hearts;\t| Easy\t|\n|\t[Swift](./Tree/BinaryTreeUpsideDown) |\t156\t|\t[Binary Tree Upside Down](https://oj.leetcode.com/problems/binary-tree-upside-down/) \u0026hearts;\t| Medium\t|\n|\t[Swift](./Stack/MinStack.swift)\t|\t155\t|\t[Min Stack](https://oj.leetcode.com/problems/min-stack/)\t| Easy\t|\n|\t[Swift](./Search/FindMinimumRotatedSortedArrayII.swift)\t|\t154\t|\t[Find Minimum in Rotated Sorted Array II](https://oj.leetcode.com/problems/find-minimum-in-rotated-sorted-array-ii/)\t| Hard\t|\n|\t[Swift](./Search/FindMinimumRotatedSortedArray.swift)\t|\t153\t|\t[Find Minimum in Rotated Sorted Array](https://oj.leetcode.com/problems/find-minimum-in-rotated-sorted-array/)\t| Medium\t|\n|\t[Swift](./DP/MaximumProductSubarray.swift)\t|\t152\t|\t[Maximum Product Subarray](https://oj.leetcode.com/problems/maximum-product-subarray/)\t| Medium\t|\n|\t[Swift](./String/ReverseWordsString.swift)\t|\t151\t|\t[Reverse Words in a String](https://oj.leetcode.com/problems/reverse-words-in-a-string/)\t| Medium\t|\n|\t[Swift](./Stack/EvaluateReversePolishNotation.swift)\t|\t150\t|\t[Evaluate Reverse Polish Notation](https://oj.leetcode.com/problems/evaluate-reverse-polish-notation/)\t| Medium\t|\n|\t\t|\t149\t|\t[Max Points on a Line](https://oj.leetcode.com/problems/max-points-on-a-line/)\t| Hard\t|\n|\t\t|\t148\t|\t[Sort List](https://oj.leetcode.com/problems/sort-list/)\t| Medium\t|\n|\t\t|\t147\t|\t[Insertion Sort List](https://oj.leetcode.com/problems/insertion-sort-list/)\t| Medium\t|\n|\t[Swift](./LinkedList/LRUCache.swift)\t|\t146\t|\t[LRU Cache](https://oj.leetcode.com/problems/lru-cache/)\t| Hard\t|\n|\t[Swift](./Stack/PostorderTraversal.swift)\t|\t145\t|\t[Binary Tree Postorder Traversal](https://oj.leetcode.com/problems/binary-tree-postorder-traversal/)\t| Hard\t|\n|\t[Swift](./Stack/PreorderTraversal.swift)\t|\t144\t|\t[Binary Tree Preorder Traversal](https://oj.leetcode.com/problems/binary-tree-preorder-traversal/)\t| Medium\t|\n|\t[Swift](./LinkedList/ReorderList.swift)\t|\t143\t|\t[Reorder List](https://oj.leetcode.com/problems/reorder-list/)\t| Medium\t|\n|\t\t|\t142\t|\t[Linked List Cycle II](https://oj.leetcode.com/problems/linked-list-cycle-ii/)\t| Medium\t|\n|\t\t|\t141\t|\t[Linked List Cycle](https://oj.leetcode.com/problems/linked-list-cycle/)\t| Easy\t|\n|\t\t|\t140\t|\t[Word Break II](https://oj.leetcode.com/problems/word-break-ii/)\t| Hard\t|\n|\t\t|\t139\t|\t[Word Break](https://oj.leetcode.com/problems/word-break/)\t| Medium\t|\n|\t\t|\t138\t|\t[Copy List with Random Pointer](https://oj.leetcode.com/problems/copy-list-with-random-pointer/)\t| Hard\t|\n|\t[Swift](./Math/SingleNumberII.swift)\t|\t137\t|\t[Single Number II](https://oj.leetcode.com/problems/single-number-ii/)\t| Medium\t|\n|\t[Swift](./Math/SingleNumber.swift)\t|\t136\t|\t[Single Number](https://oj.leetcode.com/problems/single-number/)\t| Medium\t|\n|\t\t|\t135\t|\t[Candy](https://oj.leetcode.com/problems/candy/)\t| Hard\t|\n|\t[Swift](./Array/GasStation.swift)\t|\t134\t|\t[Gas Station](https://oj.leetcode.com/problems/gas-station/)\t| Medium\t|\n|\t\t|\t133\t|\t[Clone Graph](https://oj.leetcode.com/problems/clone-graph/)\t| Medium\t|\n|\t\t|\t132\t|\t[Palindrome Partitioning II](https://oj.leetcode.com/problems/palindrome-partitioning-ii/)\t| Hard\t|\n|\t[Swift](./DFS/PalindromePartitioning.swift)\t|\t131\t|\t[Palindrome Partitioning](https://oj.leetcode.com/problems/palindrome-partitioning/)\t| Medium\t|\n|\t\t|\t130\t|\t[Surrounded Regions](https://oj.leetcode.com/problems/surrounded-regions/)\t| Medium\t|\n|\t\t|\t129\t|\t[Sum Root to Leaf Numbers](https://oj.leetcode.com/problems/sum-root-to-leaf-numbers/)\t| Medium\t|\n| [Swift](./Array/LongestConsecutiveSequence.swift)\t | 128\t|\t[Longest Consecutive Sequence](https://oj.leetcode.com/problems/longest-consecutive-sequence/)\t| Hard\t|\n| [Swift](./BFS/WordLadder.swift) |\t127\t|\t[Word Ladder](https://oj.leetcode.com/problems/word-ladder/)\t| Medium\t|\n|\t\t|\t126\t|\t[Word Ladder II](https://oj.leetcode.com/problems/word-ladder-ii/)\t| Hard\t|\n| [Swift](./String/ValidPalindrome.swift)\t\t|\t125\t|\t[Valid Palindrome](https://oj.leetcode.com/problems/valid-palindrome/)\t| Easy\t|\n|\t[Swift](./Tree/BinaryTreeMaximumPathSum.swift)\t|\t124\t|\t[Binary Tree Maximum Path Sum](https://oj.leetcode.com/problems/binary-tree-maximum-path-sum/)\t| Hard\t|\n|\t[Swift](./DP/BestTimeBuySellStockIII.swift)\t|\t123\t|\t[Best Time to Buy and Sell Stock III](https://oj.leetcode.com/problems/best-time-to-buy-and-sell-stock-iii/)\t| Hard\t|\n|\t[Swift](./DP/BestTimeBuySellStockII.swift)\t|\t122\t|\t[Best Time to Buy and Sell Stock II](https://oj.leetcode.com/problems/best-time-to-buy-and-sell-stock-ii/)\t| Medium\t|\n|\t[Swift](./DP/BestTimeBuySellStock.swift)\t|\t121\t|\t[Best Time to Buy and Sell Stock](https://oj.leetcode.com/problems/best-time-to-buy-and-sell-stock/)\t| Easy\t|\n|\t[Swift](./DP/Triangle.swift)\t|\t120\t|\t[Triangle](https://oj.leetcode.com/problems/triangle/)\t| Medium\t|\n|\t\t|\t119\t|\t[Pascal's Triangle II](https://oj.leetcode.com/problems/pascals-triangle-ii/)\t| Easy\t|\n|\t\t|\t118\t|\t[Pascal's Triangle](https://oj.leetcode.com/problems/pascals-triangle/)\t| Easy\t|\n|\t\t|\t117\t|\t[Populating Next Right Pointers in Each Node II](https://oj.leetcode.com/problems/populating-next-right-pointers-in-each-node-ii/)\t| Hard\t|\n|\t\t|\t116\t|\t[Populating Next Right Pointers in Each Node](https://oj.leetcode.com/problems/populating-next-right-pointers-in-each-node/)\t| Medium\t|\n|\t\t|\t115\t|\t[Distinct Subsequences](https://oj.leetcode.com/problems/distinct-subsequences/)\t| Hard\t|\n|\t[Swift](./Tree/FlattenBinaryTreeLinkedList.swift)\t|\t114\t|\t[Flatten Binary Tree to Linked List](https://oj.leetcode.com/problems/flatten-binary-tree-to-linked-list/)\t| Medium\t|\n|\t[Swift](./Tree/PathSumII.swift)\t|\t113\t|\t[Path Sum II](https://oj.leetcode.com/problems/path-sum-ii/)\t| Medium\t|\n|\t[Swift](./Tree/PathSum.swift)\t|\t112\t|\t[Path Sum](https://oj.leetcode.com/problems/path-sum/)\t| Easy\t|\n|\t[Swift](./Tree/MinimumDepthOfBinaryTree.swift)\t|\t111\t|\t[Minimum Depth of Binary Tree](https://oj.leetcode.com/problems/minimum-depth-of-binary-tree/)\t| Easy\t|\n|\t[Swift](./Tree/BalancedBinaryTree.swift)\t|\t110\t|\t[Balanced Binary Tree](https://oj.leetcode.com/problems/balanced-binary-tree/)\t| Easy\t|\n|\t\t|\t109\t|\t[Convert Sorted List to Binary Search Tree](https://oj.leetcode.com/problems/convert-sorted-list-to-binary-search-tree/)\t| Medium\t|\n|\t[Swift](./Tree/ConvertSortedArrayBinarySearchTree.swift)\t|\t108\t|\t[Convert Sorted Array to Binary Search Tree](https://oj.leetcode.com/problems/convert-sorted-array-to-binary-search-tree/)\t| Medium\t|\n|\t[Swift](./Tree/BinaryTreeLevelOrderTraversalII.swift)\t|\t107\t|\t[Binary Tree Level Order Traversal II](https://oj.leetcode.com/problems/binary-tree-level-order-traversal-ii/)\t| Easy\t|\n|\t[Swift](./Tree/ConstructBinaryTreeInorderPostorder.swift)\t|\t106\t|\t[Construct Binary Tree from Inorder and Postorder Traversal](https://oj.leetcode.com/problems/construct-binary-tree-from-inorder-and-postorder-traversal/)\t| Medium\t|\n|\t[Swift](./Tree/ConstructBinaryTreePreorderInorder.swift)\t|\t105\t|\t[Construct Binary Tree from Preorder and Inorder Traversal](https://oj.leetcode.com/problems/construct-binary-tree-from-preorder-and-inorder-traversal/)\t| Medium\t|\n|\t[Swift](./Tree/MaximumDepthOfBinaryTree.swift)\t|\t104\t|\t[Maximum Depth of Binary Tree](https://oj.leetcode.com/problems/maximum-depth-of-binary-tree/)\t| Easy\t|\n|\t[Swift](./Tree/BinaryTreeZigzagLevelOrderTraversal.swift)\t|\t103\t|\t[Binary Tree Zigzag Level Order Traversal](https://oj.leetcode.com/problems/binary-tree-zigzag-level-order-traversal/)\t| Medium\t|\n|\t[Swift](./Tree/BinaryTreeLevelOrderTraversal.swift)\t|\t102\t|\t[Binary Tree Level Order Traversal](https://oj.leetcode.com/problems/binary-tree-level-order-traversal/)\t| Easy\t|\n|\t[Swift](./Tree/SymmetricTree.swift)\t|\t101\t|\t[Symmetric Tree](https://oj.leetcode.com/problems/symmetric-tree/)\t| Easy\t|\n|\t[Swift](./Tree/SameTree.swift)\t|\t100\t|\t[Same Tree](https://oj.leetcode.com/problems/same-tree/)\t| Easy\t|\n|\t[Swift](./Tree/RecoverBinarySearchTree.swift)\t|\t99\t|\t[Recover Binary Search Tree](https://oj.leetcode.com/problems/recover-binary-search-tree/)\t| Hard\t|\n|\t[Swift](./Tree/ValidateBinarySearchTree.swift)\t|\t98\t|\t[Validate Binary Search Tree](https://oj.leetcode.com/problems/validate-binary-search-tree/)\t| Medium\t|\n|\t\t|\t97\t|\t[Interleaving String](https://oj.leetcode.com/problems/interleaving-string/)\t| Hard\t|\n|\t[Swift](./Tree/UniqueBinarySearchTrees.swift)\t|\t96\t|\t[Unique Binary Search Trees](https://oj.leetcode.com/problems/unique-binary-search-trees/)\t| Medium\t|\n|\t\t|\t95\t|\t[Unique Binary Search Trees II](https://oj.leetcode.com/problems/unique-binary-search-trees-ii/)\t| Medium\t|\n|\t[Swift](./Stack/InorderTraversal.swift)\t|\t94\t|\t[Binary Tree Inorder Traversal](https://oj.leetcode.com/problems/binary-tree-inorder-traversal/)\t| Medium\t|\n|\t\t|\t93\t|\t[Restore IP Addresses](https://oj.leetcode.com/problems/restore-ip-addresses/)\t| Medium\t|\n|\t\t|\t92\t|\t[Reverse Linked List II](https://oj.leetcode.com/problems/reverse-linked-list-ii/)\t| Medium\t|\n|\t[Swift](./DP/DecodeWays.swift)\t|\t91\t|\t[Decode Ways](https://oj.leetcode.com/problems/decode-ways/)\t| Medium\t|\n|\t[Swift](./DFS/SubsetsII.swift)\t|\t90\t|\t[Subsets II](https://oj.leetcode.com/problems/subsets-ii/)\t| Medium\t|\n|\t[Swift](./Math/GaryCode.swift)\t|\t89\t|\t[Gray Code](https://oj.leetcode.com/problems/gray-code/)\t| Medium\t|\n|\t[Swift](./Sort/MergeSortedArray.swift) |\t88\t|\t[Merge Sorted Array](https://oj.leetcode.com/problems/merge-sorted-array/)\t| Easy\t|\n|\t\t|\t87\t|\t[Scramble String](https://oj.leetcode.com/problems/scramble-string/)\t| Hard\t|\n|\t[Swift](./LinkedList/PartitionList.swift)\t|\t86\t|\t[Partition List](https://oj.leetcode.com/problems/partition-list/)\t| Medium\t|\n|\t\t|\t85\t|\t[Maximal Rectangle](https://oj.leetcode.com/problems/maximal-rectangle/)\t| Hard\t|\n|\t\t|\t84\t|\t[Largest Rectangle in Histogram](https://oj.leetcode.com/problems/largest-rectangle-in-histogram/)\t| Hard\t|\n|\t[Swift](./LinkedList/RemoveDuplicatesFromSortedList.swift)\t|\t83\t|\t[Remove Duplicates from Sorted List](https://oj.leetcode.com/problems/remove-duplicates-from-sorted-list/)\t| Easy\t|\n|\t[Swift](./LinkedList/RemoveDuplicatesFromSortedListII.swift)\t|\t82\t|\t[Remove Duplicates from Sorted List II](https://oj.leetcode.com/problems/remove-duplicates-from-sorted-list-ii/)\t| Medium\t|\n|\t[Swift](./Search/SearchInRotatedSortedArrayII.swift)\t|\t81\t|\t[Search in Rotated Sorted Array II](https://oj.leetcode.com/problems/search-in-rotated-sorted-array-ii/)\t| Medium\t|\n|\t[Swift](./Array/RemoveDuplicatesFromSortedArrayII.swift)\t|\t80\t|\t[Remove Duplicates from Sorted Array II](https://oj.leetcode.com/problems/remove-duplicates-from-sorted-array-ii/)\t| Medium\t|\n|\t[Swift](./DFS/WordSearch.swift)\t|\t79\t|\t[Word Search](https://oj.leetcode.com/problems/word-search/)\t| Medium\t|\n|\t[Swfit](./DFS/Subsets.swift)\t|\t78\t|\t[Subsets](https://oj.leetcode.com/problems/subsets/)\t| Medium\t|\n|\t[Swift](./DFS/combinations.swift)\t|\t77\t|\t[Combinations](https://oj.leetcode.com/problems/combinations/)\t| Medium\t|\n|\t[Swift](./Array/MinimumWindowSubstring.swift)\t|\t76\t|\t[Minimum Window Substring](https://oj.leetcode.com/problems/minimum-window-substring/)\t| Hard\t|\n|\t[Swift](./Sort/SortColors.swift)\t|\t75\t|\t[Sort Colors](https://oj.leetcode.com/problems/sort-colors/)\t| Medium\t|\n|\t[Swift](./Search/Search2DMatrix.swift) |\t74\t|\t[Search a 2D Matrix](https://oj.leetcode.com/problems/search-a-2d-matrix/)\t| Medium\t|\n|\t[Swift](./Array/SetMatrixZero.swift)\t|\t73\t|\t[Set Matrix Zeroes](https://oj.leetcode.com/problems/set-matrix-zeroes/)\t| Medium\t|\n|\t[Swift](./DP/EditDistance.swift)\t|\t72\t|\t[Edit Distance](https://oj.leetcode.com/problems/edit-distance/)\t| Hard\t|\n|\t[Swift](./Stack/SimplifyPath.swift)\t|\t71\t|\t[Simplify Path](https://oj.leetcode.com/problems/simplify-path/)\t| Medium\t|\n|\t[Swift](./DP/ClimbingStairs.swift)\t|\t70\t|\t[Climbing Stairs](https://oj.leetcode.com/problems/climbing-stairs/)\t| Easy\t|\n|\t[Swift](./Search/Sqrtx.swift)\t|\t69\t|\t[Sqrt(x)](https://oj.leetcode.com/problems/sqrtx/)\t| Medium\t|\n|\t[Swift](./String/TextJustification.swift)\t|\t68\t|\t[Text Justification](https://oj.leetcode.com/problems/text-justification/)\t| Hard\t|\n|\t[Swift](./Math/AddBinary.swift)\t|\t67\t|\t[Add Binary](https://oj.leetcode.com/problems/add-binary/)\t| Easy\t|\n|\t[Swift](./Math/PlusOne.swift)\t|\t66\t|\t[Plus One](https://oj.leetcode.com/problems/plus-one/)\t| Easy\t|\n|\t[Swift](./Math/ValidNumber.swift)\t|\t65\t|\t[Valid Number](https://oj.leetcode.com/problems/valid-number/)\t| Hard\t|\n|\t[Swift](./DP/MinimumPathSum.swift) |\t64\t|\t[Minimum Path Sum](https://oj.leetcode.com/problems/minimum-path-sum/)\t| Medium\t|\n|\t[Swift](./DP/UniquePathsII.swift)\t|\t63\t|\t[Unique Paths II](https://oj.leetcode.com/problems/unique-paths-ii/)\t| Medium\t|\n|\t[Swift](./DP/UniquePaths.swift)\t|\t62\t|\t[Unique Paths](https://oj.leetcode.com/problems/unique-paths/)\t| Medium\t|\n|\t[Swift](./LinkedList/RotateList.swift)\t|\t61\t|\t[Rotate List](https://oj.leetcode.com/problems/rotate-list/)\t| Medium\t|\n|\t[Swift](./Math/PermutationSequence.swift)\t|\t60\t|\t[Permutation Sequence](https://oj.leetcode.com/problems/permutation-sequence/)\t| Medium\t|\n|\t[Swift](./Array/SpiralMatrixII.swift)\t|\t59\t|\t[Spiral Matrix II](https://oj.leetcode.com/problems/spiral-matrix-ii/)\t| Medium\t|\n|\t[Swift](./String/LengthLastWord.swift)\t|\t58\t|\t[Length of Last Word](https://oj.leetcode.com/problems/length-of-last-word/)\t| Easy\t|\n| [Swift](./Sort/InsertInterval.swift) |\t57\t|\t[Insert Interval](https://oj.leetcode.com/problems/insert-interval/)\t| Hard\t|\n|\t[Swift](./Sort/MergeIntervals.swift)\t|\t56\t|\t[Merge Intervals](https://oj.leetcode.com/problems/merge-intervals/)\t| Hard\t|\n|\t[Swift](./DP/JumpGame.swift) |\t55\t|\t[Jump Game](https://oj.leetcode.com/problems/jump-game/)\t| Medium\t|\n|\t[Swift](./Array/SpiralMatrix.swift)\t|\t54\t|\t[Spiral Matrix](https://oj.leetcode.com/problems/spiral-matrix/)\t| Medium\t|\n|\t[Swift](./DP/MaximumSubarray.swift)\t|\t53\t|\t[Maximum Subarray](https://oj.leetcode.com/problems/maximum-subarray/)\t| Medium\t|\n|\t[Swift](./DFS/NQueensII.swift)\t|\t52\t|\t[N-Queens II](https://oj.leetcode.com/problems/n-queens-ii/)\t| Hard\t|\n|\t[Swift](./DFS/NQueens.swift)\t|\t51\t|\t[N-Queens](https://oj.leetcode.com/problems/n-queens/)\t| Hard\t|\n|\t[Swift](./Math/Pow.swift)\t|\t50\t|\t[\"Pow(x, n)\"](https://oj.leetcode.com/problems/powx-n/)\t| Medium\t|\n|\t[Swift](./String/GroupAnagrams.swift)\t|\t49\t|\t[Group Anagrams](https://oj.leetcode.com/problems/anagrams/)\t| Medium\t|\n|\t[Swift](./Array/RotateImage.swift)\t|\t48\t|\t[Rotate Image](https://oj.leetcode.com/problems/rotate-image/)\t| Medium\t|\n|\t[Swift](./DFS/PermutationsII.swift)\t|\t47\t|\t[Permutations II](https://oj.leetcode.com/problems/permutations-ii/)\t| Medium\t|\n|\t[Swift](./DFS/Permutations.swift)\t|\t46\t|\t[Permutations](https://oj.leetcode.com/problems/permutations/)\t| Medium\t|\n|\t\t|\t45\t|\t[Jump Game II](https://oj.leetcode.com/problems/jump-game-ii/)\t| Hard\t|\n|\t[Swift](./DP/WildcardMatching.swift)\t|\t44\t|\t[Wildcard Matching](https://oj.leetcode.com/problems/wildcard-matching/)\t| Hard\t|\n|\t[Swift](./String/MultiplyStrings.swift)\t|\t43\t|\t[Multiply Strings](https://oj.leetcode.com/problems/multiply-strings/)\t| Medium\t|\n|\t[Swift](./Math/TrappingRainWater.swift)\t|\t42\t|\t[Trapping Rain Water](https://oj.leetcode.com/problems/trapping-rain-water/)\t| Hard\t|\n|\t[Swift](./Array/FirstMissingPositive.swift)\t|\t41\t|\t[First Missing Positive](https://oj.leetcode.com/problems/first-missing-positive/)\t| Hard\t|\n|\t[Swift](./DFS/combinationSumII.swiftc)\t|\t40\t|\t[Combination Sum II](https://oj.leetcode.com/problems/combination-sum-ii/)\t| Medium\t|\n|\t[Swift](./DFS/CombinationSum.swift)\t|\t39\t|\t[Combination Sum](https://oj.leetcode.com/problems/combination-sum/)\t| Medium\t|\n|\t[Swift](./String/CountAndSay.swift)\t|\t38\t|\t[Count and Say](https://oj.leetcode.com/problems/count-and-say/)\t| Easy\t|\n|\t[Swift](./Math/SudokuSolver.swift)\t|\t37\t|\t[Sudoku Solver](https://oj.leetcode.com/problems/sudoku-solver/)\t| Hard\t|\n|\t[Swift](./Array/ValidSudoku.swift)\t|\t36\t|\t[Valid Sudoku](https://oj.leetcode.com/problems/valid-sudoku/)\t| Easy\t|\n|\t[Swift](./Search/SearchInsertPosition.swift)\t|\t35\t|\t[Search Insert Position](https://oj.leetcode.com/problems/search-insert-position/)\t| Medium\t|\n|\t[Swift](./Search/SearchForARange.swift)\t|\t34\t|\t[Search for a Range](https://leetcode.com/problems/find-first-and-last-position-of-element-in-sorted-array/)\t| Medium\t|\n|\t[Swift](./Search/SearchInRotatedSortedArray.swift)\t|\t33\t|\t[Search in Rotated Sorted Array](https://oj.leetcode.com/problems/search-in-rotated-sorted-array/)\t| Hard\t|\n|\t[Swift](./Stack/LongestValidParentheses.swift)\t|\t32\t|\t[Longest Valid Parentheses](https://oj.leetcode.com/problems/longest-valid-parentheses/)\t| Hard\t|\n|\t[Swift](./Array/NextPermutation.swift)\t|\t31\t|\t[Next Permutation](https://oj.leetcode.com/problems/next-permutation/)\t| Medium\t|\n|\t\t|\t30\t|\t[Substring with Concatenation of All Words](https://oj.leetcode.com/problems/substring-with-concatenation-of-all-words/)\t| Hard\t|\n|\t[Swift](./Math/DivideTwoIntegers.swift)\t|\t29\t|\t[Divide Two Integers](https://oj.leetcode.com/problems/divide-two-integers/)\t| Medium\t|\n|\t[Swift](./String/StrStr.swift)\t|\t28\t|\t[Implement strStr()](https://oj.leetcode.com/problems/implement-strstr/)\t| Easy\t|\n|\t[Swfit](./Array/RemoveElement.swift)\t|\t27\t|\t[Remove Element](https://oj.leetcode.com/problems/remove-element/)\t| Easy\t|\n|\t[Swift](./Array/RemoveDuplicatesFromSortedArray.swift)\t|\t26\t|\t[Remove Duplicates from Sorted Array](https://oj.leetcode.com/problems/remove-duplicates-from-sorted-array/)\t| Easy\t|\n|\t[Swift](./LinkedList/ReverseNodesInKGroup.swift)\t|\t25\t|\t[Reverse Nodes in k-Group](https://oj.leetcode.com/problems/reverse-nodes-in-k-group/)\t| Hard\t|\n|\t[Swift](./LinkedList/SwapNodesInPairs.swift)\t|\t24\t|\t[Swap Nodes in Pairs](https://oj.leetcode.com/problems/swap-nodes-in-pairs/)\t| Easy\t|\n|\t[Swift](./LinkedList/MergeKSortedLists.swift)\t|\t23\t|\t[Merge k Sorted Lists](https://oj.leetcode.com/problems/merge-k-sorted-lists/)\t| Hard\t|\n|\t[Swift](./Math/GenerateParentheses.swift)\t|\t22\t|\t[Generate Parentheses](https://oj.leetcode.com/problems/generate-parentheses/)\t| Medium\t|\n|\t[Swift](./LinkedList/MergeTwoSortedLists.swift)\t|\t21\t|\t[Merge Two Sorted Lists](https://oj.leetcode.com/problems/merge-two-sorted-lists/)\t| Easy\t|\n|\t[Swift](./Stack/ValidParentheses.swift)\t|\t20\t|\t[Valid Parentheses](https://oj.leetcode.com/problems/valid-parentheses/)\t| Easy\t|\n|\t[Swift](./LinkedList/RemoveNthFromEnd.swift)\t|\t19\t|\t[Remove Nth Node From End of List](https://oj.leetcode.com/problems/remove-nth-node-from-end-of-list/)\t| Easy\t|\n|\t[Swift](./Array/FourSum.swift)\t|\t18\t|\t[4Sum](https://oj.leetcode.com/problems/4sum/)\t| Medium\t|\n|\t[Swift](./DFS/LetterCombinationsPhoneNumber.swift)\t|\t17\t|\t[Letter Combinations of a Phone Number](https://oj.leetcode.com/problems/letter-combinations-of-a-phone-number/)\t| Medium\t|\n|\t[Swift](./Array/ThreeSum.swift)\t|\t16\t|\t[3Sum Closest](https://oj.leetcode.com/problems/3sum-closest/)\t| Medium\t|\n|\t[Swift](./Array/ThreeSum.swift)\t|\t15\t|\t[3Sum](https://oj.leetcode.com/problems/3sum/)\t| Medium\t|\n|\t[Swift](./String/LongestCommonPrefix.swift)\t|\t14\t|\t[Longest Common Prefix](https://oj.leetcode.com/problems/longest-common-prefix/)\t| Easy\t|\n|\t[Swift](./Math/RomanToInteger.swift)\t|\t13\t|\t[Roman to Integer](https://oj.leetcode.com/problems/roman-to-integer/)\t| Easy\t|\n|\t[Swift](./Math/IntegerToRoman.swift)\t|\t12\t|\t[Integer to Roman](https://oj.leetcode.com/problems/integer-to-roman/)\t| Medium\t|\n|\t[Swift](./Math/ContainerMostWater.swift)\t|\t11\t|\t[Container With Most Water](https://oj.leetcode.com/problems/container-with-most-water/)\t| Medium\t|\n|\t[Swift](./DP/RegularExpressionMatching.swift)\t|\t10\t|\t[Regular Expression Matching](https://oj.leetcode.com/problems/regular-expression-matching/)\t| Hard\t|\n|\t[Swift](./Math/PalindromeNumber.swift)\t|\t9\t|\t[Palindrome Number](https://oj.leetcode.com/problems/palindrome-number/)\t| Easy\t|\n|\t[Swift](./Math/Atoi.swift)\t|\t8\t|\t[String to Integer (atoi)](https://oj.leetcode.com/problems/string-to-integer-atoi/)\t| Easy\t|\n|\t[Swift](./Math/ReverseInteger.swift)\t|\t7\t|\t[Reverse Integer](https://oj.leetcode.com/problems/reverse-integer/)\t| Easy\t|\n|\t[Swift](./String/ZigZagConversion.swift)\t|\t6\t|\t[ZigZag Conversion](https://oj.leetcode.com/problems/zigzag-conversion/)\t| Easy\t|\n|\t[Swift](./DP/LongestPalindromicSubstring.swift)\t|\t5\t|\t[Longest Palindromic Substring](https://oj.leetcode.com/problems/longest-palindromic-substring/)\t| Medium\t|\n|\t[Swift](./Search/MedianOfTwoSortedArrays.swift)\t|\t4\t|\t[Median of Two Sorted Arrays](https://leetcode.com/problems/median-of-two-sorted-arrays/)\t| Hard\t|\n|\t[Swift](./String/LongestSubstringWithoutRepeatingCharacters.swift)\t|\t3\t|\t[Longest Substring Without Repeating Characters](https://leetcode.com/problems/longest-substring-without-repeating-characters/)\t| Medium\t|\n|\t[Swift](./Math/AddTwoNumbers.swift)\t|\t2\t|\t[Add Two Numbers](https://leetcode.com/problems/add-two-numbers/)\t| Medium\t|\n|\t[Swift](./Array/TwoSum.swift)\t|\t1\t|\t[Two Sum](https://leetcode.com/problems/two-sum/)\t| Easy\t|\n","funding_links":[],"categories":["Online Programming Learning Websites","Libs","Swift","Data Management [🔝](#readme)","算法题"],"sub_categories":["[leetcode](https://leetcode.com)","Data Management","LeetCode"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsoapyigu%2FLeetCode-Swift","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsoapyigu%2FLeetCode-Swift","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsoapyigu%2FLeetCode-Swift/lists"}