Skip to content

diguage/leetcode

Repository files navigation

LeetCode

友情支持

如果觉得对您有所帮助,看在D瓜哥码这么多字的辛苦上,请友情支持一下,D瓜哥感激不尽,😜

支付宝

微信

有些打赏的朋友希望可以加个好友,欢迎关注D瓜哥的微信公众号,这样就可以通过公众号的回复直接给我发信息。

wx jikerizhi
💡
公众号的微信号是: jikerizhi因为众所周知的原因,有时图片加载不出来。如果图片加载不出来可以直接通过搜索微信号来查找我的公众号。

LeetCode Problems

序号 标题 代码 题解 难度 备注

1

1. Two Sum

Java

题解

Easy

2

2. Add Two Numbers

Java

题解

Medium

3

3. Longest Substring Without Repeating Characters

Java

题解

Medium

4

4. Median of Two Sorted Arrays

Java

题解

Hard

5

5. Longest Palindromic Substring

Java

题解

Medium

6

6. ZigZag Conversion

Java

题解

Medium

7

7. Reverse Integer

Java

题解

Easy

8

8. String to Integer (atoi)

Java

题解

Medium

9

9. Palindrome Number

Java

题解

Easy

10

11. Container With Most Water

Java

题解

Medium

11

12. Integer to Roman

Java

题解

Medium

12

13. Roman to Integer

Java

题解

Easy

13

14. Longest Common Prefix

Java

题解

Easy

14

15. 3Sum

Java

题解

Medium

双指针

15

16. 3Sum Closest

Java

题解

Medium

16

17. Letter Combinations of a Phone Number

Java

题解

Medium

17

18. 4Sum

Java

题解

Medium

双指针

18

19. Remove Nth Node From End of List

Java

题解

Medium

19

20. Valid Parentheses

Java

题解

Easy

20

21. Merge Two Sorted Lists

Java

题解

Easy

21

22. Generate Parentheses

Java

题解

Medium

22

23. Merge k Sorted Lists

Java

题解

Hard

23

24. Swap Nodes in Pairs

Java

题解

Medium

24

26. Remove Duplicates from Sorted Array

Java

题解

Easy

25

27. Remove Element

Java

题解

Easy

26

28. Implement strStr()

Java

题解

Easy

27

29. Divide Two Integers

Java

题解

Medium

28

31. Next Permutation

Java

题解

Medium

29

33. Search in Rotated Sorted Array

Java

题解

Medium

30

34. Find First and Last Position of Element in Sorted Array

Java

题解

Medium

31

35. Search Insert Position

Java

题解

Easy

32

36. Valid Sudoku

Java

题解

Medium

33

37. Sudoku Solver

Java

题解

Hard

34

38. Count and Say

Java

题解

Easy

35

39. Combination Sum

Java

题解

Medium

36

40. Combination Sum II

Java

题解

Medium

37

41. First Missing Positive

Java

题解

Hard

38

42. Trapping Rain Water

Java

题解

Hard

单调栈

39

43. Multiply Strings

Java

题解

Medium

40

45. Jump Game II

Java

题解

Hard

41

46. Permutations

Java

题解

Medium

42

47. Permutations II

Java

题解

Medium

43

48. Rotate Image

Java

题解

Medium

44

49. Group Anagrams

Java

题解

Medium

45

50. Pow(x, n)

Java

题解

Medium

46

51. N-Queens

Java

题解

Hard

47

52. N-Queens II

Java

题解

Hard

48

53. Maximum Subarray

Java

题解

Easy

49

54. Spiral Matrix

Java

题解

Medium

50

55. Jump Game

Java

题解

Medium

51

56. Merge Intervals

Java

题解

Medium

52

57. Insert Interval

Java

题解

Hard

53

58. Length of Last Word

Java

题解

Easy

54

59. Spiral Matrix II

Java

题解

Medium

55

60. Permutation Sequence

Java

题解

Medium

56

61. Rotate List

Java

题解

Medium

57

62. Unique Paths

Java

题解

Medium

58

63. Unique Paths II

Java

题解

Medium

59

64. Minimum Path Sum

Java

题解

Medium

60

66. Plus One

Java

题解

Easy

61

67. Add Binary

Java

题解

Easy

62

69. Sqrt(x)

Java

题解

Easy

63

70. Climbing Stairs

Java

题解

Easy

64

71. Simplify Path

Java

题解

Medium

65

73. Set Matrix Zeroes

Java

题解

Medium

66

75. Sort Colors

Java

题解

Medium

67

76. Minimum Window Substring

