Leetcode I described my way when I thinking how to resolve the question using Java. DescSorted Title Solution Difficulty Type 132 Palindrome Partitioning II Java Hard Dynamic Programming 123 Best Time to Buy and Sell Stock III Java Hard Array 122 Best Time to Buy and Sell Stock II Java Easy Array 121 Best Time to Buy and Sell Stock Java Easy Array 120 Triangle Java Medium Dynamic Programming 53 Maximum Subarray Java Easy Dynamic Programming 85 Maximal Rectangle Java Hard Dynamic Programming 84 Largest Rectangle in Histogram Java Hard Array 80 Remove Duplicates from Sorted Array II Java Medium Array 50 Pow(x, n) Java Medium Recursive 49 Group Anagrams Java Medium HashMap 48 Rotate Image Java Medium Array 41 First Missing Positive Java Hard Array 40 Combination Sum II Java Medium BackTracking 39 Combination Sum Java Medium BackTracking 38 Count and Say Java Easy String 37 Sudoku Solver Java Hard Hash Table 36 Valid Sudoku Java Medium Hash Table 35 Search Insert Position Java Easy Binary Search 32 Longest Valid Parentheses Java Hard Stack 29 Divide Two Integers Java Medium Array 28 Implement strStr() Java Easy String 27 Remove Element Java Easy Array 26 Remove Duplicates from Sorted Array Java Easy Array 21 Merge Two Sorted Lists Java Easy LinkedList 20 Valid Parentheses Java Easy Stack 19 Remove Nth Node From End of List Java Medium LinkedList 18 4Sum Java Medium Array 17 Letter Combinations of a Phone Number Java Medium backTracking 16 3Sum Closest Java Medium Array 15 3Sum Java Medium Array 14 Longest Common Prefix Java Easy String 13 Roamn to Integer Java Easy String 12 Integer to Roman Java Medium String 9 Palindrome Number Java Easy 8 String to Integer Java Medium String 7 Reverse Integer Java Easy 3 Longest Substring Without Repeating Characters Java Medium String 2 Add Two Numbers Java Medium 1 Two Sum Java Medium Array