LeetCode Statistics

link

ID Question Diff Freq Data Structure Algorithms
             

1 Two Sum 2 5 array sort

        set Two Pointers

2 Add Two Numbers 3 4 linked list Two Pointers

          Math

3 Longest Substring Without Repeating Characters 3 2 string Two Pointers

        hashtable  

4 Median of Two Sorted Arrays 5 3 array Binary Search

5 Longest Palindromic Substring 4 2 string  

6 ZigZag Conversion 3 1 string  

7 Reverse Integer 2 3   Math

8 String to Integer (atoi) 2 5 string Math

9 Palindrome Number 2 2   Math

10 Regular Expression Matching 5 3 string Recursion

          DP

11 Container With Most Water 3 2 array Two Pointers

12 Integer to Roman 3 4   Math

13 Roman to Integer 2 4   Math

14 Longest Common Prefix 2 1 string  

15 3Sum 3 5 array Two Pointers

16 3Sum Closest 3 1 array Two Pointers

17 Letter Combinations of a Phone Number 3 3 string DFS

18 4Sum 3 2 array  

19 Remove Nth Node From End of List 2 3 linked list Two Pointers

20 Valid Parentheses 2 5 string Stack

21 Merge Two Sorted Lists 2 5 linked list sort

          Two Pointers

          merge

22 Generate Parentheses 3 4 string DFS

23 Merge k Sorted Lists 3 4 linked list sort

        heap Two Pointers

          merge

24 Swap Nodes in Pairs 2 4 linked list  

25 Reverse Nodes in k-Group 4 2 linked list Recursion

          Two Pointers

26 Remove Duplicates from Sorted Array 1 3 array Two Pointers

27 Remove Element 1 4 array Two Pointers

28 Implement strStr() 4 5 string Two Pointers

          KMP

          rolling hash

29 Divide Two Integers 4 3   Binary Search

          Math

30 Substring with Concatenation of All Words 3 1 string Two Pointers

31 Next Permutation 5 2 array permutation

32 Longest Valid Parentheses 4 1 string DP

33 Search in Rotated Sorted Array 4 3 array Binary Search

34 Search for a Range 4 3 array Binary Search

35 Search Insert Position 2 2 array  

36 Valid Sudoku 2 2 array  

37 Sudoku Solver 4 2 array DFS

38 Count and Say 2 2 string Two Pointers

39 Combination Sum 3 3 array combination

40 Combination Sum II 4 2 array combination

41 First Missing Positive 5 2 array sort

42 Trapping Rain Water 4 2 array Two Pointers

          Stack

43 Multiply Strings 4 3 string Two Pointers

          Math

44 Wildcard Matching 5 3 string Recursion

          DP

          greedy

45 Jump Game II 4 2 array  

46 Permutations 3 4 array permutation

47 Permutations II 4 2 array permutation

48 Rotate Image 4 2 array  

49 Anagrams 3 4 string  

        hashtable  

50 Pow(x, n) 3 5   Binary Search

          Math

51 N-Queens 4 3 array DFS

52 N-Queens II 4 3 array DFS

53 Maximum Subarray 3 3 array DP

54 Spiral Matrix 4 2 array  

55 Jump Game 3 2 array  

56 Merge Intervals 4 5 array sort

        linked list merge

        red-black tree  

57 Insert Interval 4 5 array sort

        linked list merge

        red-black tree  

58 Length of Last Word 1 1 string  

59 Spiral Matrix II 3 2 array  

60 Permutation Sequence 5 1   permutation

          Math

61 Rotate List 3 2 linked list Two Pointers

62 Unique Paths 2 3 array DP

63 Unique Paths II 3 3 array DP

64 Minimum Path Sum 3 3 array DP

65 Valid Number 2 5 string Math

66 Plus One 1 2 array Math

67 Add Binary 2 4 string Two Pointers

          Math

68 Text Justification 4 2 string  

69 Sqrt(x) 4 4   Binary Search

70 Climbing Stairs 2 5   DP

71 Simplify Path 3 1 string Stack

72 Edit Distance 4 3 string DP

73 Set Matrix Zeroes 3 5 array  

74 Search a 2D Matrix 3 3 array Binary Search

75 Sort Colors 4 2 array sort

          Two Pointers

76 Minimum Window Substring 4 2 string Two Pointers

77 Combinations 3 4   combination

78 Subsets 3 4 array Recursion

          combination

79 Word Search 3 4 array DFS

80 Remove Duplicates from Sorted Array II 2 2 array Two Pointers

81 Search in Rotated Sorted Array II 5 3 array Binary Search

82 Remove Duplicates from Sorted List II 3 3 linked list Recursion

          Two Pointers

83 Remove Duplicates from Sorted List 1 3 linked list  

84 Largest Rectangle in Histogram 5 2 array Stack

85 Maximal Rectangle 5 1 array DP

          Stack

86 Partition List 3 3 linked list Two Pointers

87 Scramble String 5 2 string Recursion

          DP

88 Merge Sorted Array 2 5 array Two Pointers

          merge

89 Gray Code 4 2   combination

90 Subsets II 4 2 array Recursion

          combination

91 Decode Ways 3 4 string Recursion

          DP

92 Reverse Linked List II 3 2 linked list Two Pointers

93 Restore IP Addresses 3 3 string DFS

94 Binary Tree Inorder Traversal 4 3 tree Recursion

        hashtable morris

          Stack

95 Unique Binary Search Trees II 4 1 tree DP

          DFS

96 Unique Binary Search Trees 3 1 tree DP

97 Interleaving String 5 2 string Recursion

          DP

98 Validate Binary Search Tree 3 5 tree DFS