Java

题解

Hard

68

77. Combinations

Java

题解

Medium

69

78. Subsets

Java

题解

Medium

70

79. Word Search

Java

题解

Medium

71

80. Remove Duplicates from Sorted Array II

Java

题解

Medium

72

81. Search in Rotated Sorted Array II

Java

题解

Medium

73

82. Remove Duplicates from Sorted List II

Java

题解

Medium

74

83. Remove Duplicates from Sorted List

Java

题解

Easy

75

86. Partition List

Java

题解

Medium

76

88. Merge Sorted Array

Java

题解

Easy

77

89. Gray Code

Java

题解

Medium

78

90. Subsets II

Java

题解

Medium

79

91. Decode Ways

Java

题解

Medium

80

92. Reverse Linked List II

Java

题解

Medium

81

93. Restore IP Addresses

Java

题解

Medium

82

94. Binary Tree Inorder Traversal

Java

题解

Medium

83

95. Unique Binary Search Trees II

Java

题解

Medium

84

96. Unique Binary Search Trees

Java

题解

Medium

85

98. Validate Binary Search Tree

Java

题解

Medium

树形DP套路或中序遍历

86

99. Recover Binary Search Tree

Java

题解

Medium

Morris遍历

87

100. Same Tree

Java

题解

Easy

88

101. Symmetric Tree

Java

题解

Easy

89

102. Binary Tree Level Order Traversal

Java

题解

Medium

90

103. Binary Tree Zigzag Level Order Traversal

Java

题解

Medium

91

104. Maximum Depth of Binary Tree

Java

题解

Easy

92

105. Construct Binary Tree from Preorder and Inorder Traversal

Java

题解

Medium

迭代如何实现?

93

106. Construct Binary Tree from Inorder and Postorder Traversal

Java

题解

Medium

迭代如何实现?

94

107. Binary Tree Level Order Traversal II

Java

题解

Easy

95

108. Convert Sorted Array to Binary Search Tree

Java

题解

Easy

96

109. Convert Sorted List to Binary Search Tree

Java

题解

Medium

分治+中序遍历

97

110. Balanced Binary Tree

Java

题解

Easy

98

111. Minimum Depth of Binary Tree

Java

题解

Easy

Morris解法需要深入研究

99

112. Path Sum

Java

题解

Easy

100

113. Path Sum II

Java

题解

Medium

101

114. Flatten Binary Tree to Linked List

Java

题解

Medium

102

116. Populating Next Right Pointers in Each Node

Java

题解

Medium

103

117. Populating Next Right Pointers in Each Node II

Java

题解

Medium

104

118. Pascal’s Triangle

Java

题解

Easy

105

119. Pascal’s Triangle II

Java

题解

Easy

106

120. Triangle

Java

题解

Medium

107

121. Best Time to Buy and Sell Stock

Java

题解

Easy

108

122. Best Time to Buy and Sell Stock II

Java

题解

Easy

109

123. Best Time to Buy and Sell Stock III

Java

题解

Hard

110

125. Valid Palindrome

Java

题解

Easy

111

127. Word Ladder

Java

题解

Medium

112

129. Sum Root to Leaf Numbers

Java

题解

Medium

113

130. Surrounded Regions

Java

题解

Medium

114

131. Palindrome Partitioning

Java

题解

Medium

115

133. Clone Graph

Java

题解

Medium

116

134. Gas Station

Java

题解

Medium

117

136. Single Number

Java

题解

Easy

118

138. Copy List with Random Pointer

Java

题解

Medium

119

139. Word Break

Java

题解

Medium

120

141. Linked List Cycle

Java

题解

Easy

121

142. Linked List Cycle II

Java

题解

Medium

122

144. Binary Tree Preorder Traversal

Java

题解

Medium

123

145. Binary Tree Postorder Traversal

Java

题解

Easy

强化迭代

124

146. LRU Cache

Java

题解

Medium

125

148. Sort List

Java

题解

Medium

126

150. Evaluate Reverse Polish Notation

Java

题解

Medium

127

151. Reverse Words in a String

Java

题解

Medium

128

152. Maximum Product Subarray

Java

题解

Medium

129

153. Find Minimum in Rotated Sorted Array

Java

题解

Medium

130

154. Find Minimum in Rotated Sorted Array II

Java

题解

Hard

131

155. Min Stack

Java

题解

Easy

132

160. Intersection of Two Linked Lists

Java

题解

Easy

133

162. Find Peak Element

Java

题解

Medium

134

166. Fraction to Recurring Decimal

