LeetCode 刷题记录

目录

参考学习博客题解:

解题汇总:

分类汇总

逻辑运算符的应用

二分查找

树的应用:

图的应用: (拓扑排序,DFS,BFS)

链表应用

回溯法,深度优先搜索,广度优先搜索 ,贪心法,分治法

 动态规划,

双指针法:

进制转换问题:

字符串问题:

C++ STL 中 map ,priority_queue,unordered_map应用 :

C++ STL 中 next_permutation()和 prev_permutation()用法

 C++ STL 中 partial_sum()用法


参考学习博客题解:

  1. http://blackblog.tech/categories/OJ/
  2. LeetCode All in One 题目讲解汇总(持续更新中...)

解题汇总:

  • 1.两数之和
  • 2. 两数相加
  • 3. 无重复字符的最长子串
  • 4. 寻找两个有序数组的中位数
  • 5. 最长回文子串
  • 6. Z 字形变换
  • 7. 整数反转
  • 9. 回文数
  • 11. 盛最多水的容器 
  • 15. 三数之和
  • 17. 电话号码的字母组合
  • 19. 删除链表的倒数第N个节点
  • 20. 有效的括号
  • 21. 合并两个有序链表
  • 22. 括号生成
  • 23. 合并K个排序链表
  • 24. 两两交换链表中的节点 
  • 26.从排序数组中删除重复项
  • 31. 下一个排列
  • 33. 搜索旋转排序数组
  • 34. 在排序数组中查找元素的第一个和最后一个位置
  • 39. 组合总和
  • 40. 组合总和 II
  • 46. 全排列
  • 49. 字母异位词分组
  • 53. 最大子序和
  • 54.螺旋矩阵
  • 55. 跳跃游戏
  • 56. 合并区间
  • 61. 旋转链表
  • 63. 不同路径 II
  • 69. x 的平方根
  • 70. 爬楼梯
  • 72.编辑距离
  • 73. 矩阵置零
  • 74. 搜索二维矩阵
  • 75. 颜色分类
  • 78. 子集
  • 79. 单词搜索
  • 86. 分隔链表
  • 88. 合并两个有序数组
  • 92. 反转链表 II
  • 98. 验证二叉搜索树
  • 100. 相同的树
  • 101. 对称二叉树 
  • 102. 二叉树的层次遍历
  • 103. 二叉树的锯齿形层次遍历
  • 104.二叉树的最大深度
  • 105. 从前序与中序遍历序列构造二叉树
  • 106. 从中序与后序遍历序列构造二叉树
  • 107. 二叉树的层次遍历 II
  • 108. 将有序数组转换为二叉搜索树
  • 110. 平衡二叉树
  • 111. 二叉树的最小深度
  • 113. 路径总和 II
  • 116. 填充每个节点的下一个右侧节点指针
  • 120. 三角形最小路径和
  • 122. 买卖股票的最佳时机 II
  • 125. 验证回文串
  • 136. 只出现一次的数字
  • 137. 只出现一次的数字 II
  • 150.逆波兰表达式求值
  • 153. 寻找旋转排序数组中的最小值
  • 155. 最小栈
  • 160. 相交链表
  • 162. 寻找峰值
  • 169. 求众数
  • 190. 颠倒二进制位
  • 191. 位1的个数
  • 198. 打家劫舍
  • 200. 岛屿数量
  • 207. 课程表
  • 210. 课程表 II
  • 215. 数组中的第K个最大元素
  • 216. 组合总和 III
  • 217. 存在重复元素
  • 225. 用队列实现栈
  • 230. 二叉搜索树中第K小的元素
  • 235. 二叉搜索树的最近公共祖先
  • 239. 滑动窗口最大值
  • 240. 搜索二维矩阵 II
  • 260. 只出现一次的数字 III
  • 268. 缺失数字
  • 278. 第一个错误的版本
  • 279. 完全平方数
  • 283. 移动零
  • 287. 寻找重复数
  • 289. 生命游戏
  • 292. Nim 游戏
  • 295. 数据流的中位数
  • 300. 最长上升子序列
  • 322. 零钱兑换
  • 328. 奇偶链表
  • 334. 递增的三元子序列
  • 344. 反转字符串
  • 345. 反转字符串中的元音字母
  • 347. 前K个高频元素
  • 349. 两个数组的交集
  • 350. 两个数组的交集 II
  • 371. 两整数之和
  • 374. 猜数字大小
  • 387. 字符串中的第一个唯一字符
  • 389. 找不同
  • 409. 最长回文串
  • 414. 第三大的数
  • 416. 分割等和子集
  • 429. N叉树的层序遍历
  • 461. 汉明距离
  • 473. 火柴拼正方形
  • 541. 反转字符串 II
  • 543. 二叉树的直径
  • 560. 和为K的子数组
  • 653. 两数之和 IV - 输入 BST
  • 680. 验证回文字符串 Ⅱ
  • 697. 数组的度
  • 703. 数据流中的第K大元素
  • 704. 二分查找
  • 867. 转置矩阵
  • 1104. 分糖果 II
  • 1017. 负二进制转换
  • 1046. 最后一块石头的重量
  • 1047. 删除字符串中的所有相邻重复项
  • 1025. 除数博弈
  • 1089. 复写零
  • 1090. 受标签影响的最大值
  • 1091. 二进制矩阵中的最短路径
  • 1093. 大样本统计
  • 1094. 拼车
  • 5027. Remove Vowels From a String
  • 5076. 字符串的最大公因子
  • 5078. 负二进制数相加
  • 帕斯卡三角形