99 Recover Binary Search Tree 4 2 tree DFS

100 Same Tree 1 1 tree DFS

101 Symmetric Tree 1 2 tree DFS

102 Binary Tree Level Order Traversal 3 4 tree BFS

103 Binary Tree Zigzag Level Order Traversal 4 3 queue BFS

        tree Stack

104 Maximum Depth of Binary Tree 1 1 tree DFS

105 Construct Binary Tree from Preorder and Inorder Tr 3 3 array DFS

        tree  

106 Construct Binary Tree from Inorder and Postorder T 3 3 array DFS

        tree  

107 Binary Tree Level Order Traversal II 3 1 tree BFS

108 Convert Sorted Array to Binary Search Tree 2 3 tree DFS

109 Convert Sorted List to Binary Search Tree 4 3 linked list Recursion

          Two Pointers

110 Balanced Binary Tree 1 2 tree DFS

111 Minimum Depth of Binary Tree 1 1 tree DFS

112 Path Sum 1 3 tree DFS

113 Path Sum II 2 2 tree DFS

114 Flatten Binary Tree to Linked List 3 3 tree Recursion

          Stack

115 Distinct Subsequences 4 2 string DP

116 Populating Next Right Pointers in Each Node 3 3 tree DFS

117 Populating Next Right Pointers in Each Node II 4 2 tree DFS

118 Pascal's Triangle 2 1 array  

119 Pascal's Triangle II 2 1 array  

120 Triangle 3 1 array DP

121 Best Time to Buy and Sell Stock 2 1 array DP

122 Best Time to Buy and Sell Stock II 3 1 array greedy

123 Best Time to Buy and Sell Stock III 4 1 array DP

124 Binary Tree Maximum Path Sum 4 2 tree DFS

125 Valid Palindrome 2 5 string Two Pointers

126 Word Ladder II 1 1    

127 Word Ladder 3 5 graph BFS

          shortest path

128 Longest Consecutive Sequence 4 3 array  

129 Sum Root to Leaf Numbers 2 4 tree DFS

130 Surrounded Regions 4 3 array BFS

          DFS

131 Palindrome Partitioning 3 4 string DFS

132 Palindrome Partitioning II 4 3 string DP

Dynamic Programming

Edit Distance
Maximum Subarray
Minimum Path Sum
Unique Paths
Unique Paths II
Longest Palindromic Substring
Interleaving String
Triangle
Distinct Subsequences
Decode Ways
Palindrome Partitioning II
Maximal Rectangle

Recursion

N-Queens
N-Queens II
Balanced Binary Tree
Binary Tree Inorder Traversal
Binary Tree Maximum Path Sum
Convert Sorted Array to Binary Search Tree
Convert Sorted List to Binary Search Tree
Flatten Binary Tree to Linked List
Maximum Depth of Binary Tree
Minimum Depth of Binary Tree
Path Sum
Permutations
Permutations II
Populating Next Right Pointers in Each Node
Pow(x, n)
Same Tree
Subsets
Sum Root to Leaf Numbers
Swap Nodes in Pairs
Symmetric Tree
Valid Palindrome
Validate Binary Search Tree
Restore IP Addresses
Combinations
Interleaving String (dp is the best)
Combination Sum II
Letter Combinations of a Phone Numbers
Word Search
Construct Binary Tree from Inorder and Postorder Traversal
Construct Binary Tree from Preorder and Inorder Traversal
Generate Parentheses
Surrounded Regions (runtime error)
Palindrome Partitioning
Combination Sum
Sudoku Solver
Unique Binary Search Trees II

Search Insert Position
Search a 2D Matrix
Search for a Range
Search in Rotated Sorted Array
Sqrt(x)

Sequence

Container With Most Water
Count and Say
First Missing Positive
Implement strStr()
Jump Game
Jump Game II
Length of Last Word
Longest Common Prefix
Longest Substring Without Repeating Characters
Merge Sorted Array
Palindrome Number
Plus One
Remove Duplicates from Sorted Array
Remove Duplicates from Sorted Array II
Remove Element
Reverse Integer
Search in Rotated Sorted Array II
Sort Colors
Two Sum
3Sum
3Sum Closest
4Sum
Add Binary
Longest Palindromic Substring
Next Permutation
Longest Valid Parentheses
Climbing Stairs
Permutation Sequence
Simplify Path
String to Integer (atoi)
Minimum Window Substring
Longest Consecutive Sequence
Trapping Rain Water
Valid Number

Linked List

Add Two Numbers
Convert Sorted List to Binary Search Tree
Merge Two Sorted Lists
Partition List
Remove Duplicates from Sorted List
Remove Duplicates from Sorted List II
Remove Nth Node From End of List
Reverse Linked List II
Reverse Nodes in k-Group
Rotate List
Swap Nodes in Pairs

Stack

Binary Tree Inorder Traversal
Binary Tree Level Order Traversal II
Valid Parentheses

Queue

Binary Tree Level Order Traversal
Binary Tree Level Order Traversal II
Populating Next Right Pointers in Each Node II
Symmetric Tree
Surrounded Regions
Word Ladder

Tree

Balanced Binary Tree
Binary Tree Inorder Traversal
Binary Tree Level Order Traversal
Binary Tree Level Order Traversal II
Binary Tree Maximum Path Sum
Convert Sorted Array to Binary Search Tree
Convert Sorted List to Binary Search Tree
Flatten Binary Tree to Linked List
Maximum Depth of Binary Tree
Minimum Depth of Binary Tree
Path Sum
Same Tree
Sum Root to Leaf Numbers
Symmetric Tree
Validate Binary Search Tree

from http://blog.csdn.net/doc_sgl/article/details/11664539