Java

题解

Medium

135

167. Two Sum II - Input array is sorted

Java

题解

Easy

136

169. Majority Element

Java

题解

Easy

137

171. Excel Sheet Column Number

Java

题解

Easy

138

172. Factorial Trailing Zeroes

Java

题解

Easy

139

175. Combine Two Tables

SQL

题解

Easy

140

176. Second Highest Salary

SQL

题解

Easy

141

179. Largest Number

Java

题解

Medium

142

188. Best Time to Buy and Sell Stock IV

Java

题解

Hard

143

189. Rotate Array

Java

题解

Easy

144

190. Reverse Bits

Java

题解

Easy

145

191. Number of 1 Bits

Java

题解

Easy

146

198. House Robber

Java

题解

Easy

147

199. Binary Tree Right Side View

Java

题解

Medium

递归+DFS解法有意思

148

200. Number of Islands

Java

题解

Medium

149

202. Happy Number

Java

题解

Easy

150

204. Count Primes

Java

题解

Easy

151

205. Isomorphic Strings

Java

题解

Easy

152

206. Reverse Linked List

Java

题解

Easy

153

207. Course Schedule

Java

题解

Medium

154

208. Implement Trie (Prefix Tree)

Java

题解

Medium

155

210. Course Schedule II

Java

题解

Medium

156

215. Kth Largest Element in an Array

Java

题解

Medium

157

217. Contains Duplicate

Java

题解

Easy

158

221. Maximal Square

Java

题解

Medium

159

222. Count Complete Tree Nodes

Java

题解

Medium

160

226. Invert Binary Tree

Java

题解

Easy

161

227. Basic Calculator II

Java

题解

Medium

162

230. Kth Smallest Element in a BST

Java

题解

Medium

163

231. Power of Two

Java

题解

Easy

164

232. Implement Queue using Stacks

Java

题解

Easy

165

234. Palindrome Linked List

Java

题解

Easy

166

235. Lowest Common Ancestor of a Binary Search Tree

Java

题解

Easy

二叉搜索树左大右小的特性

167

236. Lowest Common Ancestor of a Binary Tree

Java

题解

Medium

168

237. Delete Node in a Linked List

Java

题解

Easy

169

238. Product of Array Except Self

Java

题解

Medium

170

239. Sliding Window Maximum

Java

题解

Hard

171

240. Search a 2D Matrix II

Java

题解

Medium

172

242. Valid Anagram

Java

题解

Easy

173

257. Binary Tree Paths

Java

题解

Easy

174

268. Missing Number

Java

题解

Easy

175

278. First Bad Version

Java

题解

Easy

176

279. Perfect Squares

Java

题解

Medium

177

283. Move Zeroes

Java

题解

Easy

178

287. Find the Duplicate Number

Java

题解

Medium

179

289. Game of Life

Java

题解

Medium

180

295. Find Median from Data Stream

Java

题解

Hard

181

297. Serialize and Deserialize Binary Tree

Java

题解

Hard

注意思维误区!

182

300. Longest Increasing Subsequence

Java

题解

Medium

183

303. Range Sum Query - Immutable

Java

题解

Easy

184

304. Range Sum Query 2D - Immutable

Java

题解

Medium

185

309. Best Time to Buy and Sell Stock with Cooldown

Java

题解

Medium

186

316. Remove Duplicate Letters

Java

题解

Hard

187

322. Coin Change

Java

题解

Medium

188

324. Wiggle Sort II

Java

题解

Medium

189

326. Power of Three

Java

题解

Easy

190

328. Odd Even Linked List

Java

题解

Medium

191

334. Increasing Triplet Subsequence

Java

题解

Medium

192

337. House Robber III

Java

题解

Medium

193

338. Counting Bits

Java

题解

Medium

194

341. Flatten Nested List Iterator

Java

题解

Medium

195

343. Integer Break

Java

题解

Medium

196

344. Reverse String

Java

题解

Easy

197

347. Top K Frequent Elements

Java

题解

Medium

198

350. Intersection of Two Arrays II

Java

题解

Easy

199

370. Range Addition

Java

题解

Medium

Plus专题

200

371. Sum of Two Integers

Java

题解

Easy

201

378. Kth Smallest Element in a Sorted Matrix

Java

题解

Medium

202

380. Insert Delete GetRandom O(1)

Java

题解

Medium

203

384. Shuffle an Array

Java

题解

Medium

204

387. First Unique Character in a String

Java

题解

Easy

205

394. Decode String

Java

题解

Medium

206

395. Longest Substring with At Least K Repeating Characters