分类汇总

逻辑运算符的应用

  • 371. 两整数之和

二分查找

  • 33. 搜索旋转排序数组
  • 34. 在排序数组中查找元素的第一个和最后一个位置
  • 69. x 的平方根
  • 74. 搜索二维矩阵
  • 153. 寻找旋转排序数组中的最小值
  • 162. 寻找峰值
  • 278. 第一个错误的版本
  • 287. 寻找重复数
  • 374. 猜数字大小
  • 704. 二分查找

树的应用:

  • 98. 验证二叉搜索树

  • 100. 相同的树

  • 101. 对称二叉树 

  • 102. 二叉树的层次遍历

  • 103. 二叉树的锯齿形层次遍历

  • 104.二叉树的最大深度

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

  • 106. 从中序与后序遍历序列构造二叉树

  • 107. 二叉树的层次遍历 II

  • 108. 将有序数组转换为二叉搜索树

  • 110. 平衡二叉树​​​​​​​

  • 111. 二叉树的最小深度

  • 113. 路径总和 II

  • 116. 填充每个节点的下一个右侧节点指针

  • 230. 二叉搜索树中第K小的元素

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

  • 429. N叉树的层序遍历​​​​​​​

  • 543. 二叉树的直径​​​​​​​

图的应用: (拓扑排序,DFS,BFS)

  • 200. 岛屿数量​​​​​​​
  • 207. 课程表​​​​​​​
  • 210. 课程表 II​​​​​​​
  • 1091. 二进制矩阵中的最短路径

链表应用

  • 19. 删除链表的倒数第N个节点​​​​​​​

  • 21. 合并两个有序链表

  • 23. 合并K个排序链表​​​​​​​​​​​​​​

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

  • 61. 旋转链表​​​​​​​

  • 86. 分隔链表​​​​​​​​​​​​​​

  • 92. 反转链表 II​​​​​​​​​​​​​​

  • 160. 相交链表​​​​​​​

  • 328. 奇偶链表​​​​​​​

回溯法,深度优先搜索,广度优先搜索 ,贪心法,分治法

  • Backtracking回溯法(又称DFS,递归)全解​​​​​​​
  • 17. 电话号码的字母组合
  • 22. 括号生成​​​​​​​
  • 39. 组合总和​​​​​​​​​​​​​​
  • 40. 组合总和 II
  • 46. 全排列​​​​​​​
  • 53. 最大子序和
  • 55. 跳跃游戏
  • 70. 爬楼梯
  • 78. 子集​​​​​​​​​​​​​​
  • 79. 单词搜索​​​​​​​
  • 103. 二叉树的锯齿形层次遍历​​​​​​​
  • 200. 岛屿数量​​​​​​​
  • 207. 课程表​​​​​​​
  • 210. 课程表 II​​​​​​​
  • 216. 组合总和 III​​​​​​​
  • 416. 分割等和子集
  • 429. N叉树的层序遍历​​​​​​​
  • 473. 火柴拼正方形
  • 1090. 受标签影响的最大值

 动态规划,

  • 53. 最大子序和
  • 55. 跳跃游戏
  • 63. 不同路径 II
  • 70. 爬楼梯
  • 120. 三角形最小路径和​​​​​​​
  • 1025. 除数博弈​​​​​​​​​​​​​​

双指针法:

  • 11. 盛最多水的容器 
  • 15. 三数之和​​​​​​​

进制转换问题:

  • 190. 颠倒二进制位​​​​​​​​​​​​​​
  • 1017. 负二进制转换
  • 5078. 负二进制数相加​​​​​​​

字符串问题:

  • 3. 无重复字符的最长子串​​​​​​​
  • 5. 最长回文子串​​​​​​​​​​​​​​
  • 6. Z 字形变换​​​​​​​​​​​​​​
  • 49. 字母异位词分组​​​​​​​
  • 73. 矩阵置零​​​​​​​
  • 334. 递增的三元子序列
  • 5076. 字符串的最大公因子

C++ STL 中 map ,priority_queue,unordered_map应用 :

  • 697. 数组的度
  • 347. 前K个高频元素​​​​​​​
  • 560. 和为K的子数组​​​​​​​

C++ STL 中 next_permutation()和 prev_permutation()用法

  • [算法]——全排列(Permutation)以及next_permutation
  • C++中全排列函数next_permutation 用法 
  • 46. 全排列​​​​​​​​​​​​​​

 C++ STL 中 partial_sum()用法

  • 1094. 拼车

你可能感兴趣的:(LeetCode)