diff --git a/README.md b/README.md
index 9f5d5b25c..b9ba74d16 100644
--- a/README.md
+++ b/README.md
@@ -4,16 +4,13 @@
-
+
-
-
-
-# 数据结构
+## 数据结构
| 数据结构 | 变种 | 相关题目 |
|:-------:|:-------|:------|
@@ -28,4 +25,1002 @@
|查找|1.哈希表
2.跳跃表
3.排序二叉树
4.AVL树
5.B树
6.AA树
7.红黑树
8.排序二叉堆
9.Splay树
10.双链树
11.Trie树||
-# 算法
\ No newline at end of file
+## Data Structures
+* [Array](#array)
+* [String](#string)
+* [Linked List](#linked-list)
+* [Stack](#stack)
+* [Tree](#tree)
+* [Dynamic programming](#dynamic-programming)
+* [Depth-first search](#depth-first-search)
+* [Math](#math)
+* [Search](#search)
+* [Sort](#sort)
+* [Union Find](#union-find)
+
+## Companies
+* [Google](#google)
+* [Facebook](#facebook)
+* [Snapchat](#snapchat)
+* [Uber](#uber)
+* [Airbnb](#airbnb)
+* [LinkedIn](#linkedin)
+* [Amazon](#amazon)
+* [Microsoft](#microsoft)
+
+
+## 算法
+
+
+## 一. 目录
+
+|题号|题目|通过率|难度|收藏|
+|:--:|:--|:--: | :--: | :--: |
+|1|[Two Sum](./Algorithms/1.two-sum)|38%|Easy||
+|2|[Add Two Numbers](./Algorithms/2.add-two-numbers)|28%|Medium||
+|3|[Longest Substring Without Repeating Characters](./Algorithms/3.longest-substring-without-repeating-characters)|24%|Medium||
+|4|[Median of Two Sorted Arrays](./Algorithms/4.median-of-two-sorted-arrays)|23%|Hard||
+|5|[Longest Palindromic Substring](./Algorithms/5.longest-palindromic-substring)|25%|Medium||
+|6|[ZigZag Conversion](./Algorithms/6.zigzag-conversion)|27%|Medium||
+|7|[Reverse Integer](./Algorithms/7.reverse-integer)|24%|Easy||
+|8|[String to Integer (atoi)](./Algorithms/8.string-to-integer-atoi)|14%|Medium||
+|9|[Palindrome Number](./Algorithms/9.palindrome-number)|35%|Easy||
+|10|[Regular Expression Matching](./Algorithms/010.regular-expression-matching)|24%|Hard|[❤](https://leetcode.com/list/oussv5j)|
+|11|[Container With Most Water](./Algorithms/011.container-with-most-water)|37%|Medium||
+|12|[Integer to Roman](./Algorithms/012.integer-to-roman)|46%|Medium||
+|13|[Roman to Integer](./Algorithms/013.roman-to-integer)|48%|Easy||
+|14|[Longest Common Prefix](./Algorithms/014.longest-common-prefix)|31%|Easy||
+|15|[3Sum](./Algorithms/015.3sum)|21%|Medium||
+|16|[3Sum Closest](./Algorithms/016.3sum-closest)|31%|Medium||
+|17|[Letter Combinations of a Phone Number](./Algorithms/017.letter-combinations-of-a-phone-number)|36%|Medium||
+|18|[4Sum](./Algorithms/018.4sum)|27%|Medium||
+|19|[Remove Nth Node From End of List](./Algorithms/019.remove-nth-node-from-end-of-list)|33%|Medium||
+|20|[Valid Parentheses](./Algorithms/020.valid-parentheses)|33%|Easy||
+|21|[Merge Two Sorted Lists](./Algorithms/021.merge-two-sorted-lists)|41%|Easy||
+|22|[Generate Parentheses](./Algorithms/022.generate-parentheses)|48%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|23|[Merge k Sorted Lists](./Algorithms/023.merge-k-sorted-lists)|28%|Hard||
+|24|[Swap Nodes in Pairs](./Algorithms/024.swap-nodes-in-pairs)|39%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|25|[Reverse Nodes in k-Group](./Algorithms/025.reverse-nodes-in-k-group)|31%|Hard|[❤](https://leetcode.com/list/oussv5j)|
+|26|[Remove Duplicates from Sorted Array](./Algorithms/026.remove-duplicates-from-sorted-array)|36%|Easy|[❤](https://leetcode.com/list/oussv5j)|
+|27|[Remove Element](./Algorithms/027.remove-element)|40%|Easy||
+|28|[Implement strStr()](./Algorithms/028.implement-strstr)|28%|Easy||
+|29|[Divide Two Integers](./Algorithms/029.divide-two-integers)|15%|Medium||
+|30|[Substring with Concatenation of All Words](./Algorithms/030.substring-with-concatenation-of-all-words)|22%|Hard|[❤](https://leetcode.com/list/oussv5j)|
+|31|[Next Permutation](./Algorithms/031.next-permutation)|29%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|32|[Longest Valid Parentheses](./Algorithms/032.longest-valid-parentheses)|23%|Hard||
+|33|[Search in Rotated Sorted Array](./Algorithms/033.search-in-rotated-sorted-array)|31%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|34|[Search for a Range](./Algorithms/034.search-for-a-range)|31%|Medium||
+|35|[Search Insert Position](./Algorithms/035.search-insert-position)|40%|Easy||
+|36|[Valid Sudoku](./Algorithms/036.valid-sudoku)|37%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|37|[Sudoku Solver](./Algorithms/037.sudoku-solver)|32%|Hard|[❤](https://leetcode.com/list/oussv5j)|
+|38|[Count and Say](./Algorithms/038.count-and-say)|36%|Easy||
+|39|[Combination Sum](./Algorithms/039.combination-sum)|41%|Medium||
+|40|[Combination Sum II](./Algorithms/040.combination-sum-ii)|35%|Medium||
+|41|[First Missing Positive](./Algorithms/041.first-missing-positive)|25%|Hard||
+|42|[Trapping Rain Water](./Algorithms/042.trapping-rain-water)|37%|Hard||
+|43|[Multiply Strings](./Algorithms/043.multiply-strings)|28%|Medium||
+|44|[Wildcard Matching](./Algorithms/044.wildcard-matching)|21%|Hard|[❤](https://leetcode.com/list/oussv5j)|
+|45|[Jump Game II](./Algorithms/045.jump-game-ii)|26%|Hard||
+|46|[Permutations](./Algorithms/046.permutations)|47%|Medium||
+|47|[Permutations II](./Algorithms/047.permutations-ii)|35%|Medium||
+|48|[Rotate Image](./Algorithms/048.rotate-image)|41%|Medium||
+|49|[Group Anagrams](./Algorithms/049.group-anagrams)|38%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|50|[Pow(x, n)](./Algorithms/050.powx-n)|26%|Medium||
+|51|[N-Queens](./Algorithms/051.n-queens)|33%|Hard||
+|52|[N-Queens II](./Algorithms/052.n-queens-ii)|46%|Hard||
+|53|[Maximum Subarray](./Algorithms/053.maximum-subarray)|40%|Easy|[❤](https://leetcode.com/list/oussv5j)|
+|54|[Spiral Matrix](./Algorithms/054.spiral-matrix)|27%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|55|[Jump Game](./Algorithms/055.jump-game)|29%|Medium||
+|56|[Merge Intervals](./Algorithms/056.merge-intervals)|31%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|57|[Insert Interval](./Algorithms/057.insert-interval)|28%|Hard||
+|58|[Length of Last Word](./Algorithms/058.length-of-last-word)|32%|Easy||
+|59|[Spiral Matrix II](./Algorithms/059.spiral-matrix-ii)|41%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|60|[Permutation Sequence](./Algorithms/060.permutation-sequence)|29%|Medium||
+|61|[Rotate List](./Algorithms/061.rotate-list)|24%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|62|[Unique Paths](./Algorithms/062.unique-paths)|42%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|63|[Unique Paths II](./Algorithms/063.unique-paths-ii)|32%|Medium||
+|64|[Minimum Path Sum](./Algorithms/064.minimum-path-sum)|40%|Medium||
+|65|[Valid Number](./Algorithms/065.valid-number)|12%|Hard||
+|66|[Plus One](./Algorithms/066.plus-one)|39%|Easy||
+|67|[Add Binary](./Algorithms/067.add-binary)|34%|Easy||
+|68|[Text Justification](./Algorithms/068.text-justification)|20%|Hard||
+|69|[Sqrt(x)](./Algorithms/069.sqrtx)|28%|Easy||
+|70|[Climbing Stairs](./Algorithms/070.climbing-stairs)|41%|Easy||
+|71|[Simplify Path](./Algorithms/071.simplify-path)|26%|Medium||
+|72|[Edit Distance](./Algorithms/072.edit-distance)|32%|Hard|[❤](https://leetcode.com/list/oussv5j)|
+|73|[Set Matrix Zeroes](./Algorithms/073.set-matrix-zeroes)|36%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|74|[Search a 2D Matrix](./Algorithms/074.search-a-2d-matrix)|34%|Medium||
+|75|[Sort Colors](./Algorithms/075.sort-colors)|38%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|76|[Minimum Window Substring](./Algorithms/076.minimum-window-substring)|26%|Hard|[❤](https://leetcode.com/list/oussv5j)|
+|77|[Combinations](./Algorithms/077.combinations)|41%|Medium||
+|78|[Subsets](./Algorithms/078.subsets)|44%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|79|[Word Search](./Algorithms/079.word-search)|28%|Medium||
+|80|[Remove Duplicates from Sorted Array II](./Algorithms/080.remove-duplicates-from-sorted-array-ii)|36%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|81|[Search in Rotated Sorted Array II](./Algorithms/081.search-in-rotated-sorted-array-ii)|32%|Medium||
+|82|[Remove Duplicates from Sorted List II](./Algorithms/082.remove-duplicates-from-sorted-list-ii)|29%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|83|[Remove Duplicates from Sorted List](./Algorithms/083.remove-duplicates-from-sorted-list)|40%|Easy||
+|84|[Largest Rectangle in Histogram](./Algorithms/084.largest-rectangle-in-histogram)|27%|Hard|[❤](https://leetcode.com/list/oussv5j)|
+|85|[Maximal Rectangle](./Algorithms/085.maximal-rectangle)|29%|Hard|[❤](https://leetcode.com/list/oussv5j)|
+|86|[Partition List](./Algorithms/086.partition-list)|33%|Medium||
+|87|[Scramble String](./Algorithms/087.scramble-string)|29%|Hard|[❤](https://leetcode.com/list/oussv5j)|
+|88|[Merge Sorted Array](./Algorithms/088.merge-sorted-array)|32%|Easy||
+|89|[Gray Code](./Algorithms/089.gray-code)|42%|Medium||
+|90|[Subsets II](./Algorithms/090.subsets-ii)|38%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|91|[Decode Ways](./Algorithms/091.decode-ways)|20%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|92|[Reverse Linked List II](./Algorithms/092.reverse-linked-list-ii)|31%|Medium||
+|93|[Restore IP Addresses](./Algorithms/093.restore-ip-addresses)|28%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|94|[Binary Tree Inorder Traversal](./Algorithms/094.binary-tree-inorder-traversal)|49%|Medium||
+|95|[Unique Binary Search Trees II](./Algorithms/095.unique-binary-search-trees-ii)|32%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|96|[Unique Binary Search Trees](./Algorithms/096.unique-binary-search-trees)|41%|Medium||
+|97|[Interleaving String](./Algorithms/097.interleaving-string)|25%|Hard|[❤](https://leetcode.com/list/oussv5j)|
+|98|[Validate Binary Search Tree](./Algorithms/098.validate-binary-search-tree)|24%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|99|[Recover Binary Search Tree](./Algorithms/099.recover-binary-search-tree)|31%|Hard|[❤](https://leetcode.com/list/oussv5j)|
+|100|[Same Tree](./Algorithms/100.same-tree)|47%|Easy||
+|101|[Symmetric Tree](./Algorithms/101.symmetric-tree)|40%|Easy|[❤](https://leetcode.com/list/oussv5j)|
+|102|[Binary Tree Level Order Traversal](./Algorithms/102.binary-tree-level-order-traversal)|42%|Medium||
+|103|[Binary Tree Zigzag Level Order Traversal](./Algorithms/103.binary-tree-zigzag-level-order-traversal)|36%|Medium||
+|104|[Maximum Depth of Binary Tree](./Algorithms/104.maximum-depth-of-binary-tree)|54%|Easy||
+|105|[Construct Binary Tree from Preorder and Inorder Traversal](./Algorithms/105.construct-binary-tree-from-preorder-and-inorder-traversal)|34%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|106|[Construct Binary Tree from Inorder and Postorder Traversal](./Algorithms/106.construct-binary-tree-from-inorder-and-postorder-traversal)|33%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|107|[Binary Tree Level Order Traversal II](./Algorithms/107.binary-tree-level-order-traversal-ii)|42%|Easy||
+|108|[Convert Sorted Array to Binary Search Tree](./Algorithms/108.convert-sorted-array-to-binary-search-tree)|44%|Easy||
+|109|[Convert Sorted List to Binary Search Tree](./Algorithms/109.convert-sorted-list-to-binary-search-tree)|35%|Medium||
+|110|[Balanced Binary Tree](./Algorithms/110.balanced-binary-tree)|38%|Easy||
+|111|[Minimum Depth of Binary Tree](./Algorithms/111.minimum-depth-of-binary-tree)|33%|Easy||
+|112|[Path Sum](./Algorithms/112.path-sum)|34%|Easy||
+|113|[Path Sum II](./Algorithms/113.path-sum-ii)|35%|Medium||
+|114|[Flatten Binary Tree to Linked List](./Algorithms/114.flatten-binary-tree-to-linked-list)|36%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|115|[Distinct Subsequences](./Algorithms/115.distinct-subsequences)|32%|Hard|[❤](https://leetcode.com/list/oussv5j)|
+|118|[Pascal's Triangle](./Algorithms/118.pascals-triangle)|40%|Easy||
+|119|[Pascal's Triangle II](./Algorithms/119.pascals-triangle-ii)|38%|Easy||
+|120|[Triangle](./Algorithms/120.triangle)|34%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|121|[Best Time to Buy and Sell Stock](./Algorithms/121.best-time-to-buy-and-sell-stock)|42%|Easy||
+|122|[Best Time to Buy and Sell Stock II](./Algorithms/122.best-time-to-buy-and-sell-stock-ii)|47%|Easy||
+|123|[Best Time to Buy and Sell Stock III](./Algorithms/123.best-time-to-buy-and-sell-stock-iii)|30%|Hard||
+|124|[Binary Tree Maximum Path Sum](./Algorithms/124.binary-tree-maximum-path-sum)|27%|Hard|[❤](https://leetcode.com/list/oussv5j)|
+|125|[Valid Palindrome](./Algorithms/125.valid-palindrome)|26%|Easy||
+|126|[Word Ladder II](./Algorithms/126.word-ladder-ii)|14%|Hard|[❤](https://leetcode.com/list/oussv5j)|
+|127|[Word Ladder](./Algorithms/127.word-ladder)|20%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|128|[Longest Consecutive Sequence](./Algorithms/128.longest-consecutive-sequence)|38%|Hard||
+|129|[Sum Root to Leaf Numbers](./Algorithms/129.sum-root-to-leaf-numbers)|37%|Medium||
+|130|[Surrounded Regions](./Algorithms/130.surrounded-regions)|19%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|131|[Palindrome Partitioning](./Algorithms/131.palindrome-partitioning)|35%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|132|[Palindrome Partitioning II](./Algorithms/132.palindrome-partitioning-ii)|24%|Hard|[❤](https://leetcode.com/list/oussv5j)|
+|134|[Gas Station](./Algorithms/134.gas-station)|29%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|135|[Candy](./Algorithms/135.candy)|25%|Hard||
+|136|[Single Number](./Algorithms/136.single-number)|55%|Easy||
+|137|[Single Number II](./Algorithms/137.single-number-ii)|42%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|139|[Word Break](./Algorithms/139.word-break)|31%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|140|[Word Break II](./Algorithms/140.word-break-ii)|24%|Hard|[❤](https://leetcode.com/list/oussv5j)|
+|143|[Reorder List](./Algorithms/143.reorder-list)|26%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|144|[Binary Tree Preorder Traversal](./Algorithms/144.binary-tree-preorder-traversal)|46%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|145|[Binary Tree Postorder Traversal](./Algorithms/145.binary-tree-postorder-traversal)|42%|Hard||
+|146|[LRU Cache](./Algorithms/146.lru-cache)|19%|Hard|[❤](https://leetcode.com/list/oussv5j)|
+|147|[Insertion Sort List](./Algorithms/147.insertion-sort-list)|33%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|148|[Sort List](./Algorithms/148.sort-list)|29%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|149|[Max Points on a Line](./Algorithms/149.max-points-on-a-line)|15%|Hard|[❤](https://leetcode.com/list/oussv5j)|
+|150|[Evaluate Reverse Polish Notation](./Algorithms/150.evaluate-reverse-polish-notation)|28%|Medium||
+|152|[Maximum Product Subarray](./Algorithms/152.maximum-product-subarray)|26%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|153|[Find Minimum in Rotated Sorted Array](./Algorithms/153.find-minimum-in-rotated-sorted-array)|40%|Medium||
+|154|[Find Minimum in Rotated Sorted Array II](./Algorithms/154.find-minimum-in-rotated-sorted-array-ii)|37%|Hard||
+|155|[Min Stack](./Algorithms/155.min-stack)|31%|Easy||
+|162|[Find Peak Element](./Algorithms/162.find-peak-element)|38%|Medium||
+|164|[Maximum Gap](./Algorithms/164.maximum-gap)|30%|Hard||
+|165|[Compare Version Numbers](./Algorithms/165.compare-version-numbers)|20%|Medium||
+|166|[Fraction to Recurring Decimal](./Algorithms/166.fraction-to-recurring-decimal)|18%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|167|[Two Sum II - Input array is sorted](./Algorithms/167.two-sum-ii-input-array-is-sorted)|47%|Easy||
+|168|[Excel Sheet Column Title](./Algorithms/168.excel-sheet-column-title)|27%|Easy|[❤](https://leetcode.com/list/oussv5j)|
+|169|[Majority Element](./Algorithms/169.majority-element)|48%|Easy|[❤](https://leetcode.com/list/oussv5j)|
+|171|[Excel Sheet Column Number](./Algorithms/171.excel-sheet-column-number)|48%|Easy||
+|172|[Factorial Trailing Zeroes](./Algorithms/172.factorial-trailing-zeroes)|36%|Easy||
+|174|[Dungeon Game](./Algorithms/174.dungeon-game)|24%|Hard|[❤](https://leetcode.com/list/oussv5j)|
+|179|[Largest Number](./Algorithms/179.largest-number)|23%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|187|[Repeated DNA Sequences](./Algorithms/187.repeated-dna-sequences)|33%|Medium||
+|188|[Best Time to Buy and Sell Stock IV](./Algorithms/188.best-time-to-buy-and-sell-stock-iv)|24%|Hard|[❤](https://leetcode.com/list/oussv5j)|
+|189|[Rotate Array](./Algorithms/189.rotate-array)|25%|Easy||
+|198|[House Robber](./Algorithms/198.house-robber)|39%|Easy|[❤](https://leetcode.com/list/oussv5j)|
+|199|[Binary Tree Right Side View](./Algorithms/199.binary-tree-right-side-view)|42%|Medium||
+|200|[Number of Islands](./Algorithms/200.number-of-islands)|36%|Medium||
+|201|[Bitwise AND of Numbers Range](./Algorithms/201.bitwise-and-of-numbers-range)|34%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|202|[Happy Number](./Algorithms/202.happy-number)|41%|Easy||
+|203|[Remove Linked List Elements](./Algorithms/203.remove-linked-list-elements)|33%|Easy||
+|204|[Count Primes](./Algorithms/204.count-primes)|26%|Easy|[❤](https://leetcode.com/list/oussv5j)|
+|205|[Isomorphic Strings](./Algorithms/205.isomorphic-strings)|34%|Easy|[❤](https://leetcode.com/list/oussv5j)|
+|206|[Reverse Linked List](./Algorithms/206.reverse-linked-list)|46%|Easy||
+|207|[Course Schedule](./Algorithms/207.course-schedule)|33%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|208|[Implement Trie (Prefix Tree)](./Algorithms/208.implement-trie-prefix-tree)|30%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|209|[Minimum Size Subarray Sum](./Algorithms/209.minimum-size-subarray-sum)|32%|Medium||
+|210|[Course Schedule II](./Algorithms/210.course-schedule-ii)|30%|Medium||
+|211|[Add and Search Word - Data structure design](./Algorithms/211.add-and-search-word-data-structure-design)|25%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|212|[Word Search II](./Algorithms/212.word-search-ii)|24%|Hard|[❤](https://leetcode.com/list/oussv5j)|
+|213|[House Robber II](./Algorithms/213.house-robber-ii)|34%|Medium||
+|214|[Shortest Palindrome](./Algorithms/214.shortest-palindrome)|25%|Hard|[❤](https://leetcode.com/list/oussv5j)|
+|215|[Kth Largest Element in an Array](./Algorithms/215.kth-largest-element-in-an-array)|40%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|216|[Combination Sum III](./Algorithms/216.combination-sum-iii)|47%|Medium||
+|217|[Contains Duplicate](./Algorithms/217.contains-duplicate)|47%|Easy||
+|218|[The Skyline Problem](./Algorithms/218.the-skyline-problem)|29%|Hard|[❤](https://leetcode.com/list/oussv5j)|
+|219|[Contains Duplicate II](./Algorithms/219.contains-duplicate-ii)|32%|Easy||
+|220|[Contains Duplicate III](./Algorithms/220.contains-duplicate-iii)|18%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|221|[Maximal Square](./Algorithms/221.maximal-square)|30%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|223|[Rectangle Area](./Algorithms/223.rectangle-area)|33%|Medium||
+|224|[Basic Calculator](./Algorithms/224.basic-calculator)|28%|Hard||
+|225|[Implement Stack using Queues](./Algorithms/225.implement-stack-using-queues)|34%|Easy||
+|226|[Invert Binary Tree](./Algorithms/226.invert-binary-tree)|53%|Easy||
+|227|[Basic Calculator II](./Algorithms/227.basic-calculator-ii)|30%|Medium||
+|228|[Summary Ranges](./Algorithms/228.summary-ranges)|32%|Medium||
+|229|[Majority Element II](./Algorithms/229.majority-element-ii)|29%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|230|[Kth Smallest Element in a BST](./Algorithms/230.kth-smallest-element-in-a-bst)|45%|Medium||
+|231|[Power of Two](./Algorithms/231.power-of-two)|40%|Easy||
+|232|[Implement Queue using Stacks](./Algorithms/232.implement-queue-using-stacks)|38%|Easy||
+|233|[Number of Digit One](./Algorithms/233.number-of-digit-one)|29%|Hard|[❤](https://leetcode.com/list/oussv5j)|
+|234|[Palindrome Linked List](./Algorithms/234.palindrome-linked-list)|33%|Easy||
+|238|[Product of Array Except Self](./Algorithms/238.product-of-array-except-self)|50%|Medium||
+|239|[Sliding Window Maximum](./Algorithms/239.sliding-window-maximum)|34%|Hard|[❤](https://leetcode.com/list/oussv5j)|
+|240|[Search a 2D Matrix II](./Algorithms/240.search-a-2d-matrix-ii)|39%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|241|[Different Ways to Add Parentheses](./Algorithms/241.different-ways-to-add-parentheses)|46%|Medium||
+|242|[Valid Anagram](./Algorithms/242.valid-anagram)|47%|Easy||
+|257|[Binary Tree Paths](./Algorithms/257.binary-tree-paths)|41%|Easy||
+|258|[Add Digits](./Algorithms/258.add-digits)|51%|Easy||
+|260|[Single Number III](./Algorithms/260.single-number-iii)|53%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|263|[Ugly Number](./Algorithms/263.ugly-number)|39%|Easy||
+|264|[Ugly Number II](./Algorithms/264.ugly-number-ii)|33%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|268|[Missing Number](./Algorithms/268.missing-number)|45%|Easy||
+|273|[Integer to English Words](./Algorithms/273.integer-to-english-words)|22%|Hard|[❤](https://leetcode.com/list/oussv5j)|
+|274|[H-Index](./Algorithms/274.h-index)|33%|Medium||
+|275|[H-Index II](./Algorithms/275.h-index-ii)|34%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|279|[Perfect Squares](./Algorithms/279.perfect-squares)|37%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|282|[Expression Add Operators](./Algorithms/282.expression-add-operators)|30%|Hard|[❤](https://leetcode.com/list/oussv5j)|
+|283|[Move Zeroes](./Algorithms/283.move-zeroes)|51%|Easy||
+|287|[Find the Duplicate Number](./Algorithms/287.find-the-duplicate-number)|44%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|289|[Game of Life](./Algorithms/289.game-of-life)|37%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|290|[Word Pattern](./Algorithms/290.word-pattern)|33%|Easy||
+|292|[Nim Game](./Algorithms/292.nim-game)|55%|Easy|[❤](https://leetcode.com/list/oussv5j)|
+|295|[Find Median from Data Stream](./Algorithms/295.find-median-from-data-stream)|29%|Hard|[❤](https://leetcode.com/list/oussv5j)|
+|299|[Bulls and Cows](./Algorithms/299.bulls-and-cows)|35%|Medium||
+|300|[Longest Increasing Subsequence](./Algorithms/300.longest-increasing-subsequence)|38%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|301|[Remove Invalid Parentheses](./Algorithms/301.remove-invalid-parentheses)|35%|Hard|[❤](https://leetcode.com/list/oussv5j)|
+|303|[Range Sum Query - Immutable](./Algorithms/303.range-sum-query-immutable)|32%|Easy||
+|304|[Range Sum Query 2D - Immutable](./Algorithms/304.range-sum-query-2d-immutable)|27%|Medium||
+|306|[Additive Number](./Algorithms/306.additive-number)|27%|Medium||
+|307|[Range Sum Query - Mutable](./Algorithms/307.range-sum-query-mutable)|22%|Medium||
+|309|[Best Time to Buy and Sell Stock with Cooldown](./Algorithms/309.best-time-to-buy-and-sell-stock-with-cooldown)|41%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|310|[Minimum Height Trees](./Algorithms/310.minimum-height-trees)|28%|Medium||
+|312|[Burst Balloons](./Algorithms/312.burst-balloons)|43%|Hard|[❤](https://leetcode.com/list/oussv5j)|
+|313|[Super Ugly Number](./Algorithms/313.super-ugly-number)|38%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|315|[Count of Smaller Numbers After Self](./Algorithms/315.count-of-smaller-numbers-after-self)|34%|Hard|[❤](https://leetcode.com/list/oussv5j)|
+|316|[Remove Duplicate Letters](./Algorithms/316.remove-duplicate-letters)|30%|Hard|[❤](https://leetcode.com/list/oussv5j)|
+|318|[Maximum Product of Word Lengths](./Algorithms/318.maximum-product-of-word-lengths)|45%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|319|[Bulb Switcher](./Algorithms/319.bulb-switcher)|42%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|321|[Create Maximum Number](./Algorithms/321.create-maximum-number)|24%|Hard|[❤](https://leetcode.com/list/oussv5j)|
+|322|[Coin Change](./Algorithms/322.coin-change)|26%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|324|[Wiggle Sort II](./Algorithms/324.wiggle-sort-ii)|26%|Medium||
+|326|[Power of Three](./Algorithms/326.power-of-three)|40%|Easy|[❤](https://leetcode.com/list/oussv5j)|
+|327|[Count of Range Sum](./Algorithms/327.count-of-range-sum)|30%|Hard|[❤](https://leetcode.com/list/oussv5j)|
+|328|[Odd Even Linked List](./Algorithms/328.odd-even-linked-list)|44%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|329|[Longest Increasing Path in a Matrix](./Algorithms/329.longest-increasing-path-in-a-matrix)|37%|Hard|[❤](https://leetcode.com/list/oussv5j)|
+|330|[Patching Array](./Algorithms/330.patching-array)|32%|Hard||
+|331|[Verify Preorder Serialization of a Binary Tree](./Algorithms/331.verify-preorder-serialization-of-a-binary-tree)|37%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|332|[Reconstruct Itinerary](./Algorithms/332.reconstruct-itinerary)|29%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|334|[Increasing Triplet Subsequence](./Algorithms/334.increasing-triplet-subsequence)|39%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|335|[Self Crossing](./Algorithms/335.self-crossing)|26%|Hard||
+|336|[Palindrome Pairs](./Algorithms/336.palindrome-pairs)|27%|Hard|[❤](https://leetcode.com/list/oussv5j)|
+|337|[House Robber III](./Algorithms/337.house-robber-iii)|44%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|338|[Counting Bits](./Algorithms/338.counting-bits)|62%|Medium||
+|342|[Power of Four](./Algorithms/342.power-of-four)|39%|Easy||
+|343|[Integer Break](./Algorithms/343.integer-break)|46%|Medium||
+|344|[Reverse String](./Algorithms/344.reverse-string)|60%|Easy||
+|345|[Reverse Vowels of a String](./Algorithms/345.reverse-vowels-of-a-string)|39%|Easy||
+|347|[Top K Frequent Elements](./Algorithms/347.top-k-frequent-elements)|49%|Medium||
+|349|[Intersection of Two Arrays](./Algorithms/349.intersection-of-two-arrays)|48%|Easy||
+|350|[Intersection of Two Arrays II](./Algorithms/350.intersection-of-two-arrays-ii)|44%|Easy|[❤](https://leetcode.com/list/oussv5j)|
+|352|[Data Stream as Disjoint Intervals](./Algorithms/352.data-stream-as-disjoint-intervals)|41%|Hard||
+|354|[Russian Doll Envelopes](./Algorithms/354.russian-doll-envelopes)|32%|Hard|[❤](https://leetcode.com/list/oussv5j)|
+|355|[Design Twitter](./Algorithms/355.design-twitter)|25%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|357|[Count Numbers with Unique Digits](./Algorithms/357.count-numbers-with-unique-digits)|46%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|363|[Max Sum of Rectangle No Larger Than K](./Algorithms/363.max-sum-of-rectangle-no-larger-than-k)|33%|Hard|[❤](https://leetcode.com/list/oussv5j)|
+|365|[Water and Jug Problem](./Algorithms/365.water-and-jug-problem)|28%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|367|[Valid Perfect Square](./Algorithms/367.valid-perfect-square)|38%|Easy||
+|368|[Largest Divisible Subset](./Algorithms/368.largest-divisible-subset)|33%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|371|[Sum of Two Integers](./Algorithms/371.sum-of-two-integers)|50%|Easy|[❤](https://leetcode.com/list/oussv5j)|
+|372|[Super Pow](./Algorithms/372.super-pow)|34%|Medium||
+|373|[Find K Pairs with Smallest Sums](./Algorithms/373.find-k-pairs-with-smallest-sums)|31%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|375|[Guess Number Higher or Lower II](./Algorithms/375.guess-number-higher-or-lower-ii)|36%|Medium||
+|376|[Wiggle Subsequence](./Algorithms/376.wiggle-subsequence)|36%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|377|[Combination Sum IV](./Algorithms/377.combination-sum-iv)|42%|Medium||
+|378|[Kth Smallest Element in a Sorted Matrix](./Algorithms/378.kth-smallest-element-in-a-sorted-matrix)|45%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|380|[Insert Delete GetRandom O(1)](./Algorithms/380.insert-delete-getrandom-o1)|39%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|381|[Insert Delete GetRandom O(1) - Duplicates allowed](./Algorithms/381.insert-delete-getrandom-o1-duplicates-allowed)|29%|Hard|[❤](https://leetcode.com/list/oussv5j)|
+|382|[Linked List Random Node](./Algorithms/382.linked-list-random-node)|47%|Medium||
+|383|[Ransom Note](./Algorithms/383.ransom-note)|47%|Easy||
+|384|[Shuffle an Array](./Algorithms/384.shuffle-an-array)|47%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|385|[Mini Parser](./Algorithms/385.mini-parser)|30%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|387|[First Unique Character in a String](./Algorithms/387.first-unique-character-in-a-string)|47%|Easy||
+|388|[Longest Absolute File Path](./Algorithms/388.longest-absolute-file-path)|37%|Medium||
+|389|[Find the Difference](./Algorithms/389.find-the-difference)|51%|Easy||
+|390|[Elimination Game](./Algorithms/390.elimination-game)|42%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|391|[Perfect Rectangle](./Algorithms/391.perfect-rectangle)|27%|Hard||
+|392|[Is Subsequence](./Algorithms/392.is-subsequence)|44%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|393|[UTF-8 Validation](./Algorithms/393.utf-8-validation)|34%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|394|[Decode String](./Algorithms/394.decode-string)|42%|Medium||
+|395|[Longest Substring with At Least K Repeating Characters](./Algorithms/395.longest-substring-with-at-least-k-repeating-characters)|35%|Medium||
+|396|[Rotate Function](./Algorithms/396.rotate-function)|33%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|397|[Integer Replacement](./Algorithms/397.integer-replacement)|30%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|398|[Random Pick Index](./Algorithms/398.random-pick-index)|44%|Medium||
+|399|[Evaluate Division](./Algorithms/399.evaluate-division)|42%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|400|[Nth Digit](./Algorithms/400.nth-digit)|30%|Easy|[❤](https://leetcode.com/list/oussv5j)|
+|401|[Binary Watch](./Algorithms/401.binary-watch)|44%|Easy||
+|402|[Remove K Digits](./Algorithms/402.remove-k-digits)|25%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|403|[Frog Jump](./Algorithms/403.frog-jump)|32%|Hard|[❤](https://leetcode.com/list/oussv5j)|
+|404|[Sum of Left Leaves](./Algorithms/404.sum-of-left-leaves)|47%|Easy||
+|405|[Convert a Number to Hexadecimal](./Algorithms/405.convert-a-number-to-hexadecimal)|41%|Easy||
+|406|[Queue Reconstruction by Height](./Algorithms/406.queue-reconstruction-by-height)|56%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|407|[Trapping Rain Water II](./Algorithms/407.trapping-rain-water-ii)|37%|Hard||
+|409|[Longest Palindrome](./Algorithms/409.longest-palindrome)|45%|Easy||
+|410|[Split Array Largest Sum](./Algorithms/410.split-array-largest-sum)|39%|Hard||
+|412|[Fizz Buzz](./Algorithms/412.fizz-buzz)|58%|Easy||
+|413|[Arithmetic Slices](./Algorithms/413.arithmetic-slices)|54%|Medium||
+|414|[Third Maximum Number](./Algorithms/414.third-maximum-number)|28%|Easy||
+|415|[Add Strings](./Algorithms/415.add-strings)|41%|Easy||
+|416|[Partition Equal Subset Sum](./Algorithms/416.partition-equal-subset-sum)|38%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|417|[Pacific Atlantic Water Flow](./Algorithms/417.pacific-atlantic-water-flow)|34%|Medium||
+|419|[Battleships in a Board](./Algorithms/419.battleships-in-a-board)|63%|Medium||
+|420|[Strong Password Checker](./Algorithms/420.strong-password-checker)|19%|Hard|[❤](https://leetcode.com/list/oussv5j)|
+|421|[Maximum XOR of Two Numbers in an Array](./Algorithms/421.maximum-xor-of-two-numbers-in-an-array)|47%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|423|[Reconstruct Original Digits from English](./Algorithms/423.reconstruct-original-digits-from-english)|44%|Medium||
+|424|[Longest Repeating Character Replacement](./Algorithms/424.longest-repeating-character-replacement)|42%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|432|[All O`one Data Structure](./Algorithms/432.all-oone-data-structure)|27%|Hard|[❤](https://leetcode.com/list/oussv5j)|
+|434|[Number of Segments in a String](./Algorithms/434.number-of-segments-in-a-string)|36%|Easy||
+|435|[Non-overlapping Intervals](./Algorithms/435.non-overlapping-intervals)|41%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|436|[Find Right Interval](./Algorithms/436.find-right-interval)|41%|Medium||
+|437|[Path Sum III](./Algorithms/437.path-sum-iii)|40%|Easy|[❤](https://leetcode.com/list/oussv5j)|
+|438|[Find All Anagrams in a String](./Algorithms/438.find-all-anagrams-in-a-string)|33%|Easy||
+|440|[K-th Smallest in Lexicographical Order](./Algorithms/440.k-th-smallest-in-lexicographical-order)|25%|Hard|[❤](https://leetcode.com/list/oussv5j)|
+|441|[Arranging Coins](./Algorithms/441.arranging-coins)|36%|Easy||
+|442|[Find All Duplicates in an Array](./Algorithms/442.find-all-duplicates-in-an-array)|56%|Medium||
+|443|[String Compression](./Algorithms/443.string-compression)|35%|Easy|[❤](https://leetcode.com/list/oussv5j)|
+|445|[Add Two Numbers II](./Algorithms/445.add-two-numbers-ii)|46%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|446|[Arithmetic Slices II - Subsequence](./Algorithms/446.arithmetic-slices-ii-subsequence)|28%|Hard|[❤](https://leetcode.com/list/oussv5j)|
+|447|[Number of Boomerangs](./Algorithms/447.number-of-boomerangs)|46%|Easy||
+|448|[Find All Numbers Disappeared in an Array](./Algorithms/448.find-all-numbers-disappeared-in-an-array)|51%|Easy||
+|450|[Delete Node in a BST](./Algorithms/450.delete-node-in-a-bst)|37%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|451|[Sort Characters By Frequency](./Algorithms/451.sort-characters-by-frequency)|51%|Medium||
+|452|[Minimum Number of Arrows to Burst Balloons](./Algorithms/452.minimum-number-of-arrows-to-burst-balloons)|44%|Medium||
+|453|[Minimum Moves to Equal Array Elements](./Algorithms/453.minimum-moves-to-equal-array-elements)|48%|Easy||
+|454|[4Sum II](./Algorithms/454.4sum-ii)|47%|Medium||
+|455|[Assign Cookies](./Algorithms/455.assign-cookies)|47%|Easy||
+|456|[132 Pattern](./Algorithms/456.132-pattern)|27%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|459|[Repeated Substring Pattern](./Algorithms/459.repeated-substring-pattern)|38%|Easy|[❤](https://leetcode.com/list/oussv5j)|
+|460|[LFU Cache](./Algorithms/460.lfu-cache)|25%|Hard||
+|461|[Hamming Distance](./Algorithms/461.hamming-distance)|69%|Easy||
+|462|[Minimum Moves to Equal Array Elements II](./Algorithms/462.minimum-moves-to-equal-array-elements-ii)|51%|Medium||
+|463|[Island Perimeter](./Algorithms/463.island-perimeter)|57%|Easy||
+|464|[Can I Win](./Algorithms/464.can-i-win)|25%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|466|[Count The Repetitions](./Algorithms/466.count-the-repetitions)|27%|Hard|[❤](https://leetcode.com/list/oussv5j)|
+|467|[Unique Substrings in Wraparound String](./Algorithms/467.unique-substrings-in-wraparound-string)|33%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|468|[Validate IP Address](./Algorithms/468.validate-ip-address)|20%|Medium||
+|472|[Concatenated Words](./Algorithms/472.concatenated-words)|30%|Hard||
+|473|[Matchsticks to Square](./Algorithms/473.matchsticks-to-square)|35%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|474|[Ones and Zeroes](./Algorithms/474.ones-and-zeroes)|38%|Medium||
+|475|[Heaters](./Algorithms/475.heaters)|29%|Easy||
+|476|[Number Complement](./Algorithms/476.number-complement)|61%|Easy||
+|477|[Total Hamming Distance](./Algorithms/477.total-hamming-distance)|47%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|479|[Largest Palindrome Product](./Algorithms/479.largest-palindrome-product)|25%|Easy||
+|480|[Sliding Window Median](./Algorithms/480.sliding-window-median)|30%|Hard|[❤](https://leetcode.com/list/oussv5j)|
+|481|[Magical String](./Algorithms/481.magical-string)|45%|Medium||
+|482|[License Key Formatting](./Algorithms/482.license-key-formatting)|39%|Easy||
+|483|[Smallest Good Base](./Algorithms/483.smallest-good-base)|33%|Hard|[❤](https://leetcode.com/list/oussv5j)|
+|485|[Max Consecutive Ones](./Algorithms/485.max-consecutive-ones)|53%|Easy||
+|486|[Predict the Winner](./Algorithms/486.predict-the-winner)|45%|Medium||
+|488|[Zuma Game](./Algorithms/488.zuma-game)|37%|Hard|[❤](https://leetcode.com/list/oussv5j)|
+|491|[Increasing Subsequences](./Algorithms/491.increasing-subsequences)|38%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|492|[Construct the Rectangle](./Algorithms/492.construct-the-rectangle)|48%|Easy|[❤](https://leetcode.com/list/oussv5j)|
+|493|[Reverse Pairs](./Algorithms/493.reverse-pairs)|20%|Hard||
+|494|[Target Sum](./Algorithms/494.target-sum)|43%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|495|[Teemo Attacking](./Algorithms/495.teemo-attacking)|51%|Medium||
+|496|[Next Greater Element I](./Algorithms/496.next-greater-element-i)|56%|Easy||
+|498|[Diagonal Traverse](./Algorithms/498.diagonal-traverse)|46%|Medium||
+|500|[Keyboard Row](./Algorithms/500.keyboard-row)|59%|Easy||
+|501|[Find Mode in Binary Search Tree](./Algorithms/501.find-mode-in-binary-search-tree)|37%|Easy|[❤](https://leetcode.com/list/oussv5j)|
+|502|[IPO](./Algorithms/502.ipo)|36%|Hard||
+|503|[Next Greater Element II](./Algorithms/503.next-greater-element-ii)|48%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|504|[Base 7](./Algorithms/504.base-7)|43%|Easy||
+|506|[Relative Ranks](./Algorithms/506.relative-ranks)|46%|Easy||
+|507|[Perfect Number](./Algorithms/507.perfect-number)|32%|Easy||
+|508|[Most Frequent Subtree Sum](./Algorithms/508.most-frequent-subtree-sum)|52%|Medium||
+|513|[Find Bottom Left Tree Value](./Algorithms/513.find-bottom-left-tree-value)|56%|Medium||
+|514|[Freedom Trail](./Algorithms/514.freedom-trail)|39%|Hard||
+|515|[Find Largest Value in Each Tree Row](./Algorithms/515.find-largest-value-in-each-tree-row)|55%|Medium||
+|516|[Longest Palindromic Subsequence](./Algorithms/516.longest-palindromic-subsequence)|42%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|517|[Super Washing Machines](./Algorithms/517.super-washing-machines)|36%|Hard|[❤](https://leetcode.com/list/oussv5j)|
+|520|[Detect Capital](./Algorithms/520.detect-capital)|51%|Easy||
+|521|[Longest Uncommon Subsequence I](./Algorithms/521.longest-uncommon-subsequence-i)|55%|Easy||
+|522|[Longest Uncommon Subsequence II](./Algorithms/522.longest-uncommon-subsequence-ii)|31%|Medium||
+|523|[Continuous Subarray Sum](./Algorithms/523.continuous-subarray-sum)|23%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|524|[Longest Word in Dictionary through Deleting](./Algorithms/524.longest-word-in-dictionary-through-deleting)|43%|Medium||
+|525|[Contiguous Array](./Algorithms/525.contiguous-array)|41%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|526|[Beautiful Arrangement](./Algorithms/526.beautiful-arrangement)|53%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|529|[Minesweeper](./Algorithms/529.minesweeper)|49%|Medium||
+|530|[Minimum Absolute Difference in BST](./Algorithms/530.minimum-absolute-difference-in-bst)|47%|Easy|[❤](https://leetcode.com/list/oussv5j)|
+|532|[K-diff Pairs in an Array](./Algorithms/532.k-diff-pairs-in-an-array)|28%|Easy||
+|537|[Complex Number Multiplication](./Algorithms/537.complex-number-multiplication)|63%|Medium||
+|538|[Convert BST to Greater Tree](./Algorithms/538.convert-bst-to-greater-tree)|48%|Easy||
+|539|[Minimum Time Difference](./Algorithms/539.minimum-time-difference)|46%|Medium||
+|540|[Single Element in a Sorted Array](./Algorithms/540.single-element-in-a-sorted-array)|55%|Medium||
+|541|[Reverse String II](./Algorithms/541.reverse-string-ii)|43%|Easy||
+|542|[01 Matrix](./Algorithms/542.01-matrix)|33%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|543|[Diameter of Binary Tree](./Algorithms/543.diameter-of-binary-tree)|44%|Easy||
+|546|[Remove Boxes](./Algorithms/546.remove-boxes)|35%|Hard|[❤](https://leetcode.com/list/oussv5j)|
+|547|[Friend Circles](./Algorithms/547.friend-circles)|49%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|551|[Student Attendance Record I](./Algorithms/551.student-attendance-record-i)|44%|Easy||
+|552|[Student Attendance Record II](./Algorithms/552.student-attendance-record-ii)|31%|Hard|[❤](https://leetcode.com/list/oussv5j)|
+|553|[Optimal Division](./Algorithms/553.optimal-division)|55%|Medium||
+|554|[Brick Wall](./Algorithms/554.brick-wall)|46%|Medium||
+|556|[Next Greater Element III](./Algorithms/556.next-greater-element-iii)|28%|Medium||
+|557|[Reverse Words in a String III](./Algorithms/557.reverse-words-in-a-string-iii)|60%|Easy||
+|560|[Subarray Sum Equals K](./Algorithms/560.subarray-sum-equals-k)|39%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|561|[Array Partition I](./Algorithms/561.array-partition-i)|66%|Easy||
+|563|[Binary Tree Tilt](./Algorithms/563.binary-tree-tilt)|47%|Easy||
+|564|[Find the Closest Palindrome](./Algorithms/564.find-the-closest-palindrome)|17%|Hard||
+|565|[Array Nesting](./Algorithms/565.array-nesting)|49%|Medium||
+|566|[Reshape the Matrix](./Algorithms/566.reshape-the-matrix)|57%|Easy||
+|567|[Permutation in String](./Algorithms/567.permutation-in-string)|36%|Medium||
+|572|[Subtree of Another Tree](./Algorithms/572.subtree-of-another-tree)|40%|Easy|[❤](https://leetcode.com/list/oussv5j)|
+|575|[Distribute Candies](./Algorithms/575.distribute-candies)|57%|Easy||
+|576|[Out of Boundary Paths](./Algorithms/576.out-of-boundary-paths)|30%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|581|[Shortest Unsorted Continuous Subarray](./Algorithms/581.shortest-unsorted-continuous-subarray)|29%|Easy|[❤](https://leetcode.com/list/oussv5j)|
+|583|[Delete Operation for Two Strings](./Algorithms/583.delete-operation-for-two-strings)|44%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|587|[Erect the Fence](./Algorithms/587.erect-the-fence)|33%|Hard|[❤](https://leetcode.com/list/oussv5j)|
+|591|[Tag Validator](./Algorithms/591.tag-validator)|31%|Hard|[❤](https://leetcode.com/list/oussv5j)|
+|592|[Fraction Addition and Subtraction](./Algorithms/592.fraction-addition-and-subtraction)|46%|Medium||
+|593|[Valid Square](./Algorithms/593.valid-square)|39%|Medium||
+|594|[Longest Harmonious Subsequence](./Algorithms/594.longest-harmonious-subsequence)|40%|Easy||
+|598|[Range Addition II](./Algorithms/598.range-addition-ii)|48%|Easy||
+|599|[Minimum Index Sum of Two Lists](./Algorithms/599.minimum-index-sum-of-two-lists)|46%|Easy||
+|600|[Non-negative Integers without Consecutive Ones](./Algorithms/600.non-negative-integers-without-consecutive-ones)|31%|Hard|[❤](https://leetcode.com/list/oussv5j)|
+|605|[Can Place Flowers](./Algorithms/605.can-place-flowers)|30%|Easy|[❤](https://leetcode.com/list/oussv5j)|
+|606|[Construct String from Binary Tree](./Algorithms/606.construct-string-from-binary-tree)|49%|Easy||
+|609|[Find Duplicate File in System](./Algorithms/609.find-duplicate-file-in-system)|52%|Medium||
+|611|[Valid Triangle Number](./Algorithms/611.valid-triangle-number)|42%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|617|[Merge Two Binary Trees](./Algorithms/617.merge-two-binary-trees)|67%|Easy||
+|621|[Task Scheduler](./Algorithms/621.task-scheduler)|42%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|623|[Add One Row to Tree](./Algorithms/623.add-one-row-to-tree)|46%|Medium||
+|628|[Maximum Product of Three Numbers](./Algorithms/628.maximum-product-of-three-numbers)|44%|Easy|[❤](https://leetcode.com/list/oussv5j)|
+|629|[K Inverse Pairs Array](./Algorithms/629.k-inverse-pairs-array)|27%|Hard||
+|630|[Course Schedule III](./Algorithms/630.course-schedule-iii)|29%|Hard|[❤](https://leetcode.com/list/oussv5j)|
+|632|[Smallest Range](./Algorithms/632.smallest-range)|41%|Hard||
+|633|[Sum of Square Numbers](./Algorithms/633.sum-of-square-numbers)|32%|Easy||
+|636|[Exclusive Time of Functions](./Algorithms/636.exclusive-time-of-functions)|44%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|637|[Average of Levels in Binary Tree](./Algorithms/637.average-of-levels-in-binary-tree)|55%|Easy||
+|638|[Shopping Offers](./Algorithms/638.shopping-offers)|45%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|639|[Decode Ways II](./Algorithms/639.decode-ways-ii)|24%|Hard||
+|640|[Solve the Equation](./Algorithms/640.solve-the-equation)|38%|Medium||
+|643|[Maximum Average Subarray I](./Algorithms/643.maximum-average-subarray-i)|37%|Easy||
+|645|[Set Mismatch](./Algorithms/645.set-mismatch)|39%|Easy|[❤](https://leetcode.com/list/oussv5j)|
+|646|[Maximum Length of Pair Chain](./Algorithms/646.maximum-length-of-pair-chain)|47%|Medium||
+|647|[Palindromic Substrings](./Algorithms/647.palindromic-substrings)|54%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|648|[Replace Words](./Algorithms/648.replace-words)|47%|Medium||
+|649|[Dota2 Senate](./Algorithms/649.dota2-senate)|36%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|650|[2 Keys Keyboard](./Algorithms/650.2-keys-keyboard)|44%|Medium||
+|652|[Find Duplicate Subtrees](./Algorithms/652.find-duplicate-subtrees)|36%|Medium||
+|653|[Two Sum IV - Input is a BST](./Algorithms/653.two-sum-iv-input-is-a-bst)|49%|Easy||
+|654|[Maximum Binary Tree](./Algorithms/654.maximum-binary-tree)|69%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|655|[Print Binary Tree](./Algorithms/655.print-binary-tree)|49%|Medium||
+|657|[Judge Route Circle](./Algorithms/657.judge-route-circle)|68%|Easy||
+|658|[Find K Closest Elements](./Algorithms/658.find-k-closest-elements)|34%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|659|[Split Array into Consecutive Subsequences](./Algorithms/659.split-array-into-consecutive-subsequences)|36%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|661|[Image Smoother](./Algorithms/661.image-smoother)|46%|Easy||
+|662|[Maximum Width of Binary Tree](./Algorithms/662.maximum-width-of-binary-tree)|37%|Medium||
+|664|[Strange Printer](./Algorithms/664.strange-printer)|34%|Hard|[❤](https://leetcode.com/list/oussv5j)|
+|665|[Non-decreasing Array](./Algorithms/665.non-decreasing-array)|20%|Easy||
+|667|[Beautiful Arrangement II](./Algorithms/667.beautiful-arrangement-ii)|51%|Medium||
+|668|[Kth Smallest Number in Multiplication Table](./Algorithms/668.kth-smallest-number-in-multiplication-table)|40%|Hard||
+|669|[Trim a Binary Search Tree](./Algorithms/669.trim-a-binary-search-tree)|58%|Easy||
+|670|[Maximum Swap](./Algorithms/670.maximum-swap)|38%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|671|[Second Minimum Node In a Binary Tree](./Algorithms/671.second-minimum-node-in-a-binary-tree)|41%|Easy||
+|672|[Bulb Switcher II](./Algorithms/672.bulb-switcher-ii)|49%|Medium||
+|673|[Number of Longest Increasing Subsequence](./Algorithms/673.number-of-longest-increasing-subsequence)|31%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|674|[Longest Continuous Increasing Subsequence](./Algorithms/674.longest-continuous-increasing-subsequence)|42%|Easy||
+|675|[Cut Off Trees for Golf Event](./Algorithms/675.cut-off-trees-for-golf-event)|27%|Hard|[❤](https://leetcode.com/list/oussv5j)|
+|676|[Implement Magic Dictionary](./Algorithms/676.implement-magic-dictionary)|49%|Medium||
+|677|[Map Sum Pairs](./Algorithms/677.map-sum-pairs)|51%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|678|[Valid Parenthesis String](./Algorithms/678.valid-parenthesis-string)|29%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|679|[24 Game](./Algorithms/679.24-game)|38%|Hard|[❤](https://leetcode.com/list/oussv5j)|
+|680|[Valid Palindrome II](./Algorithms/680.valid-palindrome-ii)|32%|Easy||
+|682|[Baseball Game](./Algorithms/682.baseball-game)|58%|Easy||
+|684|[Redundant Connection](./Algorithms/684.redundant-connection)|43%|Medium||
+|685|[Redundant Connection II](./Algorithms/685.redundant-connection-ii)|27%|Hard|[❤](https://leetcode.com/list/oussv5j)|
+|686|[Repeated String Match](./Algorithms/686.repeated-string-match)|32%|Easy|[❤](https://leetcode.com/list/oussv5j)|
+|687|[Longest Univalue Path](./Algorithms/687.longest-univalue-path)|32%|Easy||
+|688|[Knight Probability in Chessboard](./Algorithms/688.knight-probability-in-chessboard)|39%|Medium||
+|689|[Maximum Sum of 3 Non-Overlapping Subarrays](./Algorithms/689.maximum-sum-of-3-non-overlapping-subarrays)|41%|Hard||
+|691|[Stickers to Spell Word](./Algorithms/691.stickers-to-spell-word)|34%|Hard|[❤](https://leetcode.com/list/oussv5j)|
+|692|[Top K Frequent Words](./Algorithms/692.top-k-frequent-words)|41%|Medium||
+|693|[Binary Number with Alternating Bits](./Algorithms/693.binary-number-with-alternating-bits)|55%|Easy||
+|695|[Max Area of Island](./Algorithms/695.max-area-of-island)|51%|Easy|[❤](https://leetcode.com/list/oussv5j)|
+|696|[Count Binary Substrings](./Algorithms/696.count-binary-substrings)|50%|Easy||
+|697|[Degree of an Array](./Algorithms/697.degree-of-an-array)|46%|Easy||
+|698|[Partition to K Equal Sum Subsets](./Algorithms/698.partition-to-k-equal-sum-subsets)|37%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|699|[Falling Squares](./Algorithms/699.falling-squares)|37%|Hard||
+|712|[Minimum ASCII Delete Sum for Two Strings](./Algorithms/712.minimum-ascii-delete-sum-for-two-strings)|51%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|713|[Subarray Product Less Than K](./Algorithms/713.subarray-product-less-than-k)|33%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|714|[Best Time to Buy and Sell Stock with Transaction Fee](./Algorithms/714.best-time-to-buy-and-sell-stock-with-transaction-fee)|45%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|715|[Range Module](./Algorithms/715.range-module)|31%|Hard||
+|717|[1-bit and 2-bit Characters](./Algorithms/717.1-bit-and-2-bit-characters)|49%|Easy||
+|718|[Maximum Length of Repeated Subarray](./Algorithms/718.maximum-length-of-repeated-subarray)|41%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|719|[Find K-th Smallest Pair Distance](./Algorithms/719.find-k-th-smallest-pair-distance)|27%|Hard|[❤](https://leetcode.com/list/oussv5j)|
+|720|[Longest Word in Dictionary](./Algorithms/720.longest-word-in-dictionary)|41%|Easy||
+|721|[Accounts Merge](./Algorithms/721.accounts-merge)|32%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|722|[Remove Comments](./Algorithms/722.remove-comments)|27%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|724|[Find Pivot Index](./Algorithms/724.find-pivot-index)|39%|Easy||
+|725|[Split Linked List in Parts](./Algorithms/725.split-linked-list-in-parts)|47%|Medium||
+|726|[Number of Atoms](./Algorithms/726.number-of-atoms)|43%|Hard|[❤](https://leetcode.com/list/oussv5j)|
+|728|[Self Dividing Numbers](./Algorithms/728.self-dividing-numbers)|66%|Easy||
+|729|[My Calendar I](./Algorithms/729.my-calendar-i)|42%|Medium||
+|730|[Count Different Palindromic Subsequences](./Algorithms/730.count-different-palindromic-subsequences)|34%|Hard|[❤](https://leetcode.com/list/oussv5j)|
+|731|[My Calendar II](./Algorithms/731.my-calendar-ii)|37%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|732|[My Calendar III](./Algorithms/732.my-calendar-iii)|50%|Hard||
+|733|[Flood Fill](./Algorithms/733.flood-fill)|47%|Easy||
+|735|[Asteroid Collision](./Algorithms/735.asteroid-collision)|37%|Medium||
+|736|[Parse Lisp Expression](./Algorithms/736.parse-lisp-expression)|42%|Hard|[❤](https://leetcode.com/list/oussv5j)|
+|738|[Monotone Increasing Digits](./Algorithms/738.monotone-increasing-digits)|40%|Medium||
+|739|[Daily Temperatures](./Algorithms/739.daily-temperatures)|52%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|740|[Delete and Earn](./Algorithms/740.delete-and-earn)|43%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|741|[Cherry Pickup](./Algorithms/741.cherry-pickup)|23%|Hard||
+|743|[Network Delay Time](./Algorithms/743.network-delay-time)|34%|Medium||
+|744|[Find Smallest Letter Greater Than Target](./Algorithms/744.find-smallest-letter-greater-than-target)|44%|Easy||
+|745|[Prefix and Suffix Search](./Algorithms/745.prefix-and-suffix-search)|25%|Hard||
+|746|[Min Cost Climbing Stairs](./Algorithms/746.min-cost-climbing-stairs)|43%|Easy||
+|747|[Largest Number At Least Twice of Others](./Algorithms/747.largest-number-at-least-twice-of-others)|41%|Easy||
+|748|[Shortest Completing Word](./Algorithms/748.shortest-completing-word)|51%|Medium||
+|749|[Contain Virus](./Algorithms/749.contain-virus)|39%|Hard||
+|752|[Open the Lock](./Algorithms/752.open-the-lock)|38%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|753|[Cracking the Safe](./Algorithms/753.cracking-the-safe)|39%|Hard|[❤](https://leetcode.com/list/oussv5j)|
+|754|[Reach a Number](./Algorithms/754.reach-a-number)|26%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|756|[Pyramid Transition Matrix](./Algorithms/756.pyramid-transition-matrix)|45%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|757|[Set Intersection Size At Least Two](./Algorithms/757.set-intersection-size-at-least-two)|34%|Hard||
+|761|[Special Binary String](./Algorithms/761.special-binary-string)|41%|Hard||
+|762|[Prime Number of Set Bits in Binary Representation](./Algorithms/762.prime-number-of-set-bits-in-binary-representation)|55%|Easy||
+|763|[Partition Labels](./Algorithms/763.partition-labels)|64%|Medium||
+|764|[Largest Plus Sign](./Algorithms/764.largest-plus-sign)|37%|Medium||
+|765|[Couples Holding Hands](./Algorithms/765.couples-holding-hands)|48%|Hard||
+|766|[Toeplitz Matrix](./Algorithms/766.toeplitz-matrix)|57%|Easy||
+|767|[Reorganize String](./Algorithms/767.reorganize-string)|35%|Medium||
+|768|[Max Chunks To Make Sorted II](./Algorithms/768.max-chunks-to-make-sorted-ii)|42%|Hard||
+|769|[Max Chunks To Make Sorted](./Algorithms/769.max-chunks-to-make-sorted)|47%|Medium||
+|770|[Basic Calculator IV](./Algorithms/770.basic-calculator-iv)|43%|Hard|[❤](https://leetcode.com/list/oussv5j)|
+|771|[Jewels and Stones](./Algorithms/771.jewels-and-stones)|82%|Easy||
+|773|[Sliding Puzzle](./Algorithms/773.sliding-puzzle)|47%|Hard||
+|775|[Global and Local Inversions](./Algorithms/775.global-and-local-inversions)|31%|Medium||
+|777|[Swap Adjacent in LR String](./Algorithms/777.swap-adjacent-in-lr-string)|27%|Medium||
+|778|[Swim in Rising Water](./Algorithms/778.swim-in-rising-water)|44%|Hard||
+|779|[K-th Symbol in Grammar](./Algorithms/779.k-th-symbol-in-grammar)|35%|Medium||
+|780|[Reaching Points](./Algorithms/780.reaching-points)|21%|Hard||
+|781|[Rabbits in Forest](./Algorithms/781.rabbits-in-forest)|49%|Medium||
+|782|[Transform to Chessboard](./Algorithms/782.transform-to-chessboard)|35%|Hard||
+|783|[Minimum Distance Between BST Nodes](./Algorithms/783.minimum-distance-between-bst-nodes)|47%|Easy||
+|784|[Letter Case Permutation](./Algorithms/784.letter-case-permutation)|52%|Easy|[❤](https://leetcode.com/list/oussv5j)|
+|785|[Is Graph Bipartite?](./Algorithms/785.is-graph-bipartite)|38%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|786|[K-th Smallest Prime Fraction](./Algorithms/786.k-th-smallest-prime-fraction)|29%|Hard|[❤](https://leetcode.com/list/oussv5j)|
+|787|[Cheapest Flights Within K Stops](./Algorithms/787.cheapest-flights-within-k-stops)|30%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|788|[Rotated Digits](./Algorithms/788.rotated-digits)|50%|Easy||
+|789|[Escape The Ghosts](./Algorithms/789.escape-the-ghosts)|47%|Medium||
+|790|[Domino and Tromino Tiling](./Algorithms/790.domino-and-tromino-tiling)|32%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|791|[Custom Sort String](./Algorithms/791.custom-sort-string)|60%|Medium||
+|792|[Number of Matching Subsequences](./Algorithms/792.number-of-matching-subsequences)|35%|Medium|[❤](https://leetcode.com/list/oussv5j)|
+|793| * Preimage Size of Factorial Zeroes Function|45%|Hard||
+|794| * Valid Tic-Tac-Toe State|27%|Medium||
+|795| * Number of Subarrays with Bounded Maximum|40%|Medium||
+|796| * Rotate String|54%|Easy||
+|797| * All Paths From Source to Target|69%|Medium||
+|798| * Smallest Rotation with Highest Score|31%|Hard||
+|799| * Champagne Tower|28%|Medium||
+|801| * Minimum Swaps To Make Sequences Increasing|23%|Medium||
+|802| * Find Eventual Safe States|35%|Medium||
+|803| * Bricks Falling When Hit|20%|Hard||
+|804| * Unique Morse Code Words|76%|Easy||
+|805| * Split Array With Same Average|19%|Hard||
+|806| * Number of Lines To Write String|64%|Easy||
+|807| * Max Increase to Keep City Skyline|82%|Medium||
+|808| * Soup Servings|30%|Medium||
+|809| * Expressive Words|34%|Medium||
+|810| * Chalkboard XOR Game|35%|Hard||
+|811| * Subdomain Visit Count|65%|Easy||
+|812| * Largest Triangle Area :new: |51%|Easy||
+|813| * Largest Sum of Averages :new: |37%|Medium||
+|814| * Binary Tree Pruning :new: |73%|Medium||
+|815| * Bus Routes :new: |30%|Hard||
+
+
+
+
+
+## 二.分类
+
+## Array
+| Title | Solution | Difficulty | Time | Space |
+| ----- | -------- | ---------- | ---- | ----- |
+[Max Consecutive Ones](https://leetcode.com/problems/max-consecutive-ones/)| [Swift](./Array/MaxConsecutiveOnes.swift)| Easy| O(n)| O(1)|
+[Heaters](https://leetcode.com/problems/heaters/)| [Swift](./Array/Heaters.swift)| Easy| O(nlogn)| O(1)|
+[Number of Boomerangs](https://leetcode.com/problems/number-of-boomerangs/)| [Swift](./Array/NumberBoomerangs.swift)| Easy| O(n ^ 2)| O(n)|
+[Island Perimeter](https://leetcode.com/problems/island-perimeter/)| [Swift](./Array/IslandPerimeter.swift)| Easy| O(nm)| O(1)|
+[Majority Element](https://leetcode.com/problems/majority-element/)| [Swift](./Array/MajorityElement.swift)| Easy| O(n)| O(1)|
+[Majority Element II](https://leetcode.com/problems/majority-element-ii/)| [Swift](./Array/MajorityElementII.swift)| Medium| O(n)| O(1)|
+[Intersection of Two Arrays](https://leetcode.com/problems/intersection-of-two-arrays/)| [Swift](./Array/IntersectionTwoArrays.swift)| Easy| O(n)| O(n)|
+[Intersection of Two Arrays II](https://leetcode.com/problems/intersection-of-two-arrays-ii/)| [Swift](./Array/IntersectionTwoArraysII.swift)| Easy| O(n)| O(n)|
+[Contains Duplicate](https://leetcode.com/problems/contains-duplicate/)| [Swift](./Array/ContainsDuplicate.swift)| Easy| O(n)| O(n)|
+[Contains Duplicate II](https://leetcode.com/problems/contains-duplicate-ii/)| [Swift](./Array/ContainsDuplicateII.swift)| Easy| O(n)| O(n)|
+[Remove Duplicates from Sorted Array](https://leetcode.com/problems/remove-duplicates-from-sorted-array/)| [Swift](./Array/RemoveDuplicatesFromSortedArray.swift)| Easy| O(n)| O(1)|
+[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)|
+[Move Zeroes](https://leetcode.com/problems/move-zeroes/)| [Swift](./Array/MoveZeroes.swift)| Easy| O(n)| O(1)|
+[Remove Element](https://leetcode.com/problems/remove-element/)| [Swift](./Array/RemoveElement.swift)| Easy| O(n)| O(1)|
+[Two Sum](https://leetcode.com/problems/two-sum/)| [Swift](./Array/TwoSum.swift)| Easy| O(n)| O(n)|
+[3Sum](https://leetcode.com/problems/3sum/)| [Swift](./Array/ThreeSum.swift)| Medium| O(n^2)| O(nC3)|
+[3Sum Closest](https://leetcode.com/problems/3sum-closest/)| [Swift](./Array/ThreeSum.swift)| Medium| O(n^2)| O(nC3)|
+[4Sum](https://leetcode.com/problems/4sum/)| [Swift](./Array/FourSum.swift)| Medium| O(n^3)| O(nC4)|
+[Summary Ranges](https://leetcode.com/problems/summary-ranges/)| [Swift](./Array/SummaryRanges.swift)| Medium| O(n)| O(n)|
+[Shortest Word Distance](https://leetcode.com/problems/shortest-word-distance/)| [Swift](./Array/ShortestWordDistance.swift)| Easy| O(n)| O(1)|
+[Shortest Word Distance III](https://leetcode.com/problems/shortest-word-distance-iii/)| [Swift](./Array/ShortestWordDistanceIII.swift)| Medium| O(n)| O(1)|
+[Minimum Size Subarray Sum](https://leetcode.com/problems/minimum-size-subarray-sum/)| [Swift](./Array/MinimumSizeSubarraySum.swift)| Medium| O(n)| O(1)|
+[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)|
+[Smallest Range](https://leetcode.com/problems/smallest-range/)| [Swift](./Array/SmallestRange.swift)| Hard | O(nm)| O(nm)|
+[Product of Array Except Self](https://leetcode.com/problems/product-of-array-except-self/)| [Swift](./Array/ProductExceptSelf.swift)| Medium| O(n)| O(n)|
+[Rotate Array](https://leetcode.com/problems/rotate-array/)| [Swift](./Array/RotateArray.swift)| Easy| O(n)| O(1)|
+[Rotate Image](https://leetcode.com/problems/rotate-image/)| [Swift](./Array/RotateImage.swift)| Medium| O(n^2)| O(1)|
+[Spiral Matrix](https://leetcode.com/problems/spiral-matrix/)| [Swift](./Array/SpiralMatrix.swift)| Medium| O(n^2)| O(1)|
+[Spiral Matrix II](https://leetcode.com/problems/spiral-matrix/)| [Swift](./Array/SpiralMatrixII.swift)| Medium| O(n^2)| O(1)|
+[Valid Sudoku](https://leetcode.com/problems/valid-sudoku/)| [Swift](./Array/ValidSudoku.swift)| Easy| O(n^2)| O(n)|
+[Set Matrix Zero](https://leetcode.com/problems/set-matrix-zeroes/)| [Swift](./Array/SetMatrixZero.swift)| Medium| O(n^2)| O(1)|
+[Next Permutation](https://leetcode.com/problems/next-permutation/)| [Swift](./Array/NextPermutation.swift)| Medium| O(n)| O(1)|
+[Gas Station](https://leetcode.com/problems/gas-station/)| [Swift](./Array/GasStation.swift)| Medium| O(n)| O(1)|
+[Game of Life](https://leetcode.com/problems/game-of-life/)| [Swift](./Array/GameLife.swift)| Medium| O(n)| O(1)|
+[Task Scheduler](https://leetcode.com/problems/task-scheduler/)| [Swift](./Array/TaskScheduler.swift)| Medium| O(nlogn)| O(n)|
+[Sliding Window Maximum ](https://leetcode.com/problems/sliding-window-maximum/)| [Swift](./Array/SlidingWindowMaximum.swift)| Hard| O(n)| O(n)|
+[Longest Consecutive Sequence](https://leetcode.com/problems/longest-consecutive-sequence/)| [Swift](./Array/LongestConsecutiveSequence.swift)| Hard| O(n)| O(n)|
+
+
+## String
+| Title | Solution | Difficulty | Time | Space |
+| ----- | -------- | ---------- | ---- | ----- |
+[Fizz Buzz](https://leetcode.com/problems/fizz-buzz/)| [Swift](./String/FizzBuzz.swift)| Easy| O(n)| O(1)|
+[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)|
+[Keyboard Row](https://leetcode.com/problems/keyboard-row/)| [Swift](./String/KeyboardRow.swift)| Easy| O(nm)| O(n)|
+[Valid Palindrome](https://leetcode.com/problems/valid-palindrome/)| [Swift](./String/ValidPalindrome.swift)| Easy| O(n)| O(n)|
+[Valid Palindrome II](https://leetcode.com/problems/valid-palindrome-ii/)| [Swift](./String/ValidPalindromeII.swift)| Easy| O(n)| O(n)|
+[Detect Capital](https://leetcode.com/problems/detect-capital/)| [Swift](./String/DetectCapital.swift)| Easy| O(n)| O(1)|
+[Count and Say](https://leetcode.com/problems/count-and-say/)| [Swift](./String/CountAndSay.swift)| Easy| O(n^2)| O(n)|
+[Flip Game](https://leetcode.com/problems/flip-game/)| [Swift](./String/FlipGame.swift)| Easy| O(n)| O(n)|
+[Implement strStr()](https://leetcode.com/problems/implement-strstr/)| [Swift](./String/StrStr.swift)| Easy| O(nm)| O(n)|
+[Isomorphic Strings](https://leetcode.com/problems/isomorphic-strings/)| [Swift](./String/IsomorphicStrings.swift)| Easy| O(n)| O(n)|
+[Reverse String](https://leetcode.com/problems/reverse-string/)| [Swift](./String/ReverseString.swift)| Easy| O(n)| O(n)|
+[Reverse String II](https://leetcode.com/problems/reverse-string-ii/)| [Swift](./String/ReverseStringII.swift)| Easy| O(n)| O(n)|
+[Reverse Vowels of a String](https://leetcode.com/problems/reverse-vowels-of-a-string/)| [Swift](./String/ReverseVowelsOfAString.swift)| Easy| O(n)| O(n)|
+[Length of Last Word](https://leetcode.com/problems/length-of-last-word/)| [Swift](./String/AddStrings.swift)| Easy| O(n)| O(n)|
+[Add Strings](https://leetcode.com/problems/add-strings/)| [Swift](./String/LengthLastWord.swift)| Easy| O(n)| O(1)|
+[Multiply Strings](https://leetcode.com/problems/multiply-strings/)| [Swift](./String/MultiplyStrings.swift)| Medium| O(n)| O(1)|
+[Palindrome Permutation](https://leetcode.com/problems/palindrome-permutation/)| [Swift](./String/PalindromePermutation.swift)| Easy| O(n)| O(n)|
+[Valid Anagram](https://leetcode.com/problems/valid-anagram/)| [Swift](./String/ValidAnagram.swift)| Easy| O(nlogn)| O(1)|
+[Ransom Note](https://leetcode.com/problems/ransom-note/)| [Swift](./String/RansomNote.swift)| Easy| O(n)| O(n)|
+[Group Anagrams](https://leetcode.com/problems/anagrams/)| [Swift](./String/GroupAnagrams.swift)| Medium| O(nmlogm + nlogn)| O(n)
+[Longest Common Prefix](https://leetcode.com/problems/longest-common-prefix/)| [Swift](./String/LongestCommonPrefix.swift)| Easy| O(nm)| O(m)|
+[Longest Substring Without Repeating Characters](https://leetcode.com/problems/longest-substring-without-repeating-characters/)| [Swift](./String/LongestSubstringWithoutRepeatingCharacters.swift)| Medium| O(n)| O(n)|
+[One Edit Distance](https://leetcode.com/problems/one-edit-distance/)| [Swift](./String/OneEditDistance.swift)| Medium| O(n)| O(n)|
+[Word Pattern](https://leetcode.com/problems/word-pattern/)| [Swift](./String/WordPattern.swift)| Easy| O(n)| O(n)|
+[Minimum Window Substring](https://leetcode.com/problems/minimum-window-substring/)| [Swift](./Array/MinimumWindowSubstring.swift)| Hard| O(n^2)| O(n)|
+[Text Justification](https://leetcode.com/problems/text-justification/)| [Swift](./String/TextJustification.swift)| Hard| O(n)| O(n)|
+
+## Linked List
+| Title | Solution | Difficulty | Time | Space |
+| ----- | -------- | ---------- | ---- | ----- |
+[Reverse Linked List](https://leetcode.com/problems/reverse-linked-list/)| [Swift](./LinkedList/ReverseLinkedList.swift)| Easy| O(n)| O(1)|
+[Palindrome Linked List](https://leetcode.com/problems/palindrome-linked-list/)| [Swift](./LinkedList/PalindromeLinkedList.swift)| Easy| O(n)| O(1)|
+[Swap Nodes in Pairs](https://leetcode.com/problems/swap-nodes-in-pairs/)| [Swift](./LinkedList/SwapNodesInPairs.swift)| Easy| O(n)| O(1)|
+[Remove Linked List Elements](https://leetcode.com/problems/remove-linked-list-elements/)| [Swift](./LinkedList/RemoveLinkedListElements.swift)| Easy| O(n)| O(1)|
+[Remove Duplicates from Sorted List](https://leetcode.com/problems/remove-duplicates-from-sorted-list/)| [Swift](./LinkedList/RemoveDuplicatesFromSortedList.swift)| Easy| O(n)| O(1)|
+[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)|
+[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)|
+[Odd Even Linked List](https://leetcode.com/problems/odd-even-linked-list/)| [Swift](./LinkedList/OddEvenLinkedList.swift)| Medium| O(n)| O(1)|
+[Rotate List](https://leetcode.com/problems/rotate-list/)| [Swift](./LinkedList/RotateList.swift)| Medium| O(n)| O(1)|
+[Reorder List](https://leetcode.com/problems/reorder-list/)| [Swift](./LinkedList/ReorderList.swift)| Medium| O(n)| O(1)|
+[Merge Two Sorted Lists](https://leetcode.com/problems/merge-two-sorted-lists/)| [Swift](./LinkedList/MergeTwoSortedLists.swift)| Easy| O(n)| O(1)|
+[Merge k Sorted Lists](https://leetcode.com/problems/merge-k-sorted-lists/)| [Swift](./LinkedList/MergeKSortedLists.swift)| Hard| O(mlogn)| O(1)|
+[Partition List](https://leetcode.com/problems/partition-list/)| [Swift](./LinkedList/PartitionList.swift)| Medium| O(n)| O(1)|
+
+## Stack
+| Title | Solution | Difficulty | Time | Space |
+| ----- | -------- | ---------- | ---- | ----- |
+[Valid Parentheses](https://leetcode.com/problems/valid-parentheses/)| [Swift](./Stack/ValidParentheses.swift)| Easy| O(n)| O(n)|
+[Longest Valid Parentheses](https://leetcode.com/problems/longest-valid-parentheses/)| [Swift](./Stack/LongestValidParentheses.swift)| Hard| O(n)| O(n)|
+[Evaluate Reverse Polish Notation](https://leetcode.com/problems/evaluate-reverse-polish-notation/)| [Swift](./Stack/EvaluateReversePolishNotation.swift)| Medium| O(n)| O(n)|
+[Simplify Path](https://leetcode.com/problems/simplify-path/)| [Swift](./Stack/SimplifyPath.swift)| Medium| O(n)| O(n)|
+[Remove K Digits](https://leetcode.com/problems/remove-k-digits/)| [Swift](./Stack/RemoveKDigits.swift)| Medium| O(n)| O(n)|
+[Ternary Expression Parser](https://leetcode.com/problems/ternary-expression-parser/)| [Swift](./Stack/TernaryExpressionParser.swift)| Medium| O(n)| O(n)|
+[Binary Tree Preorder Traversal](https://leetcode.com/problems/binary-tree-preorder-traversal/)| [Swift](./Stack/PreorderTraversal.swift)| Medium| O(n)| O(n)|
+[Binary Tree Inorder Traversal](https://leetcode.com/problems/binary-tree-inorder-traversal/)| [Swift](./Stack/InorderTraversal.swift)| Medium| O(n)| O(n)|
+[Binary Tree Postorder Traversal](https://leetcode.com/problems/binary-tree-postorder-traversal/)| [Swift](./Stack/PostorderTraversal.swift)| Hard| O(n)| O(n)|
+
+
+## Tree
+| Title | Solution | Difficulty | Time | Space |
+| ----- | -------- | ---------- | ---- | ----- |
+[Same Tree](https://oj.leetcode.com/problems/same-tree/)| [Swift](./Tree/SameTree.swift)| Easy| O(n)| O(n)|
+[Symmetric Tree](https://leetcode.com/problems/symmetric-tree/)| [Swift](./Tree/SymmetricTree.swift)| Easy| O(n)| O(n)|
+[Invert Binary Tree](https://leetcode.com/problems/invert-binary-tree/)| [Swift](./Tree/InvertBinaryTree)| Easy| O(n)| O(n)|
+[Binary Tree Upside Down](https://leetcode.com/problems/binary-tree-upside-down/)| [Swift](./Tree/BinaryTreeUpsideDown)| Medium| O(n)| O(1)|
+[Minimum Depth of Binary Tree](https://leetcode.com/problems/minimum-depth-of-binary-tree/)| [Swift](./Tree/MinimumDepthOfBinaryTree.swift)| Easy| O(n)| O(1)|
+[Maximum Depth of Binary Tree](https://leetcode.com/problems/maximum-depth-of-binary-tree/)| [Swift](./Tree/MaximumDepthOfBinaryTree.swift)| Easy| O(n)| O(1)|
+[Diameter of Binary Tree](https://leetcode.com/problems/diameter-of-binary-tree/)| [Swift](./Tree/DiameterBinaryTree.swift)| Easy| O(n)| O(1)|
+[Balanced Binary Tree](https://leetcode.com/problems/balanced-binary-tree/)| [Swift](./Tree/BalancedBinaryTree.swift)| Easy| O(n)| O(n)|
+[Sum of Left Leaves](https://leetcode.com/problems/sum-of-left-leaves/)| [Swift](./Tree/SumLeftLeaves.swift)| Easy| O(n)| O(1)|
+[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)|
+[Validate Binary Search Tree](https://leetcode.com/problems/validate-binary-search-tree/)| [Swift](./Tree/ValidateBinarySearchTree.swift)| Medium| O(n)| O(n)|
+[Binary Tree Level Order Traversal](https://leetcode.com/problems/binary-tree-level-order-traversal/)| [Swift](./Tree/BinaryTreeLevelOrderTraversal.swift)| Easy| O(n)| O(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)|
+[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)|
+[Binary Tree Vertical Order Traversal](https://leetcode.com/problems/binary-tree-vertical-order-traversal/)| [Swift](./Tree/BinaryTreeVerticalOrderTraversal.swift)| Medium| O(n)| O(n)|
+[Binary Tree Right Side View](https://leetcode.com/problems/binary-tree-right-side-view/)| [Swift](./Tree/BinaryTreeRightSideView.swift)| Medium| O(n)| O(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(n)| O(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(n)| O(n)|
+[Path Sum](https://leetcode.com/problems/path-sum/)| [Swift](./Tree/PathSum.swift)| Easy| O(n)| O(n)|
+[Path Sum II](https://leetcode.com/problems/path-sum-ii/)| [Swift](./Tree/PathSumII.swift)| Medium| O(n)| O(n)|
+[Path Sum III](https://leetcode.com/problems/path-sum-iiI/)| [Swift](./Tree/PathSumIII.swift)| Easy| O(n^2)| O(1)|
+[Bnary Tree Paths](https://leetcode.com/problems/binary-tree-paths/)| [Swift](./Tree/BnaryTreePaths.swift)| Easy| O(n)| O(n)|
+[Unique Binary Search Trees](https://leetcode.com/problems/unique-binary-search-trees/)| [Swift](./Tree/UniqueBinarySearchTrees.swift)| Medium| O(n^2)| O(n)|
+[Recover Binary Search Tree](https://leetcode.com/problems/recover-binary-search-tree/)| [Swift](./Tree/RecoverBinarySearchTree.swift)| Hard| O(n)| O(1)|
+[Merge Two Binary Trees](https://leetcode.com/problems/merge-two-binary-trees/description/) | [Swift](./Tree/MergeTwoBinaryTrees.swift) | Easy | O(n) | O(n) |
+
+## Dynamic programming
+| Title | Solution | Difficulty | Time | Space |
+| ----- | -------- | ---------- | ---- | ----- |
+[Nested List Weight Sum](https://leetcode.com/problems/nested-list-weight-sum/)| [Swift](./DP/NestedListWeightSum.swift)| Easy| O(n)| O(1)|
+[Climbing Stairs](https://leetcode.com/problems/climbing-stairs/)| [Swift](./DP/ClimbingStairs.swift)| Easy| O(n)| O(1)|
+[Min Cost Climbing Stairs](https://leetcode.com/problems/min-cost-climbing-stairs/)| [Swift](./DP/MinCostClimbingStairs.swift)| Easy| O(n)| O(n)|
+[Unique Paths](https://leetcode.com/problems/unique-paths/)| [Swift](./DP/UniquePaths.swift)| Medium| O(mn)| O(mn)|
+[Unique Paths II](https://leetcode.com/problems/unique-paths-ii/)| [Swift](./DP/UniquePathsII.swift)| Medium| O(mn)| O(mn)|
+[Decode Ways](https://leetcode.com/problems/decode-ways/)| [Swift](./DP/DecodeWays.swift) | O(n)|O(n)|
+[Minimum Path Sum](https://leetcode.com/problems/minimum-path-sum/)| [Swift](./DP/MinimumPathSum.swift)| Medium| O(mn)| O(mn)|
+[Generate Parentheses](https://leetcode.com/problems/generate-parentheses/)| [Swift](./DP/GenerateParentheses.swift)| Medium| O(2^n)| O(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)|
+[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)|
+[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)|
+[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)|
+[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)|
+[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)|
+[Coin Change](https://leetcode.com/problems/coin-change/)| [Swift](./DP/CoinChange.swift)| Medium| O(n^2)| O(n)|
+[Coin Change II](https://leetcode.com/problems/coin-change-ii/)| [Swift](./DP/CoinChangeII.swift)| Medium| O(n^2)| O(n)|
+[Longest Increasing Subsequence](https://leetcode.com/problems/longest-increasing-subsequence/)| [Swift](./DP/LongestIncreasingSubsequence.swift)| Medium| O(n^2)| O(n)|
+[Longest Palindromic Substring](https://leetcode.com/problems/longest-palindromic-substring/)| [Swift](./DP/LongestPalindromicSubstring.swift)| Medium| O(n^2)| O(n^2)|
+[Perfect Squares](https://leetcode.com/problems/perfect-squares/)| [Swift](./DP/PerfectSquares.swift)| Medium| O(n^2)| O(n)|
+[House Robber](https://leetcode.com/problems/house-robber/)| [Swift](./DP/HouseRobber.swift)| Easy| O(n)| O(1)|
+[House Robber II](https://leetcode.com/problems/house-robber-ii/)| [Swift](./DP/HouseRobberII.swift)| Medium| O(n)| O(1)|
+[Paint Fence](https://leetcode.com/problems/paint-fence/)| [Swift](./DP/PaintFence.swift)| Easy| O(n)| O(n)|
+[Maximum Subarray](https://leetcode.com/problems/maximum-subarray/)| [Swift](./DP/MaximumSubarray.swift)| Medium| O(n)| O(1)|
+[Maximum Product Subarray](https://leetcode.com/problems/maximum-product-subarray/)| [Swift](./DP/MaximumProductSubarray.swift)| Medium| O(n)| O(1)|
+[Maximal Square](https://leetcode.com/problems/maximal-square/)| [Swift](./DP/MaximalSquare.swift)| Medium| O(mn)| O(mn)|
+[Edit Distance](https://leetcode.com/problems/edit-distance/)| [Swift](./DP/EditDistance.swift)| Hard| O(mn)| O(mn)|
+[Combination Sum IV](https://leetcode.com/problems/combination-sum-iv/)| [Swift](./DP/CombinationSumIV.swift)| Medium| O(2^n)| O(n)|
+[Triangle](https://leetcode.com/problems/triangle/)| [Swift](./DP/Triangle.swift)| Medium| O(2^n - 1)| O(m)|
+[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)|
+[Burst Ballons](https://leetcode.com/problems/burst-balloons/)| [Swift](./DP/BurstBalloons.swift)| Hard| O(n^3)| O(n)|
+[Frog Jump](https://leetcode.com/problems/frog-jump/)| [Swift](./DP/FrogJump.swift)| Hard| O(n^2)| O(n)|
+
+## Depth-first search
+| Title | Solution | Difficulty | Time | Space |
+| ----- | -------- | ---------- | ---- | ----- |
+[Permutations](https://leetcode.com/problems/permutations/)| [Swift](./DFS/Permutations.swift)| Medium| O(n!)| O(n)|
+[Permutations II](https://leetcode.com/problems/permutations-ii/)| [Swift](./DFS/PermutationsII.swift)| Medium| O(n!)| O(n)|
+[Subsets](https://leetcode.com/problems/subsets/)| [Swift](./DFS/Subsets.swift)| Medium| O(n!)| O(n)|
+[Subsets II](https://leetcode.com/problems/subsets-ii/)| [Swift](./DFS/SubsetsII.swift)| Medium| O(n!)| O(n)|
+[Combinations](https://leetcode.com/problems/combinations/)| [Swift](./DFS/Combinations.swift)| Medium| O(n!)| O(n)|
+[Combination Sum](https://leetcode.com/problems/combination-sum/)| [Swift](./DFS/CombinationSum.swift)| Medium| O(n^n)| O(2^n - 1)|
+[Combination Sum II](https://leetcode.com/problems/combination-sum-ii/)| [Swift](./DFS/CombinationSumII.swift)| Medium| O(n!)| O(2^n - 2)|
+[Combination Sum III](https://leetcode.com/problems/combination-sum-iii/)| [Swift](./DFS/CombinationSumIII.swift)| Medium| O(n!)| O(nCk)|
+[Letter Combinations of a Phone Number](https://leetcode.com/problems/letter-combinations-of-a-phone-number/)| [Swift](./DFS/LetterCombinationsPhoneNumber.swift)| Medium| O(mn)| O(n)|
+[Factor Combinations](https://leetcode.com/problems/factor-combinations/)| [Swift](./DFS/FactorCombinations.swift)| Medium| O(n^n))| O(2^n - 1)|
+[Generalized Abbreviation](https://leetcode.com/problems/generalized-abbreviation/)| [Swift](./DFS/GeneralizedAbbreviation.swift)| Medium| O(n!)| O(2^n)|
+[Palindrome Partitioning](https://leetcode.com/problems/palindrome-partitioning/)| [Swift](./DFS/PalindromePartitioning.swift)| Medium| O(n!)| O(n)|
+[Number of Islands](https://leetcode.com/problems/number-of-islands/)| [Swift](./DFS/NumberofIslands.swift)| Medium| O((mn)^2)| O(1)|
+[Walls and Gates](https://leetcode.com/problems/walls-and-gates/)| [Swift](./DFS/WallsGates.swift)| Medium| O(n!)| O(2^n)|
+[Word Search](https://leetcode.com/problems/word-search/)| [Swift](./DFS/WordSearch.swift)| Medium| O((n^2)!)| O(n^2)|
+[Word Search II](https://leetcode.com/problems/word-search-ii/)| [Swift](./DFS/WordSearchII.swift)| Hard| O(((mn)^2))| O(n^2)|
+[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-Queens](https://leetcode.com/problems/n-queens/)| [Swift](./DFS/NQueens.swift)| Hard| O((n^4))| O(n^2)|
+[N-Queens II](https://leetcode.com/problems/n-queens-ii/)| [Swift](./DFS/NQueensII.swift)| Hard| O((n^3))| O(n)|
+[Sudoku Solver](https://leetcode.com/problems/sudoku-solver/)| [Swift](./DFS/SudokuSolver.swift)| Hard| O(n^4)| O(1)|
+[Remove Invalid Parentheses](https://leetcode.com/problems/remove-invalid-parentheses/)| [Swift](./DFS/RemoveInvalidParentheses.swift)| Hard| O(n!)| O(n)|
+[Expression Add Operators](https://leetcode.com/problems/expression-add-operators/)| [Swift](./DFS/ExpressionAddOperators.swift)| Hard| O(n!)| O(n)|
+
+## Math
+| Title | Solution | Difficulty | Time | Space |
+| ----- | -------- | ---------- | ---- | ----- |
+[Add Binary](https://leetcode.com/problems/add-binary/)| [Swift](./Math/AddBinary.swift)| Easy| O(n)| O(n)|
+[Add Two Numbers](https://leetcode.com/problems/add-two-numbers/)| [Swift](./Math/AddTwoNumbers.swift)| Medium| O(n)| O(1)|
+[Add Digits](https://leetcode.com/problems/add-digits/)| [Swift](./Math/AddDigits.swift)| Easy| O(1)| O(1)|
+[Plus One](https://leetcode.com/problems/plus-one/)| [Swift](./Math/PlusOne.swift)| Easy| O(n)| O(1)|
+[Divide Two Integers](https://leetcode.com/problems/divide-two-integers/)| [Swift](./Math/DivideTwoIntegers.swift)| Medium| O(logn)| O(1)|
+[Number Complement](https://leetcode.com/problems/number-complement/)| [Swift](./Math/NumberComplement.swift)| Easy| O(n)| O(1)|
+[Hamming Distance](https://leetcode.com/problems/hamming-distance/)| [Swift](./Math/HammingDistance.swift)| Easy| O(n)| O(1)|
+[Integer Break](https://leetcode.com/problems/integer-break/)| [Swift](./Math/IntegerBreak.swift)| Medium| O(logn)| O(1)|
+[Happy Number](https://leetcode.com/problems/happy-number/)| [Swift](./Math/HappyNumber.swift)| Easy| O(n)| O(n)|
+[Single Number](https://leetcode.com/problems/single-number/)| [Swift](./Math/SingleNumber.swift)| Medium| O(n)| O(1)|
+[Ugly Number](https://leetcode.com/problems/ugly-number/)| [Swift](./Math/UglyNumber.swift)| Easy| O(logn)| O(1)|
+[Ugly Number II](https://leetcode.com/problems/ugly-number-ii/)| [Swift](./Math/UglyNumberII.swift)| Medium| O(n)| O(n)|
+[Super Ugly Number](https://leetcode.com/problems/super-ugly-number/)| [Swift](./Math/SuperUglyNumber.swift)| Medium| O(n^2)| O(n)|
+[Count Primes](https://leetcode.com/problems/count-primes/)| [Swift](./Math/CountPrimes.swift)| Easy| O(n)| O(n)|
+[String to Integer (atoi)](https://leetcode.com/problems/string-to-integer-atoi/)| [Swift](./Math/Atoi.swift)| Easy| O(n)| O(1)|
+[Pow(x, n)](https://leetcode.com/problems/isomorphic-strings/)| [Swift](./Math/Pow.swift)| Medium| O(logn)| O(1)|
+[Power of Two](https://leetcode.com/problems/power-of-two/)| [Swift](./Math/PowerTwo.swift)| Easy| O(1)| O(1)|
+[Power of Three](https://leetcode.com/problems/power-of-three/)| [Swift](./Math/PowerThree.swift)| Easy| O(1)| O(1)|
+[Super Power](https://leetcode.com/problems/super-pow/)| [Swift](./Math/SuperPow.swift)| Medium| O(n)| O(1)|
+[Sum of Two Integers](https://leetcode.com/problems/sum-of-two-integers/)| [Swift](./Math/SumTwoIntegers.swift)| Easy| O(n)| O(1)|
+[Reverse Integer](https://leetcode.com/problems/reverse-integer/)| [Swift](./Math/ReverseInteger.swift)| Easy| O(n)| O(1)|
+[Excel Sheet Column Number](https://leetcode.com/problems/excel-sheet-column-number/)| [Swift](./Math/ExcelSheetColumnNumber.swift)| Easy| O(n)| O(1)|
+[Integer to Roman](https://leetcode.com/problems/integer-to-roman/)| [Swift](./Math/IntegerToRoman.swift)| Medium| O(n)| O(1)|
+[Roman to Integer](https://leetcode.com/problems/roman-to-integer/)| [Swift](./Math/RomanToInteger.swift)| Easy| O(n)| O(n)|
+[Integer to English Words](https://leetcode.com/problems/integer-to-english-words/)| [Swift](./Math/IntegerEnglishWords.swift)| Hard| O(n)| O(1)|
+[Rectangle Area](https://leetcode.com/problems/rectangle-area/)| [Swift](./Math/RectangleArea.swift)| Easy| O(1)| O(1)|
+[Trapping Rain Water](https://leetcode.com/problems/trapping-rain-water/)| [Swift](./Math/TrappingRainWater.swift)| Hard| O(n)| O(n)|
+[Container With Most Water](https://leetcode.com/problems/container-with-most-water/)| [Swift](./Math/ContainerMostWater.swift)| Medium| O(n)| O(1)|
+[Counting Bits](https://leetcode.com/problems/counting-bits/)| [Swift](./Math/CountingBits.swift)| Medium| O(n)| O(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)|
+
+## Search
+| Title | Solution | Difficulty | Time | Space |
+| ----- | -------- | ---------- | ---- | ----- |
+[Closest Binary Search Tree Value](https://leetcode.com/problems/closest-binary-search-tree-value/)| [Swift](./Search/ClosestBinarySearchTreeValue.swift)| Easy| O(logn)| O(1)|
+[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)|
+[Search in Rotated Sorted Array](https://leetcode.com/problems/search-in-rotated-sorted-array/)| [Swift](./Search/SearchInRotatedSortedArray.swift)| Hard| O(logn)| O(1)|
+[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)|
+[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)|
+[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)|
+[Search a 2D Matrix](https://leetcode.com/problems/search-a-2d-matrix/)| [Swift](./Search/Search2DMatrix.swift)| Medium| O(log(m + n))| O(1)|
+[Search a 2D Matrix II](https://leetcode.com/problems/search-a-2d-matrix-ii/)| [Swift](./Search/Search2DMatrixII.swift)| Medium| O(m + n)| O(1)|
+[Search for a Range](https://leetcode.com/problems/search-for-a-range/)| [Swift](./Search/SearchForARange.swift)| Medium| O(logn)| O(1)|
+[Search Insert Position](https://leetcode.com/problems/search-insert-position/)| [Swift](./Search/SearchForARange.swift)| Medium| O(logn)| O(1)|
+[Find Peak Element](https://leetcode.com/problems/find-peak-element/)| [Swift](./Search/FindPeakElement.swift)| Medium| O(logn)| O(1)|
+[Sqrt(x)](https://leetcode.com/problems/sqrtx/)| [Swift](./Search/Sqrtx.swift)| Medium| O(logn)| O(1)|
+[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)|
+
+## Sort
+| Title | Solution | Difficulty | Time | Space |
+| ----- | -------- | ---------- | ---- | ----- |
+[Merge Sorted Array](https://leetcode.com/problems/merge-sorted-array/)| [Swift](./Sort/MergeSortedArray.swift)| Easy| O(n)| O(1)|
+[Sort Colors](https://leetcode.com/problems/sort-colors/)| [Swift](./Sort/SortColors.swift)| Medium| O(n)| O(1)|
+[Wiggle Sort](https://leetcode.com/problems/wiggle-sort/)| [Swift](./Sort/WiggleSort.swift)| Medium| O(n)| O(1)|
+[Wiggle Sort II](https://leetcode.com/problems/wiggle-sort-ii/)| [Swift](./Sort/WiggleSortII.swift)| Medium| O(nlogn)| O(n)|
+[Sort Transformed Array](https://leetcode.com/problems/sort-transformed-array/)| [Swift](./Sort/SortTransformedArray.swift)| Medium| O(n)| O(1)|
+[Top K Frequent Elements](https://leetcode.com/problems/top-k-frequent-elements/)| [Swift](./Array/TopKFrequentElements.swift)| Medium| O(nlogn)| O(n)|
+[Meeting Rooms](https://leetcode.com/problems/meeting-rooms/)| [Swift](./Sort/MeetingRooms.swift)| Easy| O(nlogn)| O(1)|
+[Meeting Rooms II](https://leetcode.com/problems/meeting-rooms-ii/)| [Swift](./Sort/MeetingRoomsII.swift)| Medium| O(nlogn)| O(n)|
+[Merge Intervals](https://leetcode.com/problems/merge-intervals/)| [Swift](./Sort/MergeIntervals.swift)| Hard| O(nlogn)| O(n)|
+[Alien Dictionary](https://leetcode.com/problems/alien-dictionary/)| [Swift](./Sort/AlienDictionary.swift)| Hard| O(nm)| O(nm)|
+[Array Partition I](https://leetcode.com/problems/array-partition-i/description/)| [Swift](./Sort/ArrayPartitionI.swift)|Easy| O(nlogn)| O(n)|
+
+## Union Find
+| Title | Solution | Difficulty | Time | Space |
+| ----- | -------- | ---------- | ---- | ----- |
+[Number of Connected Components in an Undirected Graph](https://leetcode.com/problems/number-of-connected-components-in-an-undirected-graph/)| [Swift](./UnionFind/NumberConnectedComponentsUndirectedGraph.swift)| Medium| O(nlogn)| O(n)|
+[Graph Valid Tree](https://leetcode.com/problems/graph-valid-tree/)| [Swift](./UnionFind/GraphValidTree.swift)| Medium| O(nlogn)| O(n)|
+
+## Google
+| Title | Solution | Difficulty | Frequency |
+| ----- | -------- | ---------- | --------- |
+[Plus One](https://leetcode.com/problems/plus-one/)| [Swift](./Math/PlusOne.swift)| Easy| ★★★★★★|
+[Number of Islands](https://leetcode.com/problems/number-of-islands/)| [Swift](./DFS/NumberofIslands.swift)| Medium| ★★★★|
+[Summary Ranges](https://leetcode.com/problems/summary-ranges/)| [Swift](./Array/SummaryRanges.swift)| Medium| ★★★★|
+[Perfect Squares](https://leetcode.com/problems/perfect-squares/)| [Swift](./DP/PerfectSquares.swift)| Medium| ★★★★|
+[Merge Intervals](https://leetcode.com/problems/merge-intervals/)| [Swift](./Sort/MergeIntervals.swift)| Hard| ★★★|
+[Valid Parentheses](https://leetcode.com/problems/valid-parentheses/)| [Swift](./Stack/ValidParentheses.swift)| Easy| ★★★|
+[Trapping Rain Water](https://leetcode.com/problems/trapping-rain-water/)| [Swift](./Math/TrappingRainWater.swift)| Hard| ★★|
+[Merge k Sorted Lists](https://leetcode.com/problems/merge-k-sorted-lists/)| [Swift](./LinkedList/MergeKSortedLists.swift)| Hard| ★★|
+[Longest Consecutive Sequence](https://leetcode.com/problems/longest-consecutive-sequence/)| [Swift](./Array/LongestConsecutiveSequence.swift)| Hard| ★★|
+[Find Peak Element](https://leetcode.com/problems/find-peak-element/)| [Swift](./Search/FindPeakElement.swift)| Medium| ★★|
+[Power of Two](https://leetcode.com/problems/power-of-two/)| [Swift](./Math/PowerTwo.swift)| Easy| ★★|
+[Spiral Matrix](https://leetcode.com/problems/spiral-matrix/)| [Swift](./Array/SpiralMatrix.swift)| Medium| ★★|
+[Sliding Window Maximum ](https://leetcode.com/problems/sliding-window-maximum/)| [Swift](./Array/SlidingWindowMaximum.swift)| Hard| ★★|
+[Pow(x, n)](https://leetcode.com/problems/isomorphic-strings/)| [Swift](./Math/Pow.swift)| Medium| ★★|
+[Letter Combinations of a Phone Number](https://leetcode.com/problems/letter-combinations-of-a-phone-number/)| [Swift](./DFS/LetterCombinationsPhoneNumber.swift)| Medium| ★★|
+[Heaters](https://leetcode.com/problems/heaters/)| [Swift](./Array/Heaters.swift)| Easy| ★|
+
+## Facebook
+| Title | Solution | Difficulty | Frequency |
+| ----- | -------- | ---------- | --------- |
+[3Sum](https://leetcode.com/problems/3sum/)| [Swift](./Array/ThreeSum.swift)| Medium| ★★★★★★|
+[Valid Palindrome](https://leetcode.com/problems/valid-palindrome/)| [Swift](./String/ValidPalindrome.swift)| Easy| ★★★★★★|
+[Valid Palindrome II](https://leetcode.com/problems/valid-palindrome-ii/)| [Swift](./String/ValidPalindromeII.swift)| Easy| ★★★★★★|
+[Move Zeroes](https://leetcode.com/problems/move-zeroes/)| [Swift](./Array/MoveZeroes.swift)| Easy| ★★★★★★|
+[Remove Invalid Parentheses](https://leetcode.com/problems/remove-invalid-parentheses/)| [Swift](./DFS/RemoveInvalidParentheses.swift)| Hard| ★★★★★★|
+[Add Binary](https://leetcode.com/problems/add-binary/)| [Swift](./Math/AddBinary.swift)| Easy| ★★★★★|
+[Two Sum](https://leetcode.com/problems/two-sum/)| [Swift](./Array/TwoSum.swift)| Easy| ★★★★★|
+[Bnary Tree Paths](https://leetcode.com/problems/binary-tree-paths/)| [Swift](./Tree/BnaryTreePaths.swift)| Easy| ★★★★|
+[Letter Combinations of a Phone Number](https://leetcode.com/problems/letter-combinations-of-a-phone-number/)| [Swift](./DFS/LetterCombinationsPhoneNumber.swift)| Medium| ★★★★|
+[Merge k Sorted Lists](https://leetcode.com/problems/merge-k-sorted-lists/)| [Swift](./LinkedList/MergeKSortedLists.swift)| Hard| ★★★★|
+[Reverse Linked List](https://leetcode.com/problems/reverse-linked-list/)| [Swift](./LinkedList/ReverseLinkedList.swift)| Easy| ★★★|
+[Merge Intervals](https://leetcode.com/problems/merge-intervals/)| [Swift](./Sort/MergeIntervals.swift)| Hard| ★★★|
+[Number of Islands](https://leetcode.com/problems/number-of-islands/)| [Swift](./DFS/NumberofIslands.swift)| Medium| ★★★|
+[Reverse Linked List](https://leetcode.com/problems/reverse-linked-list/)| [Swift](./LinkedList/ReverseLinkedList.swift)| Easy| ★★★|
+[Expression Add Operators](https://leetcode.com/problems/expression-add-operators/)| [Swift](./DFS/ExpressionAddOperators.swift)| Hard| ★★★|
+[Subsets](https://leetcode.com/problems/subsets/)| [Swift](./DFS/Subsets.swift)| Medium| ★★★|
+[Sort Colors](https://leetcode.com/problems/sort-colors/)| [Swift](./Sort/SortColors.swift)| Medium| ★★|
+
+## Snapchat
+| Title | Solution | Difficulty | Frequency |
+| ----- | -------- | ---------- | --------- |
+[Game of Life](https://leetcode.com/problems/game-of-life/) | [Swift](./Array/GameLife.swift)| Medium| ★★★★★★|
+[Meeting Rooms II](https://leetcode.com/problems/meeting-rooms-ii/)| [Swift](./Sort/MeetingRoomsII.swift)| Medium| ★★★★★★|
+[Valid Sudoku](https://leetcode.com/problems/valid-sudoku/)| [Swift](./Array/ValidSudoku.swift)| Easy| ★★★★★|
+[Binary Tree Vertical Order Traversal](https://leetcode.com/problems/binary-tree-vertical-order-traversal/)| [Swift](./Tree/BinaryTreeVerticalOrderTraversal.swift)| Medium| ★★★★|
+[Alien Dictionary](https://leetcode.com/problems/alien-dictionary/)| [Swift](./Sort/AlienDictionary.swift)| Hard| ★★★★|
+[One Edit Distance](https://leetcode.com/problems/one-edit-distance/)| [Swift](./String/OneEditDistance.swift)| Medium| ★★★|
+[Sudoku Solver](https://leetcode.com/problems/sudoku-solver/)| [Swift](./Math/SudokuSolver.swift)| Hard| ★★★|
+[Reverse Linked List](https://leetcode.com/problems/reverse-linked-list/)| [Swift](./LinkedList/ReverseLinkedList.swift)| Easy| ★★|
+[Unique Binary Search Trees](https://leetcode.com/problems/unique-binary-search-trees/)| [Swift](./Tree/UniqueBinarySearchTrees.swift)| Medium| ★★|
+[Minimum Window Substring](https://leetcode.com/problems/minimum-window-substring/)| [Swift](./Array/MinimumWindowSubstring.swift)| Hard| ★★|
+[Remove K Digits](https://leetcode.com/problems/remove-k-digits/)| [Swift](./Stack/RemoveKDigits.swift)| Medium| ★|
+[Ternary Expression Parser](https://leetcode.com/problems/ternary-expression-parser/)| [Swift](./Stack/TernaryExpressionParser.swift)| Medium| ★|
+
+## Uber
+| Title | Solution | Difficulty | Frequency |
+| ----- | -------- | ---------- | --------- |
+[Valid Sudoku](https://leetcode.com/problems/valid-sudoku/)| [Swift](./Array/ValidSudoku.swift)| Easy| ★★★★|
+[Spiral Matrix](https://leetcode.com/problems/spiral-matrix/)| [Swift](./Array/SpiralMatrix.swift)| Medium| ★★★★|
+[Letter Combinations of a Phone Number](https://leetcode.com/problems/letter-combinations-of-a-phone-number/)| [Swift](./DFS/LetterCombinationsPhoneNumber.swift)| Medium| ★★★★|
+[Group Anagrams](https://leetcode.com/problems/anagrams/)| [Swift](./String/GroupAnagrams.swift)| Medium| ★★★★|
+[Word Pattern](https://leetcode.com/problems/word-pattern/)| [Swift](./String/WordPattern.swift)| Easy| ★★★|
+[Roman to Integer](https://leetcode.com/problems/roman-to-integer/)| [Swift](./Math/RomanToInteger.swift)| Easy| ★★★|
+[Combination Sum](https://leetcode.com/problems/combination-sum/)| [Swift](./DFS/CombinationSum.swift)| Medium| ★★|
+
+## Airbnb
+| Title | Solution | Difficulty | Frequency |
+| ----- | -------- | ---------- | --------- |
+[Two Sum](https://leetcode.com/problems/two-sum/)| [Swift](./Array/TwoSum.swift)| Easy| ★★★★★|
+[Text Justification](https://leetcode.com/problems/text-justification/)| [Swift](./String/TextJustification.swift)| Hard| ★★★★|
+[House Robber](https://leetcode.com/problems/house-robber/)| [Swift](./DP/HouseRobber.swift)| Easy| ★★|
+[Single Number](https://leetcode.com/problems/single-number/)| [Swift](./Math/SingleNumber.swift)| Medium| ★★|
+[Word Search II](https://leetcode.com/problems/word-search-ii/)| [Swift](./DFS/WordSearchII.swift)| Hard| ★★|
+[Add Two Numbers](https://leetcode.com/problems/add-two-numbers/)| [Swift](./Math/AddTwoNumbers.swift)| Medium| ★★|
+
+## LinkedIn
+| Title | Solution | Difficulty | Frequency |
+| ----- | -------- | ---------- | --------- |
+[Maximum Subarray](https://leetcode.com/problems/maximum-subarray/)| [Swift](./DP/MaximumSubarray.swift)| Medium| ★★★★★★|
+[Pow(x, n)](https://leetcode.com/problems/isomorphic-strings/)| [Swift](./Math/Pow.swift)| Medium| ★★★★★★|
+[Merge Intervals](https://leetcode.com/problems/merge-intervals/)| [Swift](./Sort/MergeIntervals.swift)| Hard| ★★★★★★|
+[Isomorphic Strings](https://leetcode.com/problems/isomorphic-strings/)| [Swift](./String/IsomorphicStrings.swift)| Easy| ★★★★★★|
+[Search in Rotated Sorted Array](https://leetcode.com/problems/search-in-rotated-sorted-array/)| [Swift](./Search/SearchInRotatedSortedArray.swift)| Hard| ★★★★★|
+[Search for a Range](https://leetcode.com/problems/search-for-a-range/)| [Swift](./Search/SearchForARange.swift)| Medium| ★★★★★|
+[Two Sum](https://leetcode.com/problems/two-sum/)| [Swift](./Array/TwoSum.swift)| Easy| ★★★★|
+[Binary Tree Level Order Traversal](https://leetcode.com/problems/binary-tree-level-order-traversal/)| [Swift](./Tree/BinaryTreeLevelOrderTraversal.swift)| Easy| ★★★★|
+[Evaluate Reverse Polish Notation](https://leetcode.com/problems/evaluate-reverse-polish-notation/)| [Swift](./Stack/EvaluateReversePolishNotation.swift)| Medium| ★★★|
+[Maximum Product Subarray](https://leetcode.com/problems/maximum-product-subarray/)| [Swift](./DP/MaximumProductSubarray.swift)| Medium| ★★★|
+[Product of Array Except Self](https://leetcode.com/problems/product-of-array-except-self/)| [Swift](./Array/ProductExceptSelf.swift)| Medium| ★★★|
+[Symmetric Tree](https://leetcode.com/problems/symmetric-tree/)| [Swift](./Tree/SymmetricTree.swift)| Easy| ★★|
+
+## Amazon
+| Title | Solution | Difficulty | Frequency |
+| ----- | -------- | ---------- | --------- |
+[Two Sum](https://leetcode.com/problems/two-sum/)| [Swift](./Array/TwoSum.swift)| Easy| ★★★★★★|
+[Min Cost Climbing Stairs](https://leetcode.com/problems/min-cost-climbing-stairs/)| [Swift](./DP/MinCostClimbingStairs.swift)| Easy| ★★★★|
+[Number of Islands](https://leetcode.com/problems/number-of-islands/)| [Swift](./DFS/NumberofIslands.swift)| Medium| ★★|
+[Add Two Numbers](https://leetcode.com/problems/add-two-numbers/)| [Swift](./Math/AddTwoNumbers.swift)| Medium| ★★|
+[Reverse Linked List](https://leetcode.com/problems/reverse-linked-list/)| [Swift](./LinkedList/ReverseLinkedList.swift)| Easy| ★★|
+[Valid Parentheses](https://leetcode.com/problems/valid-parentheses/)| [Swift](./Stack/ValidParentheses.swift)| Easy| ★★|
+[Longest Palindromic Substring](https://leetcode.com/problems/longest-palindromic-substring/)| [Swift](./DP/LongestPalindromicSubstring.swift)| Medium| ★★|
+[Trapping Rain Water](https://leetcode.com/problems/trapping-rain-water/)| [Swift](./Math/TrappingRainWater.swift)| Hard| ★★|
+[Longest Substring Without Repeating Characters](https://leetcode.com/problems/longest-substring-without-repeating-characters/)| [Swift](./String/LongestSubstringWithoutRepeatingCharacters.swift)| Medium| ★★|
+[Letter Combinations of a Phone Number](https://leetcode.com/problems/letter-combinations-of-a-phone-number/)| [Swift](./DFS/LetterCombinationsPhoneNumber.swift)| Medium| ★★|
+[Valid Anagram](https://leetcode.com/problems/valid-anagram/)| [Swift](./String/ValidAnagram.swift)| Easy| ★★|
+[Rotate Image](https://leetcode.com/problems/rotate-image/)| [Swift](./Array/RotateImage.swift)| Medium| ★★|
+[Best Time to Buy and Sell Stock](https://leetcode.com/problems/best-time-to-buy-and-sell-stock/)| [Swift](./DP/BestTimeBuySellStock.swift)| Easy| ★★|
+[3Sum](https://leetcode.com/problems/3sum/)| [Swift](./Array/ThreeSum.swift)| Medium| ★★|
+[Sliding Window Maximum ](https://leetcode.com/problems/sliding-window-maximum/)| [Swift](./Array/SlidingWindowMaximum.swift)| Hard| ★★|
+
+## Microsoft
+| Title | Solution | Difficulty | Frequency |
+| ----- | -------- | ---------- | --------- |
+[Reverse Linked List](https://leetcode.com/problems/reverse-linked-list/)| [Swift](./LinkedList/ReverseLinkedList.swift)| Easy| ★★★★★★|
+[Two Sum](https://leetcode.com/problems/two-sum/)| [Swift](./Array/TwoSum.swift)| Easy| ★★★★★|
+[String to Integer (atoi)](https://leetcode.com/problems/string-to-integer-atoi/)| [Swift](./Math/Atoi.swift)| Easy| ★★★★|
+[Add Two Numbers](https://leetcode.com/problems/add-two-numbers/)| [Swift](./Math/AddTwoNumbers.swift)| Medium| ★★★★|
+[Excel Sheet Column Number](https://leetcode.com/problems/excel-sheet-column-number/)| [Swift](./Math/ExcelSheetColumnNumber.swift)| Easy| ★★★★|
+[Validate Binary Search Tree](https://leetcode.com/problems/validate-binary-search-tree/)| [Swift](./Tree/ValidateBinarySearchTree.swift)| Medium| ★★★|
+[Merge Two Sorted Lists](https://leetcode.com/problems/merge-two-sorted-lists/)| [Swift](./LinkedList/MergeTwoSortedLists.swift)| Easy| ★★★|
\ No newline at end of file
diff --git a/logo.png b/logo.png
new file mode 100644
index 000000000..bcead660a
Binary files /dev/null and b/logo.png differ