Java

题解

Medium

207

402. Remove K Digits

Java

题解

Medium

208

404. Sum of Left Leaves

Java

题解

Easy

209

406. Queue Reconstruction by Height

Java

题解

Medium

210

409. Longest Palindrome

Java

题解

Easy

211

412. Fizz Buzz

Java

题解

Easy

212

416. Partition Equal Subset Sum

Java

题解

Medium

213

429. N-ary Tree Level Order Traversal

Java

题解

Medium

广度优先

214

437. Path Sum III

Java

题解

Medium

前缀和解法还需要多思考!

215

438. Find All Anagrams in a String

Java

题解

Medium

216

448. Find All Numbers Disappeared in an Array

Java

题解

Easy

217

450. Delete Node in a BST

Java

题解

Medium

218

453. Minimum Moves to Equal Array Elements

Java

题解

Medium

219

454. 4Sum II

Java

题解

Medium

220

462. Minimum Moves to Equal Array Elements II

Java

题解

Medium

快速选择

221

480. Sliding Window Median

Java

题解

Hard

222

494. Target Sum

Java

题解

Medium

223

496. Next Greater Element I

Java

题解

Easy

224

501. Find Mode in Binary Search Tree

Java

题解

Easy

225

503. Next Greater Element II

Java

题解

Medium

226

509. Fibonacci Number

Java

题解

Easy

227

513. Find Bottom Left Tree Value

Java

题解

Medium

228

515. Find Largest Value in Each Tree Row

Java

题解

Medium

层序遍历

229

523. Continuous Subarray Sum

Java

题解

Medium

前缀和

230

528. Random Pick with Weight

Java

题解

Medium

231

530. Minimum Absolute Difference in BST

Java

题解

Easy

232

538. Convert BST to Greater Tree

Java

题解

Easy

233

543. Diameter of Binary Tree

Java

题解

Easy

234

559. Maximum Depth of N-ary Tree

Java

题解

Easy

235

560. Subarray Sum Equals K

Java

题解

Medium

前缀和

236

567. Permutation in String

Java

题解

Medium

237

581. Shortest Unsorted Continuous Subarray

Java

题解

Easy

238

617. Merge Two Binary Trees

Java

题解

Easy

239

621. Task Scheduler

Java

题解

Medium

240

637. Average of Levels in Binary Tree

Java

题解

Easy

241

647. Palindromic Substrings

Java

题解

Medium

242

654. Maximum Binary Tree

Java

题解

Medium

243

669. Trim a Binary Search Tree

Java

题解

Easy

244

695. Max Area of Island

Java

题解

Medium

245

698. Partition to K Equal Sum Subsets

Java

题解

Medium

246

700. Search in a Binary Search Tree

Java

题解

Easy

247

701. Insert into a Binary Search Tree

Java

题解

Medium

248

704. Binary Search

Java

题解

Easy

249

710. Random Pick with Blacklist

Java

题解

Hard

250

713. Subarray Product Less Than K

Java

题解

Medium

滑动窗口

251

714. Best Time to Buy and Sell Stock with Transaction Fee

Java

题解

Medium

252

724. Find Pivot Index

Java

题解

Easy

253

739. Daily Temperatures

Java

题解

Medium

254

744. Find Smallest Letter Greater Than Target

Java

题解

Easy

255

746. Min Cost Climbing Stairs

Java

题解

Easy

256

752. Open the Lock

Java

题解

Medium

257

870. Advantage Shuffle

Java

题解

Medium

258

875. Koko Eating Bananas

Java

题解

Medium

二分查找

259

876. Middle of the Linked List

Java

题解

Easy

260

912. Sort an Array

Java

题解

Medium

归并,快排

261

931. Minimum Falling Path Sum

Java

题解

Medium

262

946. Validate Stack Sequences

Java

题解

Medium

263

992. Subarrays with K Different Integers

Java

题解

Hard

264

1011. Capacity To Ship Packages Within D Days

Java

题解

Medium

265

1094. Car Pooling

Java

题解

Medium

266

1109. Corporate Flight Bookings

Java

题解

Medium

267

1480. Running Sum of 1d Array

Java

题解

Easy

268

1644. Lowest Common Ancestor of a Binary Tree II

Java

题解

Medium

树形DP套路,没有验证答案!

269

1650. Lowest Common Ancestor of a Binary Tree III

Java

题解

Medium

链表相交

270

1823. Find the Winner of the Circular Game

Java

题解

Medium

271

1905. Count Sub Islands

Java

题解

Medium