酷酷的算法酷酷的算法
蓝莓随便扯
操作系统
计算机网络
分布式系统
力扣刷题
编程语言
GitHub
蓝莓随便扯
操作系统
计算机网络
分布式系统
力扣刷题
编程语言
GitHub
  • 一起刷力扣

一起刷力扣

基础

  • 如何写出正确的代码 ✅

1、数组

入门

  • 0283 移动零 ✅
  • 0027 移动元素 ✅
  • 0026 删除有序数组中的重复项 ✅
  • 0080 删除有序数组中的重复项 II ✅

三路快排

  • 0075 颜色分类 ✅
  • 0088 合并两个有序数组 ✅
  • 0215 数组中的第K个最大元素 ✅

对撞指针

  • 0167 两数之和 II - 输入有序数组 ✅
  • 0125 验证回文串 ✅
  • 0345 反转字符串中的元音字母 ✅
  • 0011 盛最多水的容器 ✅

滑动窗口

  • 0209 长度最小的子数组 ✅
  • 0003 无重复字符的最长子串 ✅
  • 0438 找到字符串中所有字母异位词 ✅
  • 0076 最小覆盖子串 ✅

更多练习

  • 0169 多数元素 ✅
  • 0189 轮转数组 ✅

2、查找表

set && map 入门

  • 0349 两个数组的交集 ✅
  • 0350 两个数组的交集 II ✅

set && map 练习

  • 0242 有效的字母异位词 II ✅
  • 0202 快乐数 II ✅
  • 0290 单词规律 ✅
  • 0205 同构字符串 ✅
  • 0451 根据字符出现频率排序 ✅

查找表问题

  • 0001 两数之和 ✅
  • 0015 三数之和 ✅
  • 0018 四数之和 ✅
  • 0016 最接近的三数之和 ✅

键值选择

  • 0454. 四数相加 II ✅
  • 0049. 字母异位词分组 ✅
  • 0447. 回旋镖的数量 ✅
  • 0149. 直线上最多的点数 ✅

滑动窗口 + 查找表

  • 0219 存在重复元素 II ✅
  • 0217 存在重复元素 ✅

二分搜索树的顺序性

  • 0220 存在重复元素 III ✅

3、链表

入门

  • 0206 反转链表 ✅
  • 0092 反转链表 II ✅
  • 0083 删除排序链表中的重复元素 ✅
  • 0086 分隔链表 ✅
  • 0328 奇偶链表 II ✅
  • 0231 2 的幂 ✅
  • 0445 两数相加 II ✅

虚拟头结点的使用

  • 0203 移除链表元素I ✅
  • 0082 删除排序链表中的重复元素 II ✅
  • 0021 合并两个有序链表 ✅
  • 0024. 两两交换链表中的节点 ✅
  • 0025. K 个一组翻转链表 II ✅
  • 0147. 对链表进行插入排序 ✅
  • 0148. 排序链表 ✅
  • 0237 删除链表中的节点 II ✅

双指针

  • 0019 删除链表的倒数第 N 个结点 ✅
  • 0143 重排链表 ✅
  • 0234 回文链表 II ✅

4、栈,队列,优先队列

栈

  • 0020 有效的括号 ✅
  • 0150 逆波兰表达式求值 ✅
  • 0071 简化路径 ✅
  • 0341 扁平化嵌套列表迭代器

队列

  • 0102 二叉树的层序遍历 ✅
  • 0107 二叉树的层序遍历 II ✅
  • 0103 二叉树的锯齿形层序遍历 ✅
  • 0199 二叉树的右视图 ✅

广度优先搜索

  • 0279 完全平方数 ✅⭐️
  • 0127 单词接龙
  • 0126 单词接龙 II

优先队列

  • 0347 前 K 个高频元素
  • 0023 合并 K 个升序链表

5、二叉树

基础

  • 0111 二叉树的最小深度
  • 0226 翻转二叉树
  • 0100 相同的树
  • 0101 对称二叉树
  • 0222 完全二叉树的节点个数
  • 0110 平衡二叉树

递归终止条件

  • 0112 路径总和
  • 0111 二叉树的最小深度
  • 0404 左叶子之和

递归问题的定义

  • 0257 二叉树的所有路径
  • 0113 路径总和 II
  • 0129 求根节点到叶节点数字之和
  • 0437 路径总和 III

二分搜索树

  • 0235 二叉搜索树的最近公共祖先
  • 0098 验证二叉搜索树
  • 0450 删除二叉搜索树中的节点
  • 0108 将有序数组转换为二叉搜索树
  • 0230 二叉搜索树中第 K 小的元素
  • 0236 二叉树的最近公共祖先

6、递归和回溯

基础

  • 0017 电话号码的字母组合
  • 0093 复原 IP 地址
  • 0131 分割回文串

排列

  • 0046 全排列
  • 0047 全排列 II

组合

  • 0077 组合
  • 0040 组合总和 II
  • 0216 组合总和 III
  • 0078 子集
  • 0090 子集 II
  • 0401 二进制手表

二维平面的回溯

  • 0079 单词搜索

floodfill

  • 0200 岛屿数量
  • 0130 被围绕的区域
  • 0417 太平洋大西洋水流问题

练习

  • 0051 N 皇后
  • 0052 N 皇后 II
  • 0037 解数独
  • 0002 N-Queens

7、动态规划

基础

  • 0070 爬楼梯
  • 0120 三角形最小路径和
  • 0064 最小路径和

重叠子问题

  • 0343 整数拆分
  • 0279 完全平方数
  • 0091 解码方法
  • 0062 不同路径
  • 0063 不同路径 II

状态定义和状态转移

  • 0198 打家劫舍
  • 0213 打家劫舍 II
  • 0337 打家劫舍 III
  • 0309 买卖股票的最佳时机含冷冻期

背包问题

  • 0-1 背包基础
  • 0416 分割等和子集 (1)
  • 0416 分割等和子集 (2)
  • 0322 零钱兑换
  • 0377 组合总和 Ⅳ
  • 0474 一和零
  • 0139 单词拆分
  • 0494 目标和

最长上升子序列 LIS(Longest Increasing Subsequence)

  • 0300 最长递增子序列
  • 0376 摆动序列

最长公共子序列 LCS (Lonogest Common Sequence)

  • 1143 最长公共子序列

8、贪心算法

  • 0455 分发饼干
  • 0392 判断子序列
  • 0435 无重叠区间
  • 0279 完全平方数

待分类

  • 0752 Open-The-Lock
完善页面
最近更新: 2026/7/19 19:14