Skip to content

Latest commit

 

History

History
605 lines (602 loc) · 23.3 KB

SOLUTION_TREE.md

File metadata and controls

605 lines (602 loc) · 23.3 KB

Solution Tree

.
├── img
│   ├── clone-fork-doocs-leetcode.jpg
│   ├── create-pull-request.png
│   ├── dev-pull-request.png
│   ├── email-of-pull-request.jpg
│   ├── hardcore-forking-yanglbme - 2.gif
│   ├── hardcore-forking-yanglbme.gif
│   ├── histogram_area.png
│   ├── histogram.png
│   ├── how-to-contribute-yanglbme.png
│   ├── leetcode-github-yanglbme.png
│   ├── random-list.png
│   ├── random-list-step1.png
│   ├── random-list-step2.png
│   ├── random-list-step3.png
│   └── robot_maze.png
├── LICENSE
├── README.md
├── solution
│   ├── 0001.Two Sum
│   │   ├── README.md
│   │   ├── Solution2.js
│   │   ├── Solution2.py
│   │   ├── Solution.cpp
│   │   ├── Solution.go
│   │   ├── Solution.java
│   │   ├── Solution.js
│   │   ├── Solution.py
│   │   ├── Solution.rb
│   │   └── Solution.scala
│   ├── 0002.Add Two Numbers
│   │   ├── README.md
│   │   ├── Solution.cpp
│   │   ├── Solution.java
│   │   ├── Solution.js
│   │   ├── Solution.py
│   │   └── Solution.rb
│   ├── 0003.Longest Substring Without Repeating Characters
│   │   ├── README.md
│   │   └── Solution.java
│   ├── 0004.Median of Two Sorted Arrays
│   │   ├── README.md
│   │   ├── Solution.cpp
│   │   └── Solution.java
│   ├── 0005.Longest Palindromic Substring
│   │   ├── README.md
│   │   └── Solution.java
│   ├── 0006.ZigZag Conversion
│   │   ├── Solution.cpp
│   │   └── Solution.java
│   ├── 0007.Reverse Integer
│   │   ├── README.md
│   │   ├── Solution2.py
│   │   ├── Solution.java
│   │   ├── Solution.js
│   │   ├── Solution.py
│   │   └── Solution.rb
│   ├── 0008.String to Integer(atoi)
│   │   ├── Solution.java
│   │   ├── Solution.js
│   │   └── Solution.py
│   ├── 0009.Palindrome Number
│   │   ├── README.md
│   │   ├── Solution.java
│   │   └── Solution.py
│   ├── 0010.Regular Expression Matching
│   │   └── Solution.java
│   ├── 0011.Container With Most Water
│   │   ├── Solution.java
│   │   └── Solution.js
│   ├── 0012.Integer to Roman
│   │   └── Solution.java
│   ├── 0013.Roman to Integer
│   │   ├── README.md
│   │   ├── Solution2.py
│   │   ├── Solution.java
│   │   ├── Solution.js
│   │   ├── Solution.py
│   │   └── Solution.rb
│   ├── 0014.Longest Common Prefix
│   │   ├── README.md
│   │   ├── Solution2.py
│   │   ├── Solution.cpp
│   │   ├── Solution.java
│   │   ├── Solution.js
│   │   ├── Solution.py
│   │   └── Solution.rb
│   ├── 0015.3Sum
│   │   ├── README.md
│   │   ├── solution.cpp
│   │   ├── Solution.cpp
│   │   ├── Solution.java
│   │   ├── Solution.py
│   │   └── Solution.rb
│   ├── 0016.3Sum Closest
│   │   └── Solution.java
│   ├── 0017.Letter Combinations of a Phone Number
│   │   └── Solution.java
│   ├── 0018.4Sum
│   │   ├── README.md
│   │   ├── Solution.cpp
│   │   └── Solution.java
│   ├── 0019.Remove Nth Node From End of List
│   │   ├── README.md
│   │   ├── Solution.cpp
│   │   ├── Solution.java
│   │   ├── Solution.js
│   │   ├── Solution.py
│   │   └── Solution.rb
│   ├── 0020.Valid Parentheses
│   │   ├── README.md
│   │   ├── Solution2.py
│   │   ├── Solution.cpp
│   │   ├── Solution.java
│   │   ├── Solution.js
│   │   ├── Solution.py
│   │   └── Solution.rb
│   ├── 0021.Merge Two Sorted Lists
│   │   ├── README.md
│   │   ├── Solution.cpp
│   │   ├── Solution.java
│   │   ├── Solution.js
│   │   ├── Solution.py
│   │   └── Solution.rb
│   ├── 0022.Generate Parentheses
│   │   └── Solution.java
│   ├── 0023.Merge k Sorted Lists
│   │   ├── README.md
│   │   ├── Solution.cpp
│   │   ├── Solution.java
│   │   ├── Solution.py
│   │   └── Solution.rb
│   ├── 0024.Swap Nodes in Pairs
│   │   ├── README.md
│   │   ├── Solution.cpp
│   │   ├── Solution.java
│   │   ├── Solution.py
│   │   └── Solution.rb
│   ├── 0025.Reverse Nodes in k-Group
│   │   ├── README.md
│   │   └── Solution.java
│   ├── 0026.Remove Duplicates from Sorted Array
│   │   ├── README.md
│   │   ├── Solution.java
│   │   ├── Solution.js
│   │   └── Solution.py
│   ├── 0027.Remove Element
│   │   ├── README.md
│   │   ├── Solution.cpp
│   │   ├── Solution.java
│   │   └── Solution.py
│   ├── 0028.Implement strStr()
│   │   ├── README.md
│   │   ├── Solution.cpp
│   │   ├── Solution.java
│   │   └── Solution.py
│   ├── 0029.Divide Two Integers
│   │   ├── README.md
│   │   └── Solution.java
│   ├── 0030.Substring with Concatenation of All Words
│   │   ├── README.md
│   │   └── Solution.java
│   ├── 0031.Next Permutation
│   │   ├── README.md
│   │   ├── Solution.cpp
│   │   └── Solution.java
│   ├── 0032.Longest Valid Parentheses
│   │   ├── README.md
│   │   ├── Solution.java
│   │   └── Solution.py
│   ├── 0033.Search in Rotated Sorted Array
│   │   ├── README.md
│   │   ├── Solution.cpp
│   │   └── Solution.java
│   ├── 0034.Find First and Last Position of Element in Sorted Array
│   │   ├── README.md
│   │   ├── Solution.cpp
│   │   └── Solution.java
│   ├── 0035.Search Insert Position
│   │   ├── README.md
│   │   ├── Solution.cpp
│   │   ├── Solution.java
│   │   └── Solution.py
│   ├── 0036.Valid Sudoku
│   │   ├── Solution.java
│   │   └── Solution.js
│   ├── 0037.Sudoku Solver
│   │   └── Solution.java
│   ├── 0038.Count and Say
│   │   ├── Solution.java
│   │   ├── Solution.js
│   │   └── Solution.py
│   ├── 0039.Combination Sum
│   │   ├── README.md
│   │   ├── Solution.cpp
│   │   └── Solution.java
│   ├── 0040.Combination Sum II
│   │   ├── README.md
│   │   ├── Solution.cpp
│   │   └── Solution.java
│   ├── 0041.First Missing Positive
│   │   ├── README.md
│   │   ├── Solution.c
│   │   ├── Solution.cpp
│   │   ├── Solution.java
│   │   └── Solution.py
│   ├── 0042.Trapping Rain Water
│   │   ├── README.md
│   │   ├── Solution.cpp
│   │   └── Solution.java
│   ├── 0043.Multiply Strings
│   │   └── Solution.java
│   ├── 0044.Wildcard Matching
│   │   └── Solution.java
│   ├── 0045.Jump Game II
│   │   └── Solution.java
│   ├── 0046.Permutations
│   │   ├── README.md
│   │   ├── Solution.cpp
│   │   ├── Solution.java
│   │   └── Solution.py
│   ├── 0047.Permutations II
│   │   ├── README.md
│   │   ├── Solution.cpp
│   │   ├── Solution.java
│   │   └── Solution.py
│   ├── 0048.Rotate Image
│   │   ├── README.md
│   │   ├── Solution.cpp
│   │   ├── Solution.java
│   │   └── Solution.js
│   ├── 0049.Group Anagrams
│   │   └── Solution.java
│   ├── 0050.Pow(x, n)
│   │   └── Solution.java
│   ├── 0053.Maximum Subarray
│   │   ├── README.md
│   │   ├── Solution.java
│   │   ├── Solution.js
│   │   └── Solution.py
│   ├── 0054.Spiral Matrix
│   │   ├── README.md
│   │   ├── Solution.cpp
│   │   ├── Solution.java
│   │   └── Solution.py
│   ├── 0056.Merge Intervals
│   │   ├── README.md
│   │   └── Solution.cpp
│   ├── 0057.Insert Interval
│   │   └── Solution.cpp
│   ├── 0059.Spiral Matrix II
│   │   ├── README.md
│   │   ├── Solution.cpp
│   │   └── Solution.java
│   ├── 0061.Rotate List
│   │   ├── README.md
│   │   └── Solution.java
│   ├── 0062.Unique Paths
│   │   ├── README.md
│   │   ├── Solution.cpp
│   │   ├── Solution.java
│   │   └── Solution.py
│   ├── 0063.Unique Paths II
│   │   ├── README.md
│   │   ├── Solution.java
│   │   └── Solution.py
│   ├── 0064.Minimum Path Sum
│   │   ├── README.md
│   │   └── Solution.cpp
│   ├── 0066.Plus One
│   │   ├── README.md
│   │   ├── Solution2.py
│   │   ├── Solution.cpp
│   │   ├── Solution.js
│   │   └── Solution.py
│   ├── 0069.Sqrt(x)
│   │   ├── README.md
│   │   ├── Solution2.py
│   │   └── Solution.py
│   ├── 0070.Climbing Stairs
│   │   ├── README.md
│   │   ├── Solution.cpp
│   │   ├── Solution.java
│   │   ├── Solution.js
│   │   └── Solution.py
│   ├── 0073.Set Matrix Zeroes
│   │   ├── README.md
│   │   └── Solution.cpp
│   ├── 0074.Search a 2D Matrix
│   │   ├── README.md
│   │   └── Solution.cpp
│   ├── 0075.Sort Colors
│   │   ├── README.md
│   │   ├── Solution2.py
│   │   ├── Solution.cpp
│   │   ├── Solution.java
│   │   └── Solution.py
│   ├── 0080.Remove Duplicates from Sorted Array II
│   │   ├── README.md
│   │   └── Solution.cpp
│   ├── 0082.Remove Duplicates from Sorted List II
│   │   ├── README.md
│   │   ├── Solution.java
│   │   └── Solution.py
│   ├── 0083.Remove Duplicates from Sorted List
│   │   ├── README.md
│   │   ├── Solution.java
│   │   └── Solution.py
│   ├── 0084.Largest Rectangle in Histogram
│   │   ├── README.md
│   │   ├── Solution.cpp
│   │   └── Solution.java
│   ├── 0086.Partition List
│   │   ├── README.md
│   │   ├── Solution.java
│   │   └── Solution.py
│   ├── 0088.Merge Sorted Array
│   │   └── Solution.js
│   ├── 0090.Subsets II
│   │   ├── README.md
│   │   └── Solution.cpp
│   ├── 0092.Reverse Linked List II
│   │   ├── README.md
│   │   └── Solution.java
│   ├── 0094.Binary Tree Inorder Traversal
│   │   ├── README.md
│   │   └── Solution.java
│   ├── 0096.Unique Binary Search Trees
│   │   ├── README.md
│   │   └── Solution.java
│   ├── 0102.Binary Tree Level Order Traversal
│   │   ├── README.md
│   │   └── Solution.java
│   ├── 0105.Construct Binary Tree from Preorder and Inorder Traversal
│   │   ├── README.md
│   │   └── Solution.cpp
│   ├── 0112.Path Sum
│   │   ├── README.md
│   │   └── Solution.cpp
│   ├── 0118.Pascal's Triangle
│   │   ├── README.md
│   │   ├── Solution.cpp
│   │   └── Solution.js
│   ├── 0119.Pascal's Triangle II
│   │   ├── README.md
│   │   └── Solution.cpp
│   ├── 0120.Triangle
│   │   ├── README.md
│   │   └── Solution.cpp
│   ├── 0121.Best Time to Buy and Sell Stock
│   │   └── Solution.js
│   ├── 0122.Best Time to Buy and Sell Stock II
│   │   ├── Solution.cpp
│   │   └── Solution.js
│   ├── 0123.Best Time to Buy and Sell Stock III
│   │   ├── README.md
│   │   └── Solution.cpp
│   ├── 0125.Valid Palindrome
│   │   └── Solution.js
│   ├── 0127.Word Ladder
│   │   ├── README.md
│   │   └── Solution.java
│   ├── 0130.Surrounded Regions
│   │   ├── README.md
│   │   └── Solution.java
│   ├── 0136.Single Number
│   │   ├── README.md
│   │   ├── Solution.java
│   │   ├── Solution.js
│   │   └── Solution.py
│   ├── 0137.Single Number II
│   │   ├── README.md
│   │   ├── Solution.java
│   │   └── Solution.py
│   ├── 0138.Copy List with Random Pointer
│   │   ├── README.md
│   │   └── Solution.java
│   ├── 0141.Linked List Cycle
│   │   ├── README.md
│   │   └── Solution.java
│   ├── 0142.Linked List Cycle II
│   │   ├── README.md
│   │   ├── Solution.cpp
│   │   └── Solution.java
│   ├── 0143.Reorder List
│   │   ├── README.md
│   │   └── Solution.java
│   ├── 0144.Binary Tree Preorder Traversal
│   │   ├── README.md
│   │   └── Solution.java
│   ├── 0145.Binary Tree Postorder Traversal
│   │   ├── README.md
│   │   └── Solution.java
│   ├── 0146.Lru Cache
│   │   ├── README.md
│   │   └── Solution.java
│   ├── 0150.Evaluate Reverse Polish Notation
│   │   ├── README.md
│   │   ├── Solution.java
│   │   └── Solution.py
│   ├── 0153.Find Minimum in Rotated Sorted Array
│   │   ├── README.md
│   │   ├── Solution.java
│   │   └── Solution.py
│   ├── 0155.Min Stack
│   │   ├── README.md
│   │   ├── Solution.java
│   │   └── Solution.js
│   ├── 0160.Intersection of Two Linked Lists
│   │   ├── README.md
│   │   └── Solution.java
│   ├── 0167.Two Sum II - Input array is sorted
│   │   └── Solution.cpp
│   ├── 0172.Factorial Trailing Zeroes
│   │   └── Solution.cpp
│   ├── 0175.Combine Two Tables
│   │   └── README.md
│   ├── 0176.Second Highest Salary
│   │   └── README.md
│   ├── 0177.Nth Highest Salary
│   │   └── README.md
│   ├── 0178.Rank Scores
│   │   └── README.md
│   ├── 0180.Consecutive Numbers
│   │   └── README.md
│   ├── 0181.Employees Earning More Than Their Managers
│   │   └── README.md
│   ├── 0182.Duplicate Emails
│   │   └── README.md
│   ├── 0183.Customers Who Never Order
│   │   └── README.md
│   ├── 0184.Department Highest Salary
│   │   └── README.md
│   ├── 0189.Rotate Array
│   │   ├── README.md
│   │   └── Solution.java
│   ├── 0190.Reverse Bits
│   │   ├── Solution.cpp
│   │   └── Solution.js
│   ├── 0191.Number of 1 Bits
│   │   └── Solution.js
│   ├── 0196.Delete Duplicate Emails
│   │   └── README.md
│   ├── 0197.Rising Temperature
│   │   └── README.md
│   ├── 0198.House Robber
│   │   ├── README.md
│   │   ├── Solution.cpp
│   │   ├── Solution.java
│   │   └── Solution.py
│   ├── 0200.Number of Islands
│   │   ├── README.md
│   │   └── Solution.py
│   ├── 0203.Remove Linked List Elements
│   │   ├── README.md
│   │   ├── Solution.java
│   │   └── Solution.py
│   ├── 0204.Count Primes
│   │   └── Solution.js
│   ├── 0206.Reverse Linked List
│   │   └── Solution.js
│   ├── 0217.Contains Duplicate
│   │   └── Solution.js
│   ├── 0228.Summary Ranges
│   │   ├── README.md
│   │   └── Solution.cpp
│   ├── 0231.Power of Two
│   │   ├── README.md
│   │   ├── Solution.java
│   │   └── Solution.py
│   ├── 0234.Palindrome Linked List
│   │   ├── README.md
│   │   └── Solution.java
│   ├── 0235.Lowest Common Ancestor of a Binary Search Tree
│   │   ├── README.md
│   │   └── Solution.java
│   ├── 0237.Delete Node in a Linked List
│   │   ├── README.md
│   │   ├── Solution.java
│   │   ├── Solution.js
│   │   └── Solution.py
│   ├── 0242.Valid Anagram
│   │   └── Solution.js
│   ├── 0268.Missing Number
│   │   └── Solution.js
│   ├── 0278.First Bad Version
│   │   └── Solution.js
│   ├── 0283.Move Zeroes
│   │   ├── README.md
│   │   ├── Solution.cpp
│   │   └── Solution.js
│   ├── 0295.Find Median from Data Stream
│   │   ├── README.md
│   │   └── Solution.java
│   ├── 0312.Burst Balloons
│   │   ├── README.md
│   │   └── Solution.java
│   ├── 0318.Maximum Product of Word Lengths
│   │   └── Solution.cpp
│   ├── 0326.Power of Three
│   │   └── Solution.js
│   ├── 0328.Odd Even Linked List
│   │   ├── README.md
│   │   └── Solution.java
│   ├── 0343.Integer Break
│   │   ├── README.md
│   │   └── Solution.java
│   ├── 0344.Reverse String
│   │   ├── README.md
│   │   ├── Solution.java
│   │   ├── Solution.js
│   │   └── Solution.py
│   ├── 0350.Intersection of Two Arrays II
│   │   └── Solution.js
│   ├── 0384.Shuffle an Array
│   │   └── Solution.js
│   ├── 0387.First Unique Character in a String
│   │   ├── Solution.cpp
│   │   └── Solution.js
│   ├── 0412.Fizz Buzz
│   │   ├── Solution.cpp
│   │   ├── Solution.js
│   │   └── Solution.py
│   ├── 0427.Construct Quad Tree
│   │   └── Solution.cpp
│   ├── 0434.Number of Segments in a String
│   │   └── Solution.cpp
│   ├── 0438.Find All Anagrams in a String
│   │   └── Solution.cpp
│   ├── 0443.String Compression
│   │   └── Solution.cpp
│   ├── 0448.Find All Numbers Disappeared in an Array
│   │   ├── README.md
│   │   └── Solution.cpp
│   ├── 0461.Hamming Distance
│   │   └── Solution.js
│   ├── 0581.Shortest Unsorted Continuous Subarray
│   │   ├── README.md
│   │   ├── Solution.cpp
│   │   └── Solution.java
│   ├── 0595.Big Countries
│   │   └── README.md
│   ├── 0596.Classes More Than 5 Students
│   │   └── README.md
│   ├── 0605.Can Place Flowers
│   │   ├── README.md
│   │   ├── Solution.cpp
│   │   ├── Solution.java
│   │   └── Solution.py
│   ├── 0620.Not Boring Movies
│   │   └── README.md
│   ├── 0627.Swap Salary
│   │   └── README.md
│   ├── 0670.Maximum Swap
│   │   ├── README.md
│   │   └── Solution.py
│   ├── 0695.Max Area of Island
│   │   ├── README.md
│   │   ├── Solution.cpp
│   │   └── Solution.java
│   ├── 0701.Insert into a Binary Search Tree
│   │   ├── README.md
│   │   └── Solution.py
│   ├── 0703.Kth Largest Element in a Stream
│   │   ├── README.md
│   │   └── Solution.java
│   ├── 0707.Design Linked List
│   │   ├── README.md
│   │   └── Solution.java
│   ├── 0789.Escape The Ghosts
│   │   ├── README.md
│   │   └── Solution.py
│   ├── 0817.Linked List Components
│   │   ├── README.md
│   │   ├── Solution.java
│   │   └── Solution.py
│   ├── 0836.Rectangle Overlap
│   │   └── Solution.cpp
│   ├── 0874.Walking Robot Simulation
│   │   └── Solution.cpp
│   ├── 0876.Middle of the Linked List
│   │   ├── README.md
│   │   ├── Solution.java
│   │   └── Solution.py
│   ├── 0889.Construct Binary Tree from Preorder and Postorder Traversal
│   │   ├── README.md
│   │   └── Solution.py
│   ├── 0926.Flip String to Monotone Increasing
│   │   └── Solution.js
│   ├── 0929.Unique Email Addresses
│   │   └── Solution.js
│   ├── 0930.Binary Subarrays With Sum
│   │   └── Solution.js
│   └── 0938.Range Sum of BST
│       ├── README.md
│       ├── Solution.java
│       └── Solution.py
└── SOLUTION_TREE.md