/LeetCode

力扣(LeetCode)的习题练习

这是我力扣(LeetCode)的解题思路记录

欢迎大家浏览,这里的解题思路是我看到题目后真实的想法,包括了对问题的解析和尝试,当然也包含了错误的解析和错误的尝试(滑稽)

基础是python的版本,正好最近我在学go,也会试着把go的代码写上去(也会比较两个语言的差异)


下面是分类(有一些题目存在多个类别下,只涉及前面我认为比较符合的题目,更多题目的解析在LeetCode解题里面)

递归解题

PS:树和链表这种结构天生就适用于递归

24. 两两交换链表中的节点

25. K 个一组翻转链表

83. 删除排序链表中的重复元素

94. 二叉树的中序遍历

98. 验证二叉搜索树

101. 对称二叉树

111. 二叉树的最小深度

114. 二叉树展开为链表

206. 反转链表

226. 翻转二叉树

617. 合并二叉树

654. 最大二叉树

200. 岛屿数量

235. 二叉搜索树的最近公共祖先


回溯解题

46. 全排列

51. N皇后

52. N皇后 II

78. 子集

79. 单词搜索


位运算

29. 两数相除

136. 只出现一次的数字


字典解题算法

31. 下一个排列


集合解题

128. 最长连续序列


动态规划

32. 最长有效括号

53. 最大子序和

62. 不同路径

64. 最小路径和

70. 爬楼梯

72. 编辑距离

96. 不同的二叉搜索树

121. 买卖股票的最佳时机

139. 单词拆分

152. 乘积最大子序列

155. 最小栈

198. 打家劫舍

221. 最大正方形


分治算法

53. 最大子序和

169. 多数元素


贪心算法

53. 最大子序和

55. 跳跃游戏


排序算法

归并排序

148. 排序链表

215. 数组中的第K个最大元素

快速排序

215. 数组中的第K个最大元素


双指针

75. 颜色分类

76. 最小覆盖子串

141. 环形链表

142. 环形链表 II

160. 相交链表


84. 柱状图中最大的矩形


宽度优先-BFS

102. 二叉树的层次遍历

深度优先-DFS

94. 二叉树的中序遍历

104. 二叉树的最大深度

105. 从前序与中序遍历序列构造二叉树

124. 二叉树中的最大路径和

前缀树

208. 实现 Trie (前缀树)

链表

234. 回文链表

有向图

207. 课程表

210. 课程表 II

有序字典OrderedDict

146. LRU缓存机制