# Algorithms Solutions in Swift This repository contains Swift solutions from AlgoExpert, LeetCode, HackerRank, GeekForGeeks, and Pramp. Suggestions and contributions are welcome. ## How to Use - Browse by platform section and open `Problem Link` for the original prompt. - Open `Solution` to view the implementation in this repository. - Update `Difficulty`, `Topic/Pattern`, or `Problem Link` overrides in `scripts/readme-metadata.tsv`. - Run `./scripts/update-readme.sh` to regenerate all tables (also runs automatically in pre-commit). ### [HackerRank](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/HackerRank/) | Serial No. | Problem | Problem Link | Solution | Difficulty | Topic/Pattern | Notes | |---|---|---|---|---|---|---| |1|3D Surface Area|[Problem](https://www.hackerrank.com/search?search=3D%20Surface%20Area)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/HackerRank/3D%20Surface%20Area)|_|_|_| |2|Almost Sorted|[Problem](https://www.hackerrank.com/search?search=Almost%20Sorted)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/HackerRank/Almost%20Sorted)|_|Sorting|_| |3|Binary Search Trees|[Problem](https://www.hackerrank.com/search?search=Binary%20Search%20Trees)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/HackerRank/Binary%20Search%20Trees)|_|Tree|_| |4|Bitwise AND|[Problem](https://www.hackerrank.com/search?search=Bitwise%20AND)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/HackerRank/Bitwise%20AND)|_|_|_| |5|Convert Decimal To Binary|[Problem](https://www.hackerrank.com/search?search=Convert%20Decimal%20To%20Binary)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/HackerRank/Convert%20Decimal%20To%20Binary)|_|_|_| |6|Count Pairs|[Problem](https://www.hackerrank.com/search?search=Count%20Pairs)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/HackerRank/Count%20Pairs)|_|_|_| |7|Encryption|[Problem](https://www.hackerrank.com/search?search=Encryption)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/HackerRank/Encryption)|_|_|_| |8|Extra Long Factorials|[Problem](https://www.hackerrank.com/search?search=Extra%20Long%20Factorials)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/HackerRank/Extra%20Long%20Factorials)|_|_|_| |9|Larry's Array|[Problem](https://www.hackerrank.com/search?search=Larry%27s%20Array)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/HackerRank/Larry%27s%20Array)|_|Array|_| |10|Merge Sort|[Problem](https://www.hackerrank.com/search?search=Merge%20Sort)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/HackerRank/Merge%20Sort)|_|Sorting|_| |11|Palindrome String|[Problem](https://www.hackerrank.com/search?search=Palindrome%20String)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/HackerRank/Palindrome%20String)|_|String|_| |12|Reverse String|[Problem](https://www.hackerrank.com/search?search=Reverse%20String)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/HackerRank/Reverse%20String)|_|String|_| |13|Sum of Natural Number|[Problem](https://www.hackerrank.com/search?search=Sum%20of%20Natural%20Number)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/HackerRank/Sum%20of%20Natural%20Number)|_|Array|_| |14|Tic Tac Toe Winner|[Problem](https://www.hackerrank.com/search?search=Tic%20Tac%20Toe%20Winner)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/HackerRank/Tic%20Tac%20Toe%20Winner)|_|_|_| |15|Two Strings|[Problem](https://www.hackerrank.com/challenges/two-strings/problem?utm_campaign=challenge-recommendation&utm_medium=email&utm_source=24-hour-campaign)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/HackerRank/Two%20Strings)|_|String|_| ### [LeetCode](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/) | Serial No. | Problem | Problem Link | Solution | Difficulty | Topic/Pattern | Notes | |---|---|---|---|---|---|---| |1|3 Sum Closest|[Problem](https://leetcode.com/problems/3sum-closest/)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/3%20Sum%20Closest)|_|Array|_| |2|Add Digits|[Problem](https://leetcode.com/problemset/all/?search=Add%20Digits)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Add%20Digits)|_|_|_| |3|Add Strings|[Problem](https://leetcode.com/problems/add-strings/)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Add%20Strings)|_|String|_| |4|Array Intersection|[Problem](https://leetcode.com/problemset/all/?search=Array%20Intersection)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Array%20Intersection)|_|Array|_| |5|Array Pair Sum|[Problem](https://leetcode.com/problemset/all/?search=Array%20Pair%20Sum)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Array%20Pair%20Sum)|_|Array|_| |6|Array Rotation|[Problem](https://leetcode.com/problemset/all/?search=Array%20Rotation)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Array%20Rotation)|_|Array|_| |7|Asteroid Collision|[Problem](https://leetcode.com/problems/asteroid-collision/description/)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Asteroid%20Collision)|_|_|_| |8|Best Time to Buy and Sell Stock|[Problem](https://leetcode.com/problemset/all/?search=Best%20Time%20to%20Buy%20and%20Sell%20Stock)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Best%20Time%20to%20Buy%20and%20Sell%20Stock)|_|_|_| |9|Binary Search|[Problem](https://leetcode.com/problemset/all/?search=Binary%20Search)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Binary%20Search)|_|Searching|_| |10|Bucket Sort|[Problem](https://leetcode.com/problemset/all/?search=Bucket%20Sort)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Bucket%20Sort)|_|Sorting|_| |11|Build a Matrix With Conditions|[Problem](https://leetcode.com/problemset/all/?search=Build%20a%20Matrix%20With%20Conditions)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Build%20a%20Matrix%20With%20Conditions)|_|Matrix|_| |12|Can Construct|[Problem](https://leetcode.com/problemset/all/?search=Can%20Construct)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Can%20Construct)|_|_|_| |13|Can Make Arithmetic Progression|[Problem](https://leetcode.com/problemset/all/?search=Can%20Make%20Arithmetic%20Progression)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Can%20Make%20Arithmetic%20Progression)|_|_|_| |14|Candy Swap|[Problem](https://leetcode.com/problemset/all/?search=Candy%20Swap)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Candy%20Swap)|_|_|_| |15|Close Strings|[Problem](https://leetcode.com/problems/determine-if-two-strings-are-close/description/?envType=study-plan-v2&envId=leetcode-75)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Close%20Strings)|_|String|_| |16|Concatenation of Array|[Problem](https://leetcode.com/problemset/all/?search=Concatenation%20of%20Array)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Concatenation%20of%20Array)|_|Array|_| |17|Confusing Number|[Problem](https://leetcode.com/problemset/all/?search=Confusing%20Number)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Confusing%20Number)|_|_|_| |18|Container With Most Water|[Problem](https://leetcode.com/problems/container-with-most-water/)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Container%20With%20Most%20Water)|_|_|_| |19|Contains Duplicate|[Problem](https://leetcode.com/problemset/all/?search=Contains%20Duplicate)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Contains%20Duplicate)|_|_|_| |20|Convert Time Minimum Operations|[Problem](https://leetcode.com/problems/minimum-number-of-operations-to-convert-time/)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Convert%20Time%20Minimum%20Operations)|_|_|_| |21|Count And Say|[Problem](https://leetcode.com/problemset/all/?search=Count%20And%20Say)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Count%20And%20Say)|_|_|_| |22|Count Negatives|[Problem](https://leetcode.com/problemset/all/?search=Count%20Negatives)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Count%20Negatives)|_|_|_| |23|Count Pairs|[Problem](https://leetcode.com/problemset/all/?search=Count%20Pairs)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Count%20Pairs)|_|_|_| |24|Delete Node in a Linked List|[Problem](https://leetcode.com/problemset/all/?search=Delete%20Node%20in%20a%20Linked%20List)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Delete%20Node%20in%20a%20Linked%20List)|_|Linked List|_| |25|Design HashMap|[Problem](https://leetcode.com/problemset/all/?search=Design%20HashMap)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Design%20HashMap)|_|_|_| |26|Divide Two Integers|[Problem](https://leetcode.com/problemset/all/?search=Divide%20Two%20Integers)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Divide%20Two%20Integers)|_|_|_| |27|Dota2 Senate|[Problem](https://leetcode.com/problems/dota2-senate/description/?envType=study-plan-v2&envId=leetcode-75)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Dota2%20Senate)|_|_|_| |28|Encode Decode Strings|[Problem](https://leetcode.com/problems/encode-and-decode-strings/)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Encode%20Decode%20Strings)|_|String|_| |29|Find All People With Secrets|[Problem](https://leetcode.com/problemset/all/?search=Find%20All%20People%20With%20Secrets)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Find%20All%20People%20With%20Secrets)|_|_|_| |30|Find Differences String|[Problem](https://leetcode.com/problemset/all/?search=Find%20Differences%20String)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Find%20Differences%20String)|_|String|_| |31|Find Peak Element|[Problem](https://leetcode.com/problemset/all/?search=Find%20Peak%20Element)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Find%20Peak%20Element)|_|_|_| |32|Find Players Zero or One Loses|[Problem](https://leetcode.com/problems/find-players-with-zero-or-one-losses/)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Find%20Players%20Zero%20or%20One%20Loses)|_|_|_| |33|Find kth Largest Element|[Problem](https://leetcode.com/problemset/all/?search=Find%20kth%20Largest%20Element)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Find%20kth%20Largest%20Element)|_|_|_| |34|Find the Index of the First Occurrence in a String|[Problem](https://leetcode.com/problemset/all/?search=Find%20the%20Index%20of%20the%20First%20Occurrence%20in%20a%20String)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Find%20the%20Index%20of%20the%20First%20Occurrence%20in%20a%20String)|_|String|_| |35|First Bad Version|[Problem](https://leetcode.com/problemset/all/?search=First%20Bad%20Version)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/First%20Bad%20Version)|_|_|_| |36|First Unique Character In String|[Problem](https://leetcode.com/problemset/all/?search=First%20Unique%20Character%20In%20String)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/First%20Unique%20Character%20In%20String)|_|String|_| |37|Fixed Point|[Problem](https://leetcode.com/problemset/all/?search=Fixed%20Point)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Fixed%20Point)|_|_|_| |38|Flood Fill|[Problem](https://leetcode.com/problems/flood-fill/)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Flood%20Fill)|_|_|_| |39|Four Sum|[Problem](https://leetcode.com/problems/4sum/)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Four%20Sum)|_|Array|_| |40|Group Anagrams|[Problem](https://leetcode.com/problemset/all/?search=Group%20Anagrams)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Group%20Anagrams)|_|String|_| |41|HashMap|[Problem](https://leetcode.com/problemset/all/?search=HashMap)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/HashMap)|_|_|_| |42|HashSet|[Problem](https://leetcode.com/problemset/all/?search=HashSet)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/HashSet)|_|_|_| |43|Increasing Triplet Subsequence|[Problem](https://leetcode.com/problemset/all/?search=Increasing%20Triplet%20Subsequence)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Increasing%20Triplet%20Subsequence)|_|_|_| |44|Intersection of Two Array II|[Problem](https://leetcode.com/problemset/all/?search=Intersection%20of%20Two%20Array%20II)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Intersection%20of%20Two%20Array%20II)|_|Array|_| |45|Is Alien Sorted|[Problem](https://leetcode.com/problemset/all/?search=Is%20Alien%20Sorted)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Is%20Alien%20Sorted)|_|Sorting|_| |46|Is Majority Element|[Problem](https://leetcode.com/problemset/all/?search=Is%20Majority%20Element)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Is%20Majority%20Element)|_|_|_| |47|Largest Integer Digit Swaps Parity|[Problem](https://leetcode.com/contest/weekly-contest-288/problems/largest-number-after-digit-swaps-by-parity/)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Largest%20Integer%20Digit%20Swaps%20Parity)|_|_|_| |48|Largest Triangle Area|[Problem](https://leetcode.com/problemset/all/?search=Largest%20Triangle%20Area)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Largest%20Triangle%20Area)|_|_|_| |49|License Key Formatting|[Problem](https://leetcode.com/problems/license-key-formatting/)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/License%20Key%20Formatting)|_|_|_| |50|Linked List Cycle|[Problem](https://leetcode.com/problemset/all/?search=Linked%20List%20Cycle)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Linked%20List%20Cycle)|_|Linked List|_| |51|Longest Common Prefix|[Problem](https://leetcode.com/problemset/all/?search=Longest%20Common%20Prefix)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Longest%20Common%20Prefix)|_|_|_| |52|Longest Consecutive Sequence|[Problem](https://leetcode.com/problems/longest-consecutive-sequence/)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Longest%20Consecutive%20Sequence)|_|_|_| |53|Longest Palindrome|[Problem](https://leetcode.com/problems/longest-palindromic-substring/)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Longest%20Palindrome)|_|String|_| |54|Longest Substring without Repeating Characters|[Problem](https://leetcode.com/problemset/all/?search=Longest%20Substring%20without%20Repeating%20Characters)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Longest%20Substring%20without%20Repeating%20Characters)|_|Tree|_| |55|Majority Element|[Problem](https://leetcode.com/problemset/all/?search=Majority%20Element)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Majority%20Element)|_|_|_| |56|Majority Element 2|[Problem](https://leetcode.com/problemset/all/?search=Majority%20Element%202)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Majority%20Element%202)|_|_|_| |57|Max Area of Island|[Problem](https://leetcode.com/problems/max-area-of-island/)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Max%20Area%20of%20Island)|_|Matrix|_| |58|Max Distance|[Problem](https://leetcode.com/problemset/all/?search=Max%20Distance)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Max%20Distance)|_|_|_| |59|Max Number of Vowels|[Problem](https://leetcode.com/problemset/all/?search=Max%20Number%20of%20Vowels)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Max%20Number%20of%20Vowels)|_|_|_| |60|Maximum Bags with Full Capacity of Rocks|[Problem](https://leetcode.com/problemset/all/?search=Maximum%20Bags%20with%20Full%20Capacity%20of%20Rocks)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Maximum%20Bags%20with%20Full%20Capacity%20of%20Rocks)|_|_|_| |61|Maximum Count|[Problem](https://leetcode.com/problemset/all/?search=Maximum%20Count)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Maximum%20Count)|_|_|_| |62|Maximum Depth of a Binary Tree|[Problem](https://leetcode.com/problemset/all/?search=Maximum%20Depth%20of%20a%20Binary%20Tree)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Maximum%20Depth%20of%20a%20Binary%20Tree)|_|Tree|_| |63|Maximum Score From Removing Substrings|[Problem](https://leetcode.com/problemset/all/?search=Maximum%20Score%20From%20Removing%20Substrings)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Maximum%20Score%20From%20Removing%20Substrings)|_|Tree|_| |64|Merge In Place|[Problem](https://leetcode.com/problemset/all/?search=Merge%20In%20Place)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Merge%20In%20Place)|_|_|_| |65|Merge Intervals|[Problem](https://leetcode.com/problemset/all/?search=Merge%20Intervals)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Merge%20Intervals)|_|_|_| |66|Merge Strings Alternatively|[Problem](https://leetcode.com/problemset/all/?search=Merge%20Strings%20Alternatively)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Merge%20Strings%20Alternatively)|_|String|_| |67|Merge Two Binary Trees|[Problem](https://leetcode.com/problems/merge-two-binary-trees/)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Merge%20Two%20Binary%20Trees)|_|Tree|_| |68|MergeIntervals|[Problem](https://leetcode.com/problemset/all/?search=MergeIntervals)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/MergeIntervals)|_|_|_| |69|MergeKLists|[Problem](https://leetcode.com/problemset/all/?search=MergeKLists)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/MergeKLists)|_|_|_| |70|Message Logger|[Problem](https://leetcode.com/problemset/all/?search=Message%20Logger)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Message%20Logger)|_|_|_| |71|Middle of the Linked List|[Problem](https://leetcode.com/problemset/all/?search=Middle%20of%20the%20Linked%20List)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Middle%20of%20the%20Linked%20List)|_|Linked List|_| |72|Min Stack|[Problem](https://leetcode.com/problemset/all/?search=Min%20Stack)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Min%20Stack)|_|Stack / Queue|_| |73|Minimum Window Substring|[Problem](https://leetcode.com/problemset/all/?search=Minimum%20Window%20Substring)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Minimum%20Window%20Substring)|_|Tree|_| |74|Missing Ranges|[Problem](https://leetcode.com/problemset/all/?search=Missing%20Ranges)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Missing%20Ranges)|_|_|_| |75|Move Zeros to End|[Problem](https://leetcode.com/problemset/all/?search=Move%20Zeros%20to%20End)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Move%20Zeros%20to%20End)|_|_|_| |76|Multiply Strings|[Problem](https://leetcode.com/problemset/all/?search=Multiply%20Strings)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Multiply%20Strings)|_|String|_| |77|Next Permutation|[Problem](https://leetcode.com/problemset/all/?search=Next%20Permutation)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Next%20Permutation)|_|_|_| |78|Non-Overlapping Intervals|[Problem](https://leetcode.com/problemset/all/?search=Non-Overlapping%20Intervals)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Non-Overlapping%20Intervals)|_|_|_| |79|Palindrome Linked List|[Problem](https://leetcode.com/problemset/all/?search=Palindrome%20Linked%20List)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Palindrome%20Linked%20List)|_|Linked List|_| |80|Partition Labels|[Problem](https://leetcode.com/problemset/all/?search=Partition%20Labels)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Partition%20Labels)|_|_|_| |81|Pascal's Triangle II|[Problem](https://leetcode.com/problemset/all/?search=Pascal%27s%20Triangle%20II)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Pascal%27s%20Triangle%20II)|_|_|_| |82|Permutation in String|[Problem](https://leetcode.com/problemset/all/?search=Permutation%20in%20String)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Permutation%20in%20String)|_|String|_| |83|Plus One|[Problem](https://leetcode.com/problemset/all/?search=Plus%20One)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Plus%20One)|_|_|_| |84|Populating Next Right Pointer in Each Node|[Problem](https://leetcode.com/problems/populating-next-right-pointers-in-each-node/)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Populating%20Next%20Right%20Pointer%20in%20Each%20Node)|_|_|_| |85|Product of Array Except Self|[Problem](https://leetcode.com/problemset/all/?search=Product%20of%20Array%20Except%20Self)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Product%20of%20Array%20Except%20Self)|_|Array|_| |86|Randomized Set|[Problem](https://leetcode.com/problemset/all/?search=Randomized%20Set)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Randomized%20Set)|_|_|_| |87|Recursive Bubble Sort|[Problem](https://leetcode.com/problemset/all/?search=Recursive%20Bubble%20Sort)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Recursive%20Bubble%20Sort)|_|Sorting|_| |88|Recursive Insertion Sort|[Problem](https://leetcode.com/problemset/all/?search=Recursive%20Insertion%20Sort)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Recursive%20Insertion%20Sort)|_|Sorting|_| |89|Remove Duplicates Sorted Array|[Problem](https://leetcode.com/problemset/all/?search=Remove%20Duplicates%20Sorted%20Array)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Remove%20Duplicates%20Sorted%20Array)|_|Sorting|_| |90|Remove Element|[Problem](https://leetcode.com/problemset/all/?search=Remove%20Element)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Remove%20Element)|_|_|_| |91|Remove Nth Node From End of List|[Problem](https://leetcode.com/problemset/all/?search=Remove%20Nth%20Node%20From%20End%20of%20List)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Remove%20Nth%20Node%20From%20End%20of%20List)|_|_|_| |92|Remove Nth Node from Linked List|[Problem](https://leetcode.com/problemset/all/?search=Remove%20Nth%20Node%20from%20Linked%20List)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Remove%20Nth%20Node%20from%20Linked%20List)|_|Linked List|_| |93|Reverse Integer|[Problem](https://leetcode.com/problemset/all/?search=Reverse%20Integer)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Reverse%20Integer)|_|_|_| |94|Reverse Linked Lists|[Problem](https://leetcode.com/problemset/all/?search=Reverse%20Linked%20Lists)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Reverse%20Linked%20Lists)|_|Linked List|_| |95|Reverse Pairs|[Problem](https://leetcode.com/problemset/all/?search=Reverse%20Pairs)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Reverse%20Pairs)|_|_|_| |96|Reverse String|[Problem](https://leetcode.com/problemset/all/?search=Reverse%20String)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Reverse%20String)|_|String|_| |97|Reverse Words in a String|[Problem](https://leetcode.com/problemset/all/?search=Reverse%20Words%20in%20a%20String)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Reverse%20Words%20in%20a%20String)|_|String|_| |98|Rotate Array|[Problem](https://leetcode.com/problemset/all/?search=Rotate%20Array)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Rotate%20Array)|_|Array|_| |99|Rotate Image|[Problem](https://leetcode.com/problemset/all/?search=Rotate%20Image)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Rotate%20Image)|_|_|_| |100|Running Sum 1D Array|[Problem](https://leetcode.com/problemset/all/?search=Running%20Sum%201D%20Array)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Running%20Sum%201D%20Array)|_|Array|_| |101|Search 2D Matrix|[Problem](https://leetcode.com/problems/search-a-2d-matrix/submissions/)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Search%202D%20Matrix)|_|Matrix|_| |102|Search Insert Position|[Problem](https://leetcode.com/problemset/all/?search=Search%20Insert%20Position)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Search%20Insert%20Position)|_|Searching|_| |103|Search a 2D Matrix II|[Problem](https://leetcode.com/problemset/all/?search=Search%20a%202D%20Matrix%20II)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Search%20a%202D%20Matrix%20II)|_|Matrix|_| |104|Set Zeros Matrix|[Problem](https://leetcode.com/problems/set-matrix-zeroes/)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Set%20Zeros%20Matrix)|_|Matrix|_| |105|Shortest Distance|[Problem](https://leetcode.com/problemset/all/?search=Shortest%20Distance)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Shortest%20Distance)|_|_|_| |106|Single Number|[Problem](https://leetcode.com/problemset/all/?search=Single%20Number)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Single%20Number)|_|_|_| |107|Sort An Array|[Problem](https://leetcode.com/problemset/all/?search=Sort%20An%20Array)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Sort%20An%20Array)|_|Sorting|_| |108|Sort Array By Parity II|[Problem](https://leetcode.com/problemset/all/?search=Sort%20Array%20By%20Parity%20II)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Sort%20Array%20By%20Parity%20II)|_|Sorting|_| |109|Sort Colors|[Problem](https://leetcode.com/problemset/all/?search=Sort%20Colors)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Sort%20Colors)|_|Sorting|_| |110|Sort by Parity|[Problem](https://leetcode.com/problemset/all/?search=Sort%20by%20Parity)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Sort%20by%20Parity)|_|Sorting|_| |111|Sorted and Rotated Array|[Problem](https://leetcode.com/problems/check-if-array-is-sorted-and-rotated/)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Sorted%20and%20Rotated%20Array)|_|Sorting|_| |112|Spiral Matrix II|[Problem](https://leetcode.com/problemset/all/?search=Spiral%20Matrix%20II)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Spiral%20Matrix%20II)|_|Matrix|_| |113|Sprial Matrix|[Problem](https://leetcode.com/problemset/all/?search=Sprial%20Matrix)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Sprial%20Matrix)|_|Matrix|_| |114|Squares of a Sorted Array|[Problem](https://leetcode.com/problemset/all/?search=Squares%20of%20a%20Sorted%20Array)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Squares%20of%20a%20Sorted%20Array)|_|Sorting|_| |115|String to Integer(atoi)|[Problem](https://leetcode.com/problemset/all/?search=String%20to%20Integer%28atoi%29)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/String%20to%20Integer%28atoi%29)|_|String|_| |116|Strings Multiply|[Problem](https://leetcode.com/problemset/all/?search=Strings%20Multiply)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Strings%20Multiply)|_|String|_| |117|Sub Array Sum Equals K|[Problem](https://leetcode.com/problemset/all/?search=Sub%20Array%20Sum%20Equals%20K)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Sub%20Array%20Sum%20Equals%20K)|_|Array|_| |118|Subsets|[Problem](https://leetcode.com/problems/subsets/)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Subsets)|_|_|_| |119|Symmetric Tree|[Problem](https://leetcode.com/problemset/all/?search=Symmetric%20Tree)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Symmetric%20Tree)|_|Tree|_| |120|Target Indicies|[Problem](https://leetcode.com/problemset/all/?search=Target%20Indicies)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Target%20Indicies)|_|_|_| |121|Three Parts Equal Sum|[Problem](https://leetcode.com/problemset/all/?search=Three%20Parts%20Equal%20Sum)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Three%20Parts%20Equal%20Sum)|_|Array|_| |122|Three Sum Smaller|[Problem](https://leetcode.com/problems/3sum-smaller/)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Three%20Sum%20Smaller)|_|Array|_| |123|Three Sum Zero|[Problem](https://leetcode.com/problemset/all/?search=Three%20Sum%20Zero)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Three%20Sum%20Zero)|_|Array|_| |124|Top K Frequent Elements|[Problem](https://leetcode.com/problems/top-k-frequent-elements/)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Top%20K%20Frequent%20Elements)|_|_|_| |125|Topological Sort|[Problem](https://leetcode.com/problemset/all/?search=Topological%20Sort)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Topological%20Sort)|_|Graph|_| |126|Two Number Sum - Sorted Input Array|[Problem](https://leetcode.com/problemset/all/?search=Two%20Number%20Sum%20-%20Sorted%20Input%20Array)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Two%20Number%20Sum%20-%20Sorted%20Input%20Array)|_|Sorting|_| |127|Two Sum Less Than K|[Problem](https://leetcode.com/problemset/all/?search=Two%20Sum%20Less%20Than%20K)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Two%20Sum%20Less%20Than%20K)|_|Array|_| |128|Ugly Number|[Problem](https://leetcode.com/problemset/all/?search=Ugly%20Number)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Ugly%20Number)|_|_|_| |129|Unique Binary Search Tree 2|[Problem](https://leetcode.com/problems/unique-binary-search-trees-ii/)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Unique%20Binary%20Search%20Tree%202)|_|Tree|_| |130|Unique Email Address|[Problem](https://leetcode.com/problemset/all/?search=Unique%20Email%20Address)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Unique%20Email%20Address)|_|_|_| |131|Valid Anagram|[Problem](https://leetcode.com/problems/valid-anagram/)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Valid%20Anagram)|_|String|_| |132|Valid Palindrome 2|[Problem](https://leetcode.com/problemset/all/?search=Valid%20Palindrome%202)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Valid%20Palindrome%202)|_|String|_| |133|Valid Parantheses|[Problem](https://leetcode.com/problemset/all/?search=Valid%20Parantheses)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Valid%20Parantheses)|_|_|_| |134|Valid Parentheses|[Problem](https://leetcode.com/problemset/all/?search=Valid%20Parentheses)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Valid%20Parentheses)|_|_|_| |135|Valid Suduku|[Problem](https://leetcode.com/problemset/all/?search=Valid%20Suduku)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Valid%20Suduku)|_|_|_| |136|Word Pattern|[Problem](https://leetcode.com/problemset/all/?search=Word%20Pattern)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/LeetCode/Word%20Pattern)|_|String|_| ### [AlgoExpert](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/) | Serial No. | Problem | Problem Link | Solution | Difficulty | Topic/Pattern | Notes | |---|---|---|---|---|---|---| |1|Apartment Hunting|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Apartment%20Hunting)|_|_|_| |2|Array of Products|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Array%20of%20Products)|_|Array|_| |3|BST Construction|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/BST%20Construction)|_|Tree|_| |4|BST Traversal|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/BST%20Traversal)|_|Tree|_| |5|Balanced Brackets|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Balanced%20Brackets)|_|_|_| |6|Binary Search|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Binary%20Search)|_|Searching|_| |7|Binary Tree Diameter|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Binary%20Tree%20Diameter)|_|Tree|_| |8|Branch Sums|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Branch%20Sums)|_|Array|_| |9|Breadth First Search|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Breadth%20First%20Search)|_|Searching|_| |10|Bubble Sort|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Bubble%20Sort)|_|Sorting|_| |11|Caesar Cipher Encryptor|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Caesar%20Cipher%20Encryptor)|_|_|_| |12|Calender Matching|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Calender%20Matching)|_|_|_| |13|Class Photos|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Class%20Photos)|_|_|_| |14|Depth First Search|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Depth%20First%20Search)|_|Searching|_| |15|Find Closest Value In BST|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Find%20Closest%20Value%20In%20BST)|_|Tree|_| |16|Find Kth Largest Node in BST|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Find%20Kth%20Largest%20Node%20in%20BST)|_|Tree|_| |17|Find Loop in Linked List|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Find%20Loop%20in%20Linked%20List)|_|Linked List|_| |18|Find Nodes Distance K|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Find%20Nodes%20Distance%20K)|_|_|_| |19|Find Successor|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Find%20Successor)|_|_|_| |20|Find Three Largest Numbers|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Find%20Three%20Largest%20Numbers)|_|_|_| |21|First Duplicate Value|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/First%20Duplicate%20Value)|_|_|_| |22|First Non Repeating Character|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/First%20Non%20Repeating%20Character)|_|_|_| |23|Four Number Sum|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Four%20Number%20Sum)|_|Array|_| |24|Generate Document|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Generate%20Document)|_|_|_| |25|Group Anagrams|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Group%20Anagrams)|_|String|_| |26|Height Balanced Binary Tree|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Height%20Balanced%20Binary%20Tree)|_|Tree|_| |27|Insertion Sort|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Insertion%20Sort)|_|Sorting|_| |28|Invert Binary Tree|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Invert%20Binary%20Tree)|_|Tree|_| |29|Kadanes Algorithm|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Kadanes%20Algorithm)|_|_|_| |30|LRU Cache|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/LRU%20Cache)|_|_|_| |31|Largest Range|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Largest%20Range)|_|_|_| |32|Levenshtein Distance|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Levenshtein%20Distance)|_|_|_| |33|Linked List Construction|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Linked%20List%20Construction)|_|Linked List|_| |34|Longest Common Subsequence|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Longest%20Common%20Subsequence)|_|_|_| |35|Longest Palindromic Substring|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Longest%20Palindromic%20Substring)|_|Tree|_| |36|Longest Peak|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Longest%20Peak)|_|_|_| |37|Longest Substring Without Duplication|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Longest%20Substring%20Without%20Duplication)|_|Tree|_| |38|Lowest Common Manager|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Lowest%20Common%20Manager)|_|_|_| |39|Max Path Sum|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Max%20Path%20Sum)|_|Array|_| |40|Max Subset Sum No Adjacent|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Max%20Subset%20Sum%20No%20Adjacent)|_|Array|_| |41|Max Sum Increasing Subsequence|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Max%20Sum%20Increasing%20Subsequence)|_|Array|_| |42|Merge LinkedLists|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Merge%20LinkedLists)|_|_|_| |43|Merge Overlapping Intervals|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Merge%20Overlapping%20Intervals)|_|_|_| |44|Merge Sort|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Merge%20Sort)|_|Sorting|_| |45|Min Height BST|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Min%20Height%20BST)|_|Tree|_| |46|Min Max Stack Construction|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Min%20Max%20Stack%20Construction)|_|Stack / Queue|_| |47|Min Number of Jumps|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Min%20Number%20of%20Jumps)|_|_|_| |48|Min Rewards|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Min%20Rewards)|_|_|_| |49|Minimum Waiting Time|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Minimum%20Waiting%20Time)|_|_|_| |50|Monotonic Array|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Monotonic%20Array)|_|Array|_| |51|Move Element to End|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Move%20Element%20to%20End)|_|_|_| |52|Next Greater Element|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Next%20Greater%20Element)|_|_|_| |53|Node Depths|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Node%20Depths)|_|_|_| |54|Non-Constructible Change|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Non-Constructible%20Change)|_|_|_| |55|Nth Fibonacci|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Nth%20Fibonacci)|_|_|_| |56|Number of Ways To Traverse Graph|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Number%20of%20Ways%20To%20Traverse%20Graph)|_|Graph|_| |57|Number of Ways to Make Change|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Number%20of%20Ways%20to%20Make%20Change)|_|_|_| |58|Palindrome Check|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Palindrome%20Check)|_|String|_| |59|Permutations|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Permutations)|_|_|_| |60|Power Set|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Power%20Set)|_|_|_| |61|Product Sum|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Product%20Sum)|_|Array|_| |62|Quick Sort|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Quick%20Sort)|_|Sorting|_| |63|Reconstruct BST|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Reconstruct%20BST)|_|Tree|_| |64|Remove Duplicates From Linked List|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Remove%20Duplicates%20From%20Linked%20List)|_|Linked List|_| |65|Remove Islands|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Remove%20Islands)|_|Matrix|_| |66|Remove Kth Node From End|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Remove%20Kth%20Node%20From%20End)|_|_|_| |67|Reverse Linkedlist|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Reverse%20Linkedlist)|_|_|_| |68|Right Smaller Than|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Right%20Smaller%20Than)|_|_|_| |69|River Sizes|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/River%20Sizes)|_|_|_| |70|Run Length Encoding|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Run%20Length%20Encoding)|_|_|_| |71|Same BSTs|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Same%20BSTs)|_|Tree|_| |72|Search For Range|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Search%20For%20Range)|_|Searching|_| |73|Search In Sorted Matrix|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Search%20In%20Sorted%20Matrix)|_|Matrix|_| |74|Selection Sort|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Selection%20Sort)|_|Sorting|_| |75|Shift Linked List|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Shift%20Linked%20List)|_|Linked List|_| |76|Shifted Binary Search|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Shifted%20Binary%20Search)|_|Searching|_| |77|Single Cycle Check|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Single%20Cycle%20Check)|_|_|_| |78|Smallest Difference|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Smallest%20Difference)|_|_|_| |79|Sort Stacks|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Sort%20Stacks)|_|Sorting|_| |80|Sorted Squared Array|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Sorted%20Squared%20Array)|_|Sorting|_| |81|Spiral Traverse|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Spiral%20Traverse)|_|Matrix|_| |82|Staircase Traversal|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Staircase%20Traversal)|_|_|_| |83|Subarray Sort|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Subarray%20Sort)|_|Sorting|_| |84|Sum of Linked List|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Sum%20of%20Linked%20List)|_|Linked List|_| |85|Sunset Views|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Sunset%20Views)|_|_|_| |86|Tandem Bicycle|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Tandem%20Bicycle)|_|_|_| |87|Task Assignment|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Task%20Assignment)|_|_|_| |88|Three Number Sort|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Three%20Number%20Sort)|_|Sorting|_| |89|Three Number Sum|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Three%20Number%20Sum)|_|Array|_| |90|Tournament Winner|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Tournament%20Winner)|_|_|_| |91|Two Number Sum|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Two%20Number%20Sum)|_|Array|_| |92|Valid IP Addresses|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Valid%20IP%20Addresses)|_|_|_| |93|Valid Starting City|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Valid%20Starting%20City)|_|_|_| |94|Validate BST|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Validate%20BST)|_|Tree|_| |95|Validate Subsequence|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Validate%20Subsequence)|_|_|_| |96|Validate Three Nodes|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Validate%20Three%20Nodes)|_|_|_| |97|Water Area|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Water%20Area)|_|_|_| |98|Youngest Common Ancestor|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/Youngest%20Common%20Ancestor)|_|_|_| |99|ZigZag Traverse|_|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/AlgoExpert/ZigZag%20Traverse)|_|_|_| ### [GeekForGeeks](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/GeekForGeeks/) | Serial No. | Problem | Problem Link | Solution | Difficulty | Topic/Pattern | Notes | |---|---|---|---|---|---|---| |1|Nth Root of A Number|[Problem](https://www.geeksforgeeks.org/?s=Nth%20Root%20of%20A%20Number)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/GeekForGeeks/Nth%20Root%20of%20A%20Number)|_|_|_| ### [Pramp](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/Pramp/) | Serial No. | Problem | Problem Link | Solution | Difficulty | Topic/Pattern | Notes | |---|---|---|---|---|---|---| |1|Nth Root of Number|[Problem](https://www.pramp.com/#/?q=Nth%20Root%20of%20Number)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/Pramp/Nth%20Root%20of%20Number)|_|_|_| |2|Smallest Substring of All Characters|[Problem](https://www.pramp.com/#/?q=Smallest%20Substring%20of%20All%20Characters)|[Solution](https://github.com/boudhayan/Algorithm-Solutions-In-Swift/tree/main/Pramp/Smallest%20Substring%20of%20All%20Characters)|_|Tree|_| ### Maintenance This README is generated from the repository directory structure.