|
2 | 2 |
|
3 | 3 | ## LeetCode
|
4 | 4 |
|
5 |
| -| Category | Problem | |
6 |
| -|--------------|--------------------------------------------------------------------------------------------------------------| |
7 |
| -| Tree | [235. Lowest Common Ancestor of a Binary Search Tree](./src/main/java/org/sean/tree/Lca.java) | |
8 |
| -| | [199. Binary Tree Right Side View](./src/main/java/org/sean/tree/BinaryTreeRightSide.java) | |
9 |
| -| | [669. Trim a Binary Search Tree](./src/main/java/org/sean/tree/BinarySearchTreeTrimmer.java) | |
10 |
| -| | [450. Delete Node in a BST](./src/main/java/org/sean/tree/BinarySearchTreeTrimmer.java) | |
11 |
| -| | [103. Binary Tree Zigzag Level Order Traversal](./src/main/java/org/sean/tree/ZigzagTraversal.java) | |
12 |
| -| | [110. Balanced Binary Tree](./src/main/java/org/sean/tree/BalancedBinaryTree.java) | |
13 |
| -| | [297. Serialize and Deserialize Binary Tree](./src/main/java/org/sean/tree/TreeSerializer.java) | |
14 |
| -| | [1609. Even Odd Tree](./src/main/java/org/sean/tree/EvenOddTree.java) | |
15 |
| -| | [662. Maximum Width of Binary Tree](./src/main/java/org/sean/tree/MaxWidthBinaryTree.java) | |
16 |
| -| | [814. Binary Tree Pruning](./src/main/java/org/sean/tree/BinaryTreePruner.java) | |
17 |
| -| | [1325. Delete Leaves With a Given Value](./src/main/java/org/sean/tree/NodeCleaner.java) | |
18 |
| -| | [637. Average of Levels in Binary Tree](./src/main/java/org/sean/tree/AvgLevelResolver.java) | |
19 |
| -| | [116. Populating Next Right Pointers in Each Node](./src/main/java/org/sean/tree/RightPointerBuilder.java) | |
20 |
| -| | [107. Binary Tree Level Order Traversal II](./src/main/java/org/sean/tree/LevelTraversalSolution.java) | |
21 |
| -| | [951 Flip Equivalent Binary Trees](./src/main/java/org/sean/tree/FlipEquivalentTree.java) | |
22 |
| -| | [617. Merge Two Binary Trees](./src/main/java/org/sean/tree/TreeMerger.java) | |
23 |
| -| Array | [22. Generate Parentheses](./src/main/java/org/sean/array/ParenthesesGenerator.java) | |
24 |
| -| | [703. Kth Largest Element in a Stream](./src/main/java/org/sean/array/KthStreamLargest.java) | |
25 |
| -| | [925. Long Pressed Name](./src/main/java/org/sean/array/LongPressedName.java) | |
26 |
| -| | [283 Move Zeroes](./src/main/java/org/sean/array/ZeroesMover.java) | |
27 |
| -| | [540. Single Element in a Sorted Array](./src/main/java/org/sean/array/SingleElemFinder.java) | |
28 |
| -| | [33. Search in Rotated Sorted Array](./src/main/java/org/sean/array/ArraySearch.java) | |
29 |
| -| | [819. Most Common Word](./src/main/java/org/sean/array/CommonWordsCounter.java) | |
30 |
| -| | [565. Array Nesting](./src/main/java/org/sean/array/NestingArray.java) | |
31 |
| -| | [3. Longest Substring Without Repeating Characters](./src/main/java/org/sean/array/LongestSubstrFinder.java) | |
32 |
| -| | [120. Triangle](./src/main/java/org/sean/array/Triangle.java) | |
33 |
| -| | [981. Time Based Key-Value Store](./src/main/java/org/sean/array/TimeMap.java) | |
34 |
| -| | [118. Pascal's Triangle](./src/main/java/org/sean/array/PascalTriangle.java) | |
35 |
| -| | [56. Merge Intervals](./src/main/java/org/sean/array/IntervalMerger.java) | |
36 |
| -| | [239. Sliding Window Maximum](./src/main/java/org/sean/array/SlidingWindowMax.java) | |
37 |
| -| | [146. LRU Cache](./src/main/java/org/sean/array/LRUCache.java) | |
38 |
| -| | [128. Longest Consecutive Sequence](./src/main/java/org/sean/array/ConsecutiveSequenceFinder.java) | |
39 |
| -| | [215. Kth Largest Element in an Array](./src/main/java/org/sean/array/KthLargestFinder.java) | |
40 |
| -| | [17. Letter Combinations of a Phone Number](./src/main/java/org/sean/array/LetterCombinationFinder.java) | |
41 |
| -| | [680. Valid Palindrome II](./src/main/java/org/sean/array/PalindromeValidator.java) | |
42 |
| -| | [733. Flood Fill](./src/main/java/org/sean/array/ImageFloodFill.java) | |
43 |
| -| | [49. Group Anagrams](./src/main/java/org/sean/array/AnagramSorter.java) | |
44 |
| -| | [42. Trapping Rain Water](./src/main/java/org/sean/array/WaterBar.java) | |
45 |
| -| | [200. Number of Islands](./src/main/java/org/sean/array/IslandCounter.java) | |
46 |
| -| | [973. K Closest Points to Origin](./src/main/java/org/sean/array/KClosestPoints.java) | |
47 |
| -| | [448. Find All Numbers Disappeared in an Array](./src/main/java/org/sean/array/ElementFinder.java) | |
48 |
| -| | [1046. Last Stone Weight](./src/main/java/org/sean/array/StoneWeightResolver.java) | |
49 |
| -| | [436. Find Right Interval](./src/main/java/org/sean/array/RightIntervalFinder.java) | |
50 |
| -| | [442. Find All Duplicates in an Array](./src/main/java/org/sean/array/DuplicatesFinder.java) | |
51 |
| -| | [904 Fruit into baskets](./src/main/java/org/sean/array/FruitCounter.java) | |
52 |
| -| | [347. Top K Frequent Elements](./src/main/java/org/sean/array/FrequentElemFinder.java) | |
53 |
| -| | [240. Search a 2D Matrix II](./src/main/java/org/sean/array/MatrixSearcher2.java) | |
54 |
| -| | [130. Surrounded Regions](./src/main/java/org/sean/array/RegionDetector.java) | |
55 |
| -| | [27. Remove Element](./src/main/java/org/sean/array/ElementRemoval.java) | |
56 |
| -| | [12. Integer to Roman](./src/main/java/org/sean/array/IntRomanConverter.java) | |
57 |
| -| | [41. First Missing Positive](./src/main/java/org/sean/array/MissingPositiveFinder.java) | |
58 |
| -| Linkedlist | [2. Add Two Numbers](./src/main/java/org/sean/linkedlist/NumAdder.java) | |
59 |
| -| Backtracking | [463. Island Perimeter](./src/main/java/org/sean/backtracking/IslandPerimeterCalculator.java) | |
60 |
| -| | [51. N-Queens](./src/main/java/org/sean/backtracking/NQueens.java) | |
61 |
| -| | [79. Word Search](./src/main/java/org/sean/backtracking/WordSearcher.java) | |
62 |
| -| Graph | [207. Course Schedule](./src/main/java/org/sean/graph/CourseSchedule.java) | |
63 |
| -| Recursive | [62. Unique Paths](./src/main/java/org/sean/recursive/UniquePaths.java) | |
64 |
| -| | [124. Binary Tree Maximum Path Sum](./src/main/java/org/sean/recursive/MaxPathCalculator.java) | |
65 |
| -| | [1448. Count Good Nodes in Binary Tree](./src/main/java/org/sean/recursive/GoodNodeCounter.java) | |
66 |
| -| | [437. Path Sum III](./src/main/java/org/sean/recursive/PathSumCounter.java) | |
67 |
| -| | [341. Flatten Nested List Iterator](./src/main/java/org/sean/recursive/NestedIterator.java) | |
68 |
| -| | [63. Unique Paths II](./src/main/java/org/sean/recursive/UniquePaths2.java) | |
69 |
| -| | [64. Minimum Path Sum](./src/main/java/org/sean/recursive/MinPathFinder.java) | |
70 |
| -| | [112. Path Sum](./src/main/java/org/sean/recursive/RootLeafPathFinder.java) | |
71 |
| -| | [129. Sum Root to Leaf Numbers](./src/main/java/org/sean/recursive/RootLeafPathCalculator.java) | |
72 |
| -| | [113. Path Sum II](./src/main/java/org/sean/recursive/RootLeafSumPathFinder.java) | |
73 |
| -| Concurrency | [1114. Print in Order](./src/main/java/org/sean/concurrency/OrderPrinter.java) | |
74 |
| -| | [1115 Print FooBar Alternately](./src/main/java/org/sean/concurrency/FooBar.java) | |
75 |
| -| Trie | [211. Add and Search Word - Data structure design](./src/main/java/org/sean/trie/Trie.java) | |
76 |
| -| Sorting | [451. Sort Characters By Frequency](./src/main/java/org/sean/sorting/FrequencySort.java) | |
77 |
| -| | [791. Custom Sort String](./src/main/java/org/sean/sorting/CustomSort.java) | |
78 |
| -| String | [459. Repeated Substring Pattern](./src/main/java/org/sean/string/RepeatedSubstrFinder.java) | |
79 |
| -| | [763. Partition Labels](./src/main/java/org/sean/string/LabelPartition.java) | |
80 |
| -| | [890. Find and Replace Pattern](./src/main/java/org/sean/string/PatternFinder.java) | |
81 |
| -| Dynamicpro | [1048. Longest String Chain](./src/main/java/org/sean/dynamicpro/LongestStringChain.java) | |
82 |
| -| | [139. Word Break](./src/main/java/org/sean/dynamicpro/WordBreak.java) | |
83 |
| -| | [392. Is Subsequence](./src/main/java/org/sean/dynamicpro/SubsequenceChecker.java) | |
84 |
| -| | [300. Longest Increasing Subsequence](./src/main/java/org/sean/dynamicpro/Lis.java) | |
85 |
| -| | [39. Combination Sum](./src/main/java/org/sean/dynamicpro/CombinationSum.java) | |
86 |
| -| | [216. Combination Sum III](./src/main/java/org/sean/dynamicpro/CombinationSum3.java) | |
87 |
| -| | [322. Coin Change](./src/main/java/org/sean/dynamicpro/CoinExchanger.java) | |
88 |
| -| | [40. Combination Sum II](./src/main/java/org/sean/dynamicpro/CombinationSum2.java) | |
89 |
| -| Stack | [394. Decode String](./src/main/java/org/sean/stack/StringDecoder.java) | |
90 |
| -| | [844. Backspace String Compare](./src/main/java/org/sean/stack/BackspaceStr.java) | |
91 |
| -| | [20. Valid Parentheses](./src/main/java/org/sean/stack/ParenthesesValidator.java) | |
| 5 | +| Category | Problem | |
| 6 | +| --------- | ------------------ | |
| 7 | +| Tree | [235. Lowest Common Ancestor of a Binary Search Tree](./src/main/java/org/sean/tree/Lca.java) | |
| 8 | +| | [199. Binary Tree Right Side View](./src/main/java/org/sean/tree/BinaryTreeRightSide.java) | |
| 9 | +| | [669. Trim a Binary Search Tree](./src/main/java/org/sean/tree/BinarySearchTreeTrimmer.java) | |
| 10 | +| | [450. Delete Node in a BST](./src/main/java/org/sean/tree/BinarySearchTreeTrimmer.java) | |
| 11 | +| | [103. Binary Tree Zigzag Level Order Traversal](./src/main/java/org/sean/tree/ZigzagTraversal.java) | |
| 12 | +| | [110. Balanced Binary Tree](./src/main/java/org/sean/tree/BalancedBinaryTree.java) | |
| 13 | +| | [297. Serialize and Deserialize Binary Tree](./src/main/java/org/sean/tree/TreeSerializer.java) | |
| 14 | +| | [1609. Even Odd Tree](./src/main/java/org/sean/tree/EvenOddTree.java) | |
| 15 | +| | [662. Maximum Width of Binary Tree](./src/main/java/org/sean/tree/MaxWidthBinaryTree.java) | |
| 16 | +| | [814. Binary Tree Pruning](./src/main/java/org/sean/tree/BinaryTreePruner.java) | |
| 17 | +| | [1325. Delete Leaves With a Given Value](./src/main/java/org/sean/tree/NodeCleaner.java) | |
| 18 | +| | [637. Average of Levels in Binary Tree](./src/main/java/org/sean/tree/AvgLevelResolver.java) | |
| 19 | +| | [116. Populating Next Right Pointers in Each Node](./src/main/java/org/sean/tree/RightPointerBuilder.java) | |
| 20 | +| | [107. Binary Tree Level Order Traversal II](./src/main/java/org/sean/tree/LevelTraversalSolution.java) | |
| 21 | +| | [951 Flip Equivalent Binary Trees](./src/main/java/org/sean/tree/FlipEquivalentTree.java) | |
| 22 | +| | [617. Merge Two Binary Trees](./src/main/java/org/sean/tree/TreeMerger.java) | |
| 23 | +| | [545. Boundary of Binary Tree](./src/main/java/org/sean/tree/TreeBoundary.java) | |
| 24 | +| Array | [22. Generate Parentheses](./src/main/java/org/sean/array/ParenthesesGenerator.java) | |
| 25 | +| | [703. Kth Largest Element in a Stream](./src/main/java/org/sean/array/KthStreamLargest.java) | |
| 26 | +| | [189. Rotate Array](./src/main/java/org/sean/array/RotateArray.java) | |
| 27 | +| | [925. Long Pressed Name](./src/main/java/org/sean/array/LongPressedName.java) | |
| 28 | +| | [283 Move Zeroes](./src/main/java/org/sean/array/ZeroesMover.java) | |
| 29 | +| | [540. Single Element in a Sorted Array](./src/main/java/org/sean/array/SingleElemFinder.java) | |
| 30 | +| | [33. Search in Rotated Sorted Array](./src/main/java/org/sean/array/ArraySearch.java) | |
| 31 | +| | [819. Most Common Word](./src/main/java/org/sean/array/CommonWordsCounter.java) | |
| 32 | +| | [565. Array Nesting](./src/main/java/org/sean/array/NestingArray.java) | |
| 33 | +| | [3. Longest Substring Without Repeating Characters](./src/main/java/org/sean/array/LongestSubstrFinder.java) | |
| 34 | +| | [120. Triangle](./src/main/java/org/sean/array/Triangle.java) | |
| 35 | +| | [981. Time Based Key-Value Store](./src/main/java/org/sean/array/TimeMap.java) | |
| 36 | +| | [118. Pascal's Triangle](./src/main/java/org/sean/array/PascalTriangle.java) | |
| 37 | +| | [56. Merge Intervals](./src/main/java/org/sean/array/IntervalMerger.java) | |
| 38 | +| | [239. Sliding Window Maximum](./src/main/java/org/sean/array/SlidingWindowMax.java) | |
| 39 | +| | [146. LRU Cache](./src/main/java/org/sean/array/LRUCache.java) | |
| 40 | +| | [128. Longest Consecutive Sequence](./src/main/java/org/sean/array/ConsecutiveSequenceFinder.java) | |
| 41 | +| | [215. Kth Largest Element in an Array](./src/main/java/org/sean/array/KthLargestFinder.java) | |
| 42 | +| | [17. Letter Combinations of a Phone Number](./src/main/java/org/sean/array/LetterCombinationFinder.java) | |
| 43 | +| | [680. Valid Palindrome II](./src/main/java/org/sean/array/PalindromeValidator.java) | |
| 44 | +| | [733. Flood Fill](./src/main/java/org/sean/array/ImageFloodFill.java) | |
| 45 | +| | [49. Group Anagrams](./src/main/java/org/sean/array/AnagramSorter.java) | |
| 46 | +| | [42. Trapping Rain Water](./src/main/java/org/sean/array/WaterBar.java) | |
| 47 | +| | [200. Number of Islands](./src/main/java/org/sean/array/IslandCounter.java) | |
| 48 | +| | [973. K Closest Points to Origin](./src/main/java/org/sean/array/KClosestPoints.java) | |
| 49 | +| | [724. Find Pivot Index](./src/main/java/org/sean/array/PivotFinder.java) | |
| 50 | +| | [1046. Last Stone Weight](./src/main/java/org/sean/array/StoneWeightResolver.java) | |
| 51 | +| | [436. Find Right Interval](./src/main/java/org/sean/array/RightIntervalFinder.java) | |
| 52 | +| | [442. Find All Duplicates in an Array](./src/main/java/org/sean/array/DuplicatesFinder.java) | |
| 53 | +| | [904 Fruit into baskets](./src/main/java/org/sean/array/FruitCounter.java) | |
| 54 | +| | [347. Top K Frequent Elements](./src/main/java/org/sean/array/FrequentElemFinder.java) | |
| 55 | +| | [240. Search a 2D Matrix II](./src/main/java/org/sean/array/MatrixSearcher2.java) | |
| 56 | +| | [130. Surrounded Regions](./src/main/java/org/sean/array/RegionDetector.java) | |
| 57 | +| | [27. Remove Element](./src/main/java/org/sean/array/ElementRemoval.java) | |
| 58 | +| | [12. Integer to Roman](./src/main/java/org/sean/array/IntRomanConverter.java) | |
| 59 | +| | [41. First Missing Positive](./src/main/java/org/sean/array/MissingPositiveFinder.java) | |
| 60 | +| Linkedlist | [2. Add Two Numbers](./src/main/java/org/sean/linkedlist/NumAdder.java) | |
| 61 | +| | [86. Partition List](./src/main/java/org/sean/linkedlist/ListPartition.java) | |
| 62 | +| Backtracking | [463. Island Perimeter](./src/main/java/org/sean/backtracking/IslandPerimeterCalculator.java) | |
| 63 | +| | [51. N-Queens](./src/main/java/org/sean/backtracking/NQueens.java) | |
| 64 | +| | [79. Word Search](./src/main/java/org/sean/backtracking/WordSearcher.java) | |
| 65 | +| Graph | [207. Course Schedule](./src/main/java/org/sean/graph/CourseSchedule.java) | |
| 66 | +| Recursive | [62. Unique Paths](./src/main/java/org/sean/recursive/UniquePaths.java) | |
| 67 | +| | [124. Binary Tree Maximum Path Sum](./src/main/java/org/sean/recursive/MaxPathCalculator.java) | |
| 68 | +| | [1448. Count Good Nodes in Binary Tree](./src/main/java/org/sean/recursive/GoodNodeCounter.java) | |
| 69 | +| | [437. Path Sum III](./src/main/java/org/sean/recursive/PathSumCounter.java) | |
| 70 | +| | [341. Flatten Nested List Iterator](./src/main/java/org/sean/recursive/NestedIterator.java) | |
| 71 | +| | [63. Unique Paths II](./src/main/java/org/sean/recursive/UniquePaths2.java) | |
| 72 | +| | [64. Minimum Path Sum](./src/main/java/org/sean/recursive/MinPathFinder.java) | |
| 73 | +| | [112. Path Sum](./src/main/java/org/sean/recursive/RootLeafPathFinder.java) | |
| 74 | +| | [129. Sum Root to Leaf Numbers](./src/main/java/org/sean/recursive/RootLeafPathCalculator.java) | |
| 75 | +| | [113. Path Sum II](./src/main/java/org/sean/recursive/RootLeafSumPathFinder.java) | |
| 76 | +| Concurrency | [1114. Print in Order](./src/main/java/org/sean/concurrency/OrderPrinter.java) | |
| 77 | +| | [1115 Print FooBar Alternately](./src/main/java/org/sean/concurrency/FooBar.java) | |
| 78 | +| Trie | [211. Add and Search Word - Data structure design](./src/main/java/org/sean/trie/Trie.java) | |
| 79 | +| Sorting | [451. Sort Characters By Frequency](./src/main/java/org/sean/sorting/FrequencySort.java) | |
| 80 | +| | [791. Custom Sort String](./src/main/java/org/sean/sorting/CustomSort.java) | |
| 81 | +| String | [459. Repeated Substring Pattern](./src/main/java/org/sean/string/RepeatedSubstrFinder.java) | |
| 82 | +| | [763. Partition Labels](./src/main/java/org/sean/string/LabelPartition.java) | |
| 83 | +| | [890. Find and Replace Pattern](./src/main/java/org/sean/string/PatternFinder.java) | |
| 84 | +| Dynamicpro | [1048. Longest String Chain](./src/main/java/org/sean/dynamicpro/LongestStringChain.java) | |
| 85 | +| | [139. Word Break](./src/main/java/org/sean/dynamicpro/WordBreak.java) | |
| 86 | +| | [392. Is Subsequence](./src/main/java/org/sean/dynamicpro/SubsequenceChecker.java) | |
| 87 | +| | [300. Longest Increasing Subsequence](./src/main/java/org/sean/dynamicpro/Lis.java) | |
| 88 | +| | [39. Combination Sum](./src/main/java/org/sean/dynamicpro/CombinationSum.java) | |
| 89 | +| | [216. Combination Sum III](./src/main/java/org/sean/dynamicpro/CombinationSum3.java) | |
| 90 | +| | [322. Coin Change](./src/main/java/org/sean/dynamicpro/CoinExchanger.java) | |
| 91 | +| | [40. Combination Sum II](./src/main/java/org/sean/dynamicpro/CombinationSum2.java) | |
| 92 | +| Stack | [394. Decode String](./src/main/java/org/sean/stack/StringDecoder.java) | |
| 93 | +| | [844. Backspace String Compare](./src/main/java/org/sean/stack/BackspaceStr.java) | |
| 94 | +| | [20. Valid Parentheses](./src/main/java/org/sean/stack/ParenthesesValidator.java) | |
0 commit comments