# leetcode-solution **Repository Path**: granzonchen/leetcode-solution ## Basic Information - **Project Name**: leetcode-solution - **Description**: solution to leetcode problems - **Primary Language**: Python - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2020-12-29 - **Last Updated**: 2020-12-29 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ================== LeetCode Solutions ================== Solution List ============= === ================================================================ 1 `Two Sum`__ 2 `Add Two Numbers`__ 3 `Longest Substring Without Repeating Characters`__ 4 `Median of Two Sorted Arrays`__ 5 Longest Palindromic Substring 6 `ZigZag Conversion`__ 7 `Reverse Integer`__ 8 `String to Integer (atoi)`__ 9 `Palindrome Number`__ 10 Regular Expression Matching 11 Container With Most Water 12 `Integer to Roman`__ 13 `Roman to Integer`__ 14 `Longest Common Prefix`__ 15 3Sum 16 3Sum Closest 17 `Letter Combinations of a Phone Number`__ 18 `4Sum`__ 19 `Remove Nth Node From End of List`__ 20 `Valid Parentheses`__ 21 `Merge Two Sorted Lists`__ 22 `Generate Parentheses`__ 23 `Merge k Sorted Lists`__ 24 Swap Nodes in Pairs 25 Reverse Nodes in k-Group 26 `Remove Duplicates from Sorted Array`__ 27 `Remove Element`__ 28 Implement strStr() 29 `Divide Two Integers`__ 30 Substring with Concatenation of All Words 31 `Next Permutation`__ 32 `Longest Valid Parentheses`__ 33 `Search in Rotated Sorted Array`__ 34 `Search for a Range`__ 35 `Search Insert Position`__ 36 `Valid Sudoku`__ 37 `Sudoku Solver`__ 38 `Count and Say`__ 39 `Combination Sum`__ 40 `Combination Sum II`__ 41 `First Missing Positive`__ 42 Trapping Rain Water 43 `Multiply Strings`__ 44 Wildcard Matching 45 `Jump Game II`__ 46 `Permutations`__ 47 `Permutations II`__ 48 Rotate Image 49 `Anagrams`__ 50 `Pow(x, n)`__ 51 `N-Queens`__ 52 `N-Queens II`__ 53 `Maximum Subarray`__ 54 `Spiral Matrix`__ 55 `Jump Game`__ 56 `Merge Intervals`__ 57 `Insert Interval`__ 58 Length of Last Word 59 `Spiral Matrix II`__ 60 `Permutation Sequence`__ 61 Rotate List 62 `Unique Paths`__ 63 `Unique Paths II`__ 64 `Minimum Path Sum`__ 65 Valid Number 66 `Plus One`__ 67 `Add Binary`__ 68 Text Justification 69 Sqrt(x) 70 `Climbing Stairs`__ 71 `Simplify Path`__ 72 `Edit Distance`__ 73 Set Matrix Zeroes 74 Search a 2D Matrix 75 `Sort Colors`__ 76 `Minimum Window Substring`__ 77 `Combinations`__ 78 `Subsets`__ 79 Word Search 80 `Remove Duplicates from Sorted Array II`__ 81 `Search in Rotated Sorted Array II`__ 82 Remove Duplicates from Sorted List II 83 Remove Duplicates from Sorted List 84 `Largest Rectangle in Histogram`__ 85 `Maximal Rectangle`__ 86 Partition List 87 Scramble String 88 Merge Sorted Array 89 `Gray Code`__ 90 `Subsets II`__ 91 `Decode Ways`__ 92 Reverse Linked List II 93 `Restore IP Addresses`__ 94 `Binary Tree Inorder Traversal`__ 95 Unique Binary Search Trees II 96 `Unique Binary Search Trees`__ 97 Interleaving String 98 `Validate Binary Search Tree`__ 99 Recover Binary Search Tree 100 `Same Tree`__ 101 `Symmetric Tree`__ 102 `Binary Tree Level Order Traversal`__ 103 `Binary Tree Zigzag Level Order Traversal`__ 104 `Maximum Depth of Binary Tree`__ 105 Construct Binary Tree from Preorder and Inorder Traversal 106 Construct Binary Tree from Inorder and Postorder Traversal 107 `Binary Tree Level Order Traversal I`__ 108 Convert Sorted Array to Binary Search Tree 109 Convert Sorted List to Binary Search Tree 110 `Balanced Binary Tree`__ 111 `Minimum Depth of Binary Tree`__ 112 `Path Sum`__ 113 `Path Sum II`__ 114 `Flatten Binary Tree to Linked List`__ 115 `Distinct Subsequences`__ 116 `Populating Next Right Pointers in Each Node`__ 117 `Populating Next Right Pointers in Each Node II`__ 118 `Pascal's Triangle`__ 119 `Pascal's Triangle II`__ 120 `Triangle`__ 121 `Best Time to Buy and Sell Stock`__ 122 `Best Time to Buy and Sell Stock II`__ 123 `Best Time to Buy and Sell Stock III`__ 124 `Binary Tree Maximum Path Sum`__ 125 `Valid Palindrome`__ 126 `Word Ladder II`__ 127 `Word Ladder`__ 128 Longest Consecutive Sequence 129 `Sum Root to Leaf Numbers`__ 130 `Surrounded Regions`__ 131 `Palindrome Partitioning`__ 132 `Palindrome Partitioning II`__ 133 Clone Graph 134 `Gas Station`__ 135 `Candy`__ 136 `Single Number`__ 137 Single Number II 138 `Copy List with Random Pointer`__ 139 `Word Break`__ 140 `Word Break II`__ 141 `Linked List Cycle`__ 142 `Linked List Cycle II`__ 143 Reorder List 144 `Binary Tree Preorder Traversal`__ 145 `Binary Tree Postorder Traversal`__ 146 LRU Cache 147 Insertion Sort List 148 Sort List 149 Max Points on a Line 150 `Evaluate Reverse Polish Notation`__ 151 Reverse Words in a String 152 Maximum Product Subarray 153 `Find Minimum in Rotated Sorted Array`__ 154 `Find Minimum in Rotated Sorted Array II`__ === ================================================================ .. __: code/1-two-sum.py .. __: code/2-add-two-numbers.py .. __: code/3-longest-substring-without-repeating-characters.py .. __: code/4-median-of-two-sorted-arrays.py .. __: code/6-zigzag-conversion.py .. __: code/7-reverse-integer.py .. __: code/8-string-to-integer-atoi.py .. __: code/9-palindrome-number.py .. __: code/12-integer-to-roman.py .. __: code/13-roman-to-integer.py .. __: code/14-longest-common-prefix.py .. __: code/17-letter-combinations-of-a-phone-number.py .. __: code/18-4sum.py .. __: code/19-remove-nth-node-from-end-of-list.py .. __: code/20-valid-parentheses.py .. __: code/21-merge-two-sorted-lists.py .. __: code/22-generate-parentheses.py .. __: code/23-merge-k-sorted-lists.py .. __: code/26-remove-duplicates-from-sorted-array.py .. __: code/27-remove-element.py .. __: code/29-divide-two-integers.py .. __: code/31-next-permutation.py .. __: code/32-longest-valid-parentheses.py .. __: code/33-search-in-rotated-sorted-array.py .. __: code/34-search-for-a-range.py .. __: code/35-search-insert-position.py .. __: code/36-valid-sudoku.py .. __: code/37-sudoku-solver.py .. __: code/38-count-and-say.py .. __: code/39-combination-sum.py .. __: code/40-combination-sum-ii.py .. __: code/41-first-missing-positive.py .. __: code/43-multiply-strings.py .. __: code/45-jump-game-ii.py .. __: code/46-permutations.py .. __: code/47-permutations-ii.py .. __: code/49-anagrams.py .. __: code/50-powx-n.py .. __: code/51-n-queens.py .. __: code/52-n-queens-ii.py .. __: code/53-maximum-subarray.py .. __: code/54-spiral-matrix.py .. __: code/55-jump-game.py .. __: code/56-merge-intervals.py .. __: code/57-insert-interval.py .. __: code/59-spiral-matrix-ii.py .. __: code/60-permutation-sequence.py .. __: code/62-unique-paths.py .. __: code/63-unique-paths-ii.py .. __: code/64-minimum-path-sum.py .. __: code/66-plus-one.py .. __: code/67-add-binary.py .. __: code/70-climbing-stairs.py .. __: code/71-simplify-path.py .. __: code/72-edit-distance.py .. __: code/75-sort-colors.py .. __: code/76-minimum-window-substring.py .. __: code/77-combinations.py .. __: code/78-subsets.py .. __: code/80-remove-duplicates-from-sorted-array-ii.py .. __: code/81-search-in-rotated-sorted-array-ii.py .. __: code/84-largest-rectangle-in-histogram.py .. __: code/85-maximal-rectangle.py .. __: code/89-gray-code.py .. __: code/90-subsets-ii.py .. __: code/91-decode-ways.py .. __: code/93-restore-ip-addresses.py .. __: code/94-binary-tree-inorder-traversal.py .. __: code/96-unique-binary-search-trees.py .. __: code/98-validate-binary-search-tree.py .. __: code/100-same-tree.py .. __: code/101-symmetric-tree.py .. __: code/102-binary-tree-level-order-traversal.py .. __: code/103-binary-tree-zigzag-level-order-traversal.py .. __: code/104-maximum-depth-of-binary-tree.py .. __: code/107-binary-tree-level-order-traversal-ii.py .. __: code/110-balanced-binary-tree.py .. __: code/111-minimum-depth-of-binary-tree.py .. __: code/112-path-sum.py .. __: code/113-path-sum-ii.py .. __: code/114-flatten-binary-tree-to-linked-list.py .. __: code/115-distinct-subsequences.py .. __: code/116-populating-next-right-pointers-in-each-node.py .. __: code/117-populating-next-right-pointers-in-each-node-ii.py .. __: code/118-pascals-triangle.py .. __: code/119-pascals-triangle-ii.py .. __: code/120-triangle.py .. __: code/121-best-time-to-buy-and-sell-stock.py .. __: code/122-best-time-to-buy-and-sell-stock-ii.py .. __: code/123-best-time-to-buy-and-sell-stock-iii.py .. __: code/124-binary-tree-maximum-path-sum.py .. __: code/125-valid-palindrome.py .. __: code/126-word-ladder-ii.py .. __: code/127-word-ladder.py .. __: code/129-sum-root-to-leaf-numbers.py .. __: code/131-palindrome-partitioning.py .. __: code/132-palindrome-partitioning-ii.py .. __: code/130-surrounded-regions.py .. __: code/134-gas-station.py .. __: code/135-candy.py .. __: code/136-single-number.py .. __: code/138-copy-list-with-random-pointer.py .. __: code/139-word-break.py .. __: code/140-word-break-ii.py .. __: code/141-linked-list-cycle.py .. __: code/142-linked-list-cycle-ii.py .. __: code/144-binary-tree-preorder-traversal.py .. __: code/145-binary-tree-postorder-traversal.py .. __: code/150-evaluate-reverse-polish-notation.py .. __: code/153-find-minimum-in-rotated-sorted-array.py .. __: code/154-find-minimum-in-rotated-sorted-array-ii.py Progress ======== ==== ===================== DONE done WIP work in progress NIP not in-place TODO to do TLE time limit exceeded ==== ===================== Array ===== === ============================================ ====== 26 `Remove Duplicates from Sorted Array`__ DONE__ 27 `Remove Element`__ DONE__ 80 `Remove Duplicates from Sorted Array II`__ DONE__ === ============================================ ====== .. __: https://oj.leetcode.com/problems/remove-duplicates-from-sorted-array/ .. __: code/26-remove-duplicates-from-sorted-array.py .. __: https://oj.leetcode.com/problems/remove-element/ .. __: code/27-remove-element.py .. __: https://oj.leetcode.com/problems/remove-duplicates-from-sorted-array-ii/ .. __: code/80-remove-duplicates-from-sorted-array-ii.py Backtracking ============ === =================== ====== 37 `Sudoku Solver`__ DONE__ 51 `N-Queens`__ DONE__ 52 `N-Queens II`__ DONE__ === =================== ====== .. __: https://oj.leetcode.com/problems/sudoku-solver/ .. __: code/37-sudoku-solver.py .. __: https://oj.leetcode.com/problems/n-queens/ .. __: code/51-n-queens.py .. __: https://oj.leetcode.com/problems/n-queens-ii/ .. __: code/52-n-queens-ii.py Binary Search ============= === ============================================ ====== 4 `Median of Two Sorted Arrays`__ DONE__ 33 `Search in Rotated Sorted Array`__ DONE__ 34 `Search for a Range`__ DONE__ 35 `Search Insert Position`__ DONE__ 81 `Search in Rotated Sorted Array II`__ DONE__ 153 `Find Minimum in Rotated Sorted Array`__ DONE__ 154 `Find Minimum in Rotated Sorted Array II`__ DONE__ === ============================================ ====== .. __: https://oj.leetcode.com/problems/median-of-two-sorted-arrays/ .. __: code/4-median-of-two-sorted-arrays.py .. __: https://oj.leetcode.com/problems/search-in-rotated-sorted-array/ .. __: code/33-search-in-rotated-sorted-array.py .. __: https://oj.leetcode.com/problems/search-for-a-range/ .. __: code/34-search-for-a-range.py .. __: https://oj.leetcode.com/problems/search-insert-position/ .. __: code/35-search-insert-position.py .. __: https://oj.leetcode.com/problems/search-in-rotated-sorted-array-ii/ .. __: code/81-search-in-rotated-sorted-array-ii.py .. __: https://oj.leetcode.com/problems/find-minimum-in-rotated-sorted-array/ .. __: code/153-find-minimum-in-rotated-sorted-array.py .. __: https://oj.leetcode.com/problems/find-minimum-in-rotated-sorted-array-ii/ .. __: code/154-find-minimum-in-rotated-sorted-array-ii.py Binary Tree =========== === ==================================================== ====== 94 `Binary Tree Inorder Traversal`__ DONE__ 98 `Validate Binary Search Tree`__ DONE__ 100 `Same Tree`__ DONE__ 101 `Symmetric Tree`__ DONE__ 102 `Binary Tree Level Order Traversal`__ DONE__ 103 `Binary Tree Zigzag Level Order Traversal`__ DONE__ 104 `Maximum Depth of Binary Tree`__ DONE__ 107 `Binary Tree Level Order Traversal II`__ DONE__ 110 `Balanced Binary Tree`__ DONE__ 111 `Minimum Depth of Binary Tree`__ DONE__ 112 `Path Sum`__ DONE__ 113 `Path Sum II`__ DONE__ 114 `Flatten Binary Tree to Linked List`__ DONE__ 116 `Populating Next Right Pointers in Each Node`__ DONE__ 117 `Populating Next Right Pointers in Each Node II`__ NIP__ 124 `Binary Tree Maximum Path Sum`__ DONE__ 129 `Sum Root to Leaf Numbers`__ DONE__ 144 `Binary Tree Preorder Traversal`__ DONE__ 145 `Binary Tree Postorder Traversal`__ DONE__ === ==================================================== ====== .. __: https://oj.leetcode.com/problems/binary-tree-inorder-traversal/ .. __: code/94-binary-tree-inorder-traversal.py .. __: https://oj.leetcode.com/problems/validate-binary-search-tree/ .. __: code/98-validate-binary-search-tree.py .. __: https://oj.leetcode.com/problems/same-tree/ .. __: code/100-same-tree.py .. __: https://oj.leetcode.com/problems/symmetric-tree/ .. __: code/101-symmetric-tree.py .. __: https://oj.leetcode.com/problems/binary-tree-level-order-traversal/ .. __: code/102-binary-tree-level-order-traversal.py .. __: https://oj.leetcode.com/problems/binary-tree-zigzag-level-order-traversal/ .. __: code/103-binary-tree-zigzag-level-order-traversal.py .. __: https://oj.leetcode.com/problems/maximum-depth-of-binary-tree/ .. __: code/104-maximum-depth-of-binary-tree.py .. __: https://oj.leetcode.com/problems/binary-tree-level-order-traversal-ii/ .. __: code/107-binary-tree-level-order-traversal-ii.py .. __: https://oj.leetcode.com/problems/balanced-binary-tree/ .. __: code/110-balanced-binary-tree.py .. __: https://oj.leetcode.com/problems/minimum-depth-of-binary-tree/ .. __: code/111-minimum-depth-of-binary-tree.py .. __: https://oj.leetcode.com/problems/path-sum/ .. __: code/112-path-sum.py .. __: https://oj.leetcode.com/problems/path-sum-ii/ .. __: code/113-path-sum-ii.py .. __: https://oj.leetcode.com/problems/flatten-binary-tree-to-linked-list/ .. __: code/114-flatten-binary-tree-to-linked-list.py .. __: https://oj.leetcode.com/problems/populating-next-right-pointers-in-each-node/ .. __: code/116-populating-next-right-pointers-in-each-node.py .. __: https://oj.leetcode.com/problems/populating-next-right-pointers-in-each-node-ii/ .. __: code/117-populating-next-right-pointers-in-each-node-ii.py .. __: https://oj.leetcode.com/problems/binary-tree-maximum-path-sum/ .. __: code/124-binary-tree-maximum-path-sum.py .. __: https://oj.leetcode.com/problems/sum-root-to-leaf-numbers/ .. __: code/129-sum-root-to-leaf-numbers.py .. __: https://oj.leetcode.com/problems/binary-tree-preorder-traversal/ .. __: code/144-binary-tree-preorder-traversal.py .. __: https://oj.leetcode.com/problems/binary-tree-postorder-traversal/ .. __: code/145-binary-tree-postorder-traversal.py Bit === === =============================== ====== 29 `Divide Two Integers`__ DONE__ 136 `Single Number`__ DONE__ === =============================== ====== .. __: https://oj.leetcode.com/problems/divide-two-integers/ .. __: code/29-divide-two-integers.py .. __: https://oj.leetcode.com/problems/single-number/ .. __: code/136-single-number.py Combinatorics ============= === ========================================== ====== 17 `Letter Combinations of a Phone Number`__ DONE__ 22 `Generate Parentheses`__ DONE__ 31 `Next Permutation`__ DONE__ 39 `Combination Sum`__ DONE__ 40 `Combination Sum II`__ DONE__ 46 `Permutations`__ DONE__ 47 `Permutations II`__ DONE__ 60 `Permutation Sequence`__ DONE__ 62 `Unique Paths`__ DONE__ 63 `Unique Paths II`__ DONE__ 77 `Combinations`__ DONE__ 78 `Subsets`__ DONE__ 89 `Gray Code`__ DONE__ 90 `Subsets II`__ DONE__ 96 `Unique Binary Search Trees`__ DONE__ === ========================================== ====== .. __: https://oj.leetcode.com/problems/letter-combinations-of-a-phone-number/ .. __: code/17-letter-combinations-of-a-phone-number.py .. __: https://oj.leetcode.com/problems/generate-parentheses/ .. __: code/22-generate-parentheses.py .. __: https://oj.leetcode.com/problems/next-permutation/ .. __: code/31-next-permutation.py .. __: https://oj.leetcode.com/problems/combination-sum/ .. __: code/39-combination-sum.py .. __: https://oj.leetcode.com/problems/combination-sum-ii/ .. __: code/40-combination-sum-ii.py .. __: https://oj.leetcode.com/problems/permutations/ .. __: code/46-permutations.py .. __: https://oj.leetcode.com/problems/permutations-ii/ .. __: code/47-permutations-ii.py .. __: https://oj.leetcode.com/problems/permutation-sequence/ .. __: code/60-permutation-sequence.py .. __: https://oj.leetcode.com/problems/unique-paths/ .. __: code/62-unique-paths.py .. __: https://oj.leetcode.com/problems/unique-paths-ii/ .. __: code/63-unique-paths-ii.py .. __: https://oj.leetcode.com/problems/combinations/ .. __: code/77-combinations.py .. __: https://oj.leetcode.com/problems/subsets/ .. __: code/78-subsets.py .. __: https://oj.leetcode.com/problems/gray-code/ .. __: code/89-gray-code.py .. __: https://oj.leetcode.com/problems/subsets-ii/ .. __: code/90-subsets-ii.py .. __: https://oj.leetcode.com/problems/unique-binary-search-trees/ .. __: code/96-unique-binary-search-trees.py Digit ===== === ============================= ====== 7 `Reverse Integer`__ DONE__ 8 `String to Integer (atoi)`__ DONE__ 9 `Palindrome Number`__ DONE__ 12 `Integer to Roman`__ DONE__ 13 `Roman to Integer`__ DONE__ 38 `Count and Say`__ DONE__ 43 `Multiply Strings`__ DONE__ 50 `Pow(x, n)`__ DONE__ 66 `Plus One`__ DONE__ 67 `Add Binary`__ DONE__ === ============================= ====== .. __: https://oj.leetcode.com/problems/reverse-integer/ .. __: code/7-reverse-integer.py .. __: https://oj.leetcode.com/problems/string-to-integer-atoi/ .. __: code/8-string-to-integer-atoi.py .. __: https://oj.leetcode.com/problems/palindrome-number/ .. __: code/9-palindrome-number.py .. __: https://oj.leetcode.com/problems/integer-to-roman/ .. __: code/12-integer-to-roman.py .. __: https://oj.leetcode.com/problems/roman-to-integer/ .. __: code/13-roman-to-integer.py .. __: https://oj.leetcode.com/problems/count-and-say/ .. __: code/38-count-and-say.py .. __: https://oj.leetcode.com/problems/multiply-strings/ .. __: code/43-multiply-strings.py .. __: https://oj.leetcode.com/problems/powx-n/ .. __: code/50-powx-n.py .. __: https://oj.leetcode.com/problems/plus-one/ .. __: code/66-plus-one.py .. __: https://oj.leetcode.com/problems/add-binary/ .. __: code/67-add-binary.py Dynamic Programming =================== === ========================================= ====== 45 `Jump Game II`__ DONE__ 53 `Maximum Subarray`__ DONE__ 55 `Jump Game`__ DONE__ 64 `Minimum Path Sum`__ DONE__ 70 `Climbing Stairs`__ DONE__ 72 `Edit Distance`__ DONE__ 85 `Maximal Rectangle`__ DONE__ 91 `Decode Ways`__ DONE__ 121 `Best Time to Buy and Sell Stock`__ DONE__ 122 `Best Time to Buy and Sell Stock II`__ DONE__ 123 `Best Time to Buy and Sell Stock III`__ DONE__ 131 `Palindrome Partitioning`__ DONE__ 132 `Palindrome Partitioning II`__ DONE__ 139 `Word Break`__ DONE__ 140 `Word Break II`__ DONE__ === ========================================= ====== .. __: https://oj.leetcode.com/problems/jump-game-ii/ .. __: code/45-jump-game-ii.py .. __: https://oj.leetcode.com/problems/maximum-subarray/ .. __: code/53-maximum-subarray.py .. __: https://oj.leetcode.com/problems/jump-game/ .. __: code/55-jump-game.py .. __: https://oj.leetcode.com/problems/minimum-path-sum/ .. __: code/64-minimum-path-sum.py .. __: https://oj.leetcode.com/problems/climbing-stairs/ .. __: code/70-climbing-stairs.py .. __: https://oj.leetcode.com/problems/edit-distance/ .. __: code/72-edit-distance.py .. __: https://oj.leetcode.com/problems/maximal-rectangle/ .. __: code/85-maximal-rectangle.py .. __: https://oj.leetcode.com/problems/decode-ways/ .. __: code/91-decode-ways.py .. __: https://oj.leetcode.com/problems/best-time-to-buy-and-sell-stock/ .. __: code/121-best-time-to-buy-and-sell-stock.py .. __: https://oj.leetcode.com/problems/best-time-to-buy-and-sell-stock-ii/ .. __: code/122-best-time-to-buy-and-sell-stock-ii.py .. __: https://oj.leetcode.com/problems/best-time-to-buy-and-sell-stock-iii/ .. __: code/123-best-time-to-buy-and-sell-stock-iii.py .. __: https://oj.leetcode.com/problems/palindrome-partitioning/ .. __: code/131-palindrome-partitioning.py .. __: https://oj.leetcode.com/problems/palindrome-partitioning-ii/ .. __: code/132-palindrome-partitioning-ii.py .. __: https://oj.leetcode.com/problems/word-break/ .. __: code/139-word-break.py .. __: https://oj.leetcode.com/problems/word-break-ii/ .. __: code/140-word-break-ii.py Linked List =========== === ===================================== ====== 2 `Add Two Numbers`__ DONE__ 19 `Remove Nth Node From End of List`__ DONE__ 21 `Merge Two Sorted Lists`__ DONE__ 23 `Merge k Sorted Lists`__ DONE__ 24 `Swap Nodes in Pairs`__ NIP__ 25 `Reverse Nodes in k-Group`__ NIP__ === ===================================== ====== .. __: https://oj.leetcode.com/problems/add-two-numbers/ .. __: code/2-add-two-numbers.py .. __: https://oj.leetcode.com/problems/remove-nth-node-from-end-of-list/ .. __: code/19-remove-nth-node-from-end-of-list.py .. __: https://oj.leetcode.com/problems/merge-two-sorted-lists/ .. __: code/21-merge-two-sorted-lists.py .. __: https://oj.leetcode.com/problems/merge-k-sorted-lists/ .. __: code/23-merge-k-sorted-lists.py .. __: https://oj.leetcode.com/problems/swap-nodes-in-pairs/ .. __: code/24-swap-nodes-in-pairs.py .. __: https://oj.leetcode.com/problems/reverse-nodes-in-k-group/ .. __: code/25-reverse-nodes-in-k-group.py Matching ======== === ================================ ====== 10 `Regular Expression Matching`__ TODO__ 28 `Implement strStr()`__ TODO__ 44 `Wildcard Matching`__ TODO__ === ================================ ====== .. __: https://oj.leetcode.com/problems/regular-expression-matching/ .. __: code/10-regular-expression-matching.py .. __: https://oj.leetcode.com/problems/implement-strstr/ .. __: code/28-implement-strstr.py .. __: https://oj.leetcode.com/problems/wildcard-matching/ .. __: code/44-wildcard-matching.py Stack ===== === ====================================== ====== 20 `Valid Parentheses`__ DONE__ 32 `Longest Valid Parentheses`__ DONE__ 71 `Simplify Path`__ DONE__ 84 `Largest Rectangle in Histogram`__ DONE__ 150 `Evaluate Reverse Polish Notation`__ DONE__ === ====================================== ====== .. __: https://oj.leetcode.com/problems/valid-parentheses/ .. __: code/20-valid-parentheses.py .. __: https://oj.leetcode.com/problems/longest-valid-parentheses/ .. __: code/32-longest-valid-parentheses.py .. __: https://oj.leetcode.com/problems/simplify-path/ .. __: code/71-simplify-path.py .. __: https://oj.leetcode.com/problems/largest-rectangle-in-histogram/ .. __: code/84-largest-rectangle-in-histogram.py .. __: https://oj.leetcode.com/problems/evaluate-reverse-polish-notation/ .. __: code/150-evaluate-reverse-polish-notation.py Sum === === ================= ====== 1 `Two Sum`__ DONE__ 15 `3Sum`__ TLE__ 16 `3Sum Closest`__ TODO__ 18 `4Sum`__ DONE__ === ================= ====== .. __: https://oj.leetcode.com/problems/two-sum/ .. __: code/1-two-sum.py .. __: https://oj.leetcode.com/problems/3sum/ .. __: code/15-3sum.py .. __: https://oj.leetcode.com/problems/3sum-closest/ .. __: code/16-3sum-closest.py .. __: https://oj.leetcode.com/problems/4sum/ .. __: code/18-4sum.py Uncategorized ============= === =================================================== ====== 3 `Longest Substring Without Repeating Characters`__ DONE__ 6 `ZigZag Conversion`__ DONE__ 14 `Longest Common Prefix`__ DONE__ 36 `Valid Sudoku`__ DONE__ 41 `First Missing Positive`__ DONE__ 49 `Anagrams`__ DONE__ 54 `Spiral Matrix`__ DONE__ 56 `Merge Intervals`__ DONE__ 57 `Insert Interval`__ DONE__ 59 `Spiral Matrix II`__ DONE__ 75 `Sort Colors`__ DONE__ 76 `Minimum Window Substring`__ DONE__ 93 `Restore IP Addresses`__ DONE__ 115 `Distinct Subsequences`__ DONE__ 118 `Pascal's Triangle`__ DONE__ 119 `Pascal's Triangle II`__ DONE__ 120 `Triangle`__ DONE__ 125 `Valid Palindrome`__ DONE__ 126 `Word Ladder II`__ DONE__ 127 `Word Ladder`__ DONE__ 130 `Surrounded Regions`__ DONE__ 134 `Gas Station`__ DONE__ 135 `Candy`__ DONE__ 138 `Copy List with Random Pointer`__ DONE__ 141 `Linked List Cycle`__ DONE__ 142 `Linked List Cycle II`__ DONE__ === =================================================== ====== .. __: https://oj.leetcode.com/problems/longest-substring-without-repeating-characters/ .. __: code/3-longest-substring-without-repeating-characters.py .. __: https://oj.leetcode.com/problems/zigzag-conversion/ .. __: code/6-zigzag-conversion.py .. __: https://oj.leetcode.com/problems/longest-common-prefix/ .. __: code/14-longest-common-prefix.py .. __: https://oj.leetcode.com/problems/valid-sudoku/ .. __: code/36-valid-sudoku.py .. __: https://oj.leetcode.com/problems/first-missing-positive/ .. __: code/41-first-missing-positive.py .. __: https://oj.leetcode.com/problems/anagrams/ .. __: code/49-anagrams.py .. __: https://oj.leetcode.com/problems/spiral-matrix/ .. __: code/54-spiral-matrix.py .. __: https://oj.leetcode.com/problems/merge-intervals/ .. __: code/56-merge-intervals.py .. __: https://oj.leetcode.com/problems/insert-interval/ .. __: code/57-insert-interval.py .. __: https://oj.leetcode.com/problems/spiral-matrix-ii/ .. __: code/59-spiral-matrix-ii.py .. __: https://oj.leetcode.com/problems/sort-colors/ .. __: code/75-sort-colors.py .. __: https://oj.leetcode.com/problems/minimum-window-substring/ .. __: code/76-minimum-window-substring.py .. __: https://oj.leetcode.com/problems/restore-ip-addresses/ .. __: code/93-restore-ip-addresses.py .. __: https://oj.leetcode.com/problems/distinct-subsequences/ .. __: code/115-distinct-subsequences.py .. __: https://oj.leetcode.com/problems/pascals-triangle/ .. __: code/118-pascals-triangle.py .. __: https://oj.leetcode.com/problems/pascals-triangle-ii/ .. __: code/119-pascals-triangle-ii.py .. __: https://oj.leetcode.com/problems/triangle/ .. __: code/120-triangle.py .. __: https://oj.leetcode.com/problems/valid-palindrome/ .. __: code/125-valid-palindrome.py .. __: https://oj.leetcode.com/problems/word-ladder-ii/ .. __: code/126-word-ladder-ii.py .. __: https://oj.leetcode.com/problems/word-ladder/ .. __: code/127-word-ladder.py .. __: https://oj.leetcode.com/problems/surrounded-regions/ .. __: code/130-surrounded-regions.py .. __: https://oj.leetcode.com/problems/gas-station/ .. __: code/134-gas-station.py .. __: https://oj.leetcode.com/problems/candy/ .. __: code/135-candy.py .. __: https://oj.leetcode.com/problems/copy-list-with-random-pointer/ .. __: code/138-copy-list-with-random-pointer.py .. __: https://oj.leetcode.com/problems/linked-list-cycle/ .. __: code/141-linked-list-cycle.py .. __: https://oj.leetcode.com/problems/linked-list-cycle-ii/ .. __: code/142-linked-list-cycle-ii.py