本章导读

本章精选了来自 LeetCode《剑指 Offer》 中的高频经典题目。这些题目不仅是面试的常客,更是锤炼你编程思维的绝佳素材。我们将按照数据结构和算法思想进行分类,助你系统性地进行学习和突破。

1. 核心数据结构 (Core Data Structures)

这是构建所有复杂算法的基础。

  • 数组 (Array):双指针、滑动窗口、二分查找等。
  • 字符串 (String):模式匹配、回文串、最长子序列等。
  • 链表 (Linked List):反转链表、合并链表、环形链表检测等。
  • 栈与队列 (Stack & Queue):括号匹配、用栈实现队列、滑动窗口最大值等。
  • 哈希表 (Hash Table):两数之和、无重复字符的最长子串、字母异位词分组等。
  • 树 (Tree):二叉树的遍历(前/中/后/层序)、深度/广度优先搜索 (DFS/BFS)、平衡二叉树、路径总和等。

2. 核心算法思想 (Core Algorithmic Concepts)

掌握这些思想,你将能应对千变万化的题目。

  • 排序算法 (Sorting):快速排序、归并排序、堆排序等。
  • 搜索算法 (Searching):深度优先搜索 (DFS)、广度优先搜索 (BFS)。
  • 动态规划 (Dynamic Programming - DP):背包问题、最长递增子序列、斐波那契数列变体等。
  • 回溯算法 (Backtracking):全排列、组合、子集、N 皇后问题等。
  • 贪心算法 (Greedy Algorithm):分发饼干、跳跃游戏等。
  • 位运算 (Bit Manipulation):高效解决特定计算问题。

数组

数组的改变、移动

编号 题目 难度 标签 最后更新
0283 移动零 🟢 数组、双指针 2025-07-03

二维数组及滚动数组

编号 题目 难度 标签 最后更新
0118 杨辉三角 🟢 数组、动态规划 2025-07-03

特定顺序遍历二维数组

编号 题目 难度 标签 最后更新
0054 螺旋矩阵 🟡 数组、矩阵、模拟 2025-07-03

二维数组变换

编号 题目 难度 标签 最后更新
0048 旋转图像 🟡 数组、数学、矩阵 2025-07-03

字符串

回文串的定义

编号 题目 难度 标签 最后更新
0125 验证回文串 🟢 双指针、字符串 2025-07-03

公共前缀

编号 题目 难度 标签 最后更新
0014 最长公共前缀 🟢 字符串、分治 2025-07-03

字符串的反转

编号 题目 难度 标签 最后更新
0344 反转字符串 🟢 双指针、字符串、递归 2025-07-03

字符的统计

编号 题目 难度 标签 最后更新
0049 字母异位词分组 🟡 哈希表、字符串、排序 2025-07-03
0242 有效的字母异位词 🟢 哈希表、字符串、排序 2025-07-03

数字与字符串间转换

编号 题目 难度 标签 最后更新
0013 罗马数字转整数 🟢 哈希表、数学、字符串 2025-07-03

高精度运算

编号 题目 难度 标签 最后更新
0067 二进制求和 🟢 数学、字符串、位运算、模拟 2025-07-03
0415 字符串相加 🟢 数学、字符串、模拟、双指针 2025-07-03

字符串变换

编号 题目 难度 标签 最后更新
0006 Z字形变换 🟡 字符串 2025-07-03

字符串匹配

编号 题目 难度 标签 最后更新
0028 找出字符串中第一个匹配项的下标 🟢 字符串、双指针 2025-07-03
0459 重复的子字符串 🟢 字符串、字符串匹配 2025-07-03

中心拓展法

编号 题目 难度 标签 最后更新
0005 最长回文子串 🟡 字符串、动态规划 2025-07-03

数与位

数字的位操作

编号 题目 难度 标签 最后更新
0007 整数反转 🟡 数学 2025-07-03
0009 回文数 🟢 数学 2025-07-03

简单数学题

编号 题目 难度 标签 最后更新
2235 两整数相加 🟢 数学 2025-07-03

栈与递归

用栈访问最后若干元素

编号 题目 难度 标签 最后更新
1047 删除字符串中的所有相邻重复项 🟢 栈、字符串 2025-07-03

栈与括号匹配

编号 题目 难度 标签 最后更新
0020 有效的括号 🟢 栈、字符串 2025-07-03

链表

链表的删除

编号 题目 难度 标签 最后更新
0019 删除链表的倒数第N个结点 🟡 链表、双指针 2025-07-03
0203 移除链表元素 🟢 链表、递归 2025-07-03

链表的旋转与反转

编号 题目 难度 标签 最后更新
0024 两两交换链表中的节点 🟡 链表、递归 2025-07-03
0092 反转链表 II 🟡 链表 2025-07-03
0206 反转链表 🟢 递归、链表 2025-07-03

链表高精度加法

编号 题目 难度 标签 最后更新
0002 两数相加 🟡 链表、数学、递归 2025-07-03

链表的合并

编号 题目 难度 标签 最后更新
0021 合并两个有序链表 🟢 递归、链表 2025-07-03

哈希表

哈希表的查找、插入及删除

编号 题目 难度 标签 最后更新
0128 最长连续序列 🟡 数组、哈希表、并查集 2025-07-03
0202 快乐数 🟢 哈希表、数学、双指针 2025-07-03
0349 两个数组的交集 🟢 数组、哈希表、双指针、排序 2025-07-03

哈希表与索引

编号 题目 难度 标签 最后更新
0001 两数之和 🟢 数组、哈希表 2025-07-03

哈希表与统计

编号 题目 难度 标签 最后更新
0018 四数之和 🟡 数组、双指针、排序 2025-07-03

贪心算法

数组与贪心算法

编号 题目 难度 标签 最后更新
0056 合并区间 🟡 数组、排序 2025-07-03
0121 买卖股票的最佳时机 🟢 数组、动态规划 2025-07-03
0122 买卖股票的最佳时机 II 🟢 数组、贪心、动态规划 2025-07-03
0169 多数元素 🟢 数组、哈希表、分治、排序、计数 2025-07-03
0215 数组中的第K个最大元素 🟡 数组、分治、快速选择、排序、堆 2025-07-03

子数组与贪心算法

编号 题目 难度 标签 最后更新
0053 最大子数组和 🟡 数组、分治、动态规划 2025-07-03

双指针法

头尾指针

编号 题目 难度 标签 最后更新
0011 盛水最多的容器 🟡 贪心、数组、双指针 2025-07-03
0015 三数之和 🟡 数组、双指针、排序 2025-07-03
0016 最接近的三数之和 🟡 数组、双指针、排序 2025-07-03
0977 有序数组的平方 🟢 数组、双指针、排序 2025-07-03

同向双指针、滑动窗口

编号 题目 难度 标签 最后更新
0003 无重复字符的最长子串 🟡 哈希表、字符串、滑动窗口 2025-07-03
0026 删除有序数组中的重复项 🟢 数组、双指针 2025-07-03
0027 移除元素 🟢 数组、双指针 2025-07-03
0083 删除排序链表中的重复元素 🟢 链表 2025-07-03
0209 长度最小的子数组 🟡 数组、二分查找、前缀和、滑动窗口 2025-07-03
1768 交替合并字符串 🟢 字符串、双指针 2025-07-03

分段双指针

编号 题目 难度 标签 最后更新
0088 合并两个有序数组 🟢 数组、双指针、排序 2025-07-03
0160 相交链表 🟢 哈希表、链表、双指针 2025-07-03

快慢指针

编号 题目 难度 标签 最后更新
0141 环形链表 🟢 哈希表、链表、双指针 2025-07-03
0142 环形链表 II 🟡 哈希表、链表、双指针 2025-07-03
0143 重排链表 🟡 链表、双指针、栈、递归 2025-07-03
0234 回文链表 🟢 链表、双指针、栈、递归 2025-07-03

树与递归

编号 题目 难度 标签 最后更新
0101 对称二叉树 🟢 树、深度优先搜索、广度优先搜索、二叉树 2025-07-03
0226 翻转二叉树 🟢 树、深度优先搜索、广度优先搜索、二叉树、递归 2025-07-03
0543 二叉树的直径 🟢 树、深度优先搜索、二叉树、递归 2025-07-03
0572 另一棵树的子树 🟢 树、深度优先搜索、二叉树、递归 2025-07-03

树的层次遍历

编号 题目 难度 标签 最后更新
0102 二叉树的层序遍历 🟡 树、广度优先搜索、二叉树 2025-07-03
0103 二叉树的锯齿形层序遍历 🟡 树、广度优先搜索、二叉树、队列 2025-07-03
0104 二叉树的最大深度 🟢 树、深度优先搜索、广度优先搜索、二叉树、递归 2025-07-03
0111 二叉树的最小深度 🟢 树、深度优先搜索、广度优先搜索、二叉树、递归 2025-07-03
0112 路径总和 🟢 树、深度优先搜索、广度优先搜索、二叉树、递归 2025-07-03
0199 二叉树的右视图 🟡 树、深度优先搜索、广度优先搜索、二叉树 2025-07-03

树的前序遍历

编号 题目 难度 标签 最后更新
0144 二叉树的前序遍历 🟢 栈、树、深度优先搜索、二叉树、递归 2025-07-03

树的中序遍历与二叉搜索树

编号 题目 难度 标签 最后更新
0094 二叉树的中序遍历 🟢 栈、树、深度优先搜索、二叉树、递归 2025-07-03
0110 平衡二叉树 🟢 树、深度优先搜索、二叉树、递归 2025-07-03

最近公共祖先

编号 题目 难度 标签 最后更新
0236 二叉树的最近公共祖先 🟡 树、深度优先搜索、二叉树 2025-07-03

图与搜索

深度优先搜索

编号 题目 难度 标签 最后更新
0017 电话号码的字母组合 🟡 哈希表、字符串、回溯 2025-07-03

回溯法

编号 题目 难度 标签 最后更新
0039 组合总和 🟡 数组、回溯 2025-07-03
0046 全排列 🟡 数组、回溯 2025-07-03
0047 全排列 II 🟡 数组、回溯 2025-07-03
0077 组合 🟡 数组、回溯 2025-07-03
0078 子集 🟡 位运算、数组、回溯 2025-07-03
0093 复原 IP 地址 🟡 字符串、回溯 2025-07-03

回溯法与括号

编号 题目 难度 标签 最后更新
0022 括号生成 🟡 字符串、动态规划、回溯 2025-07-03

广度优先搜索

编号 题目 难度 标签 最后更新
0200 岛屿数量 🟡 深度优先搜索、广度优先搜索、并查集、数组、矩阵 2025-07-03

二分查找

二分查找应用(简单)

编号 题目 难度 标签 最后更新
0035 搜索插入位置 🟢 数组、二分查找 2025-07-03
0069 x的平方根 🟢 数学、二分查找 2025-07-03
0704 二分查找 🟢 数组、二分查找 2025-07-03

二分查找应用(中等)

编号 题目 难度 标签 最后更新
0300 最长递增子序列 🟡 数组、动态规划、二分查找 2025-07-03

二进制运算的应用

异或的应用

编号 题目 难度 标签 最后更新
0136 只出现一次的数字 🟢 位运算、数组、哈希表 2025-07-03

动态规划

数组中的动态规划

编号 题目 难度 标签 最后更新
0070 爬楼梯 🟢 动态规划、记忆化搜索、数学 2025-07-03
0198 打家劫舍 🟡 数组、动态规划 2025-07-03
0509 斐波那契数 🟢 动态规划、记忆化搜索、数学、递归 2025-07-03

子数组、子序列中的动态规划

编号 题目 难度 标签 最后更新
1143 最长公共子序列 🟡 字符串、动态规划 2025-07-03

背包问题

编号 题目 难度 标签 最后更新
0322 零钱兑换 🟡 广度优先搜索、数组、动态规划 2025-07-03

矩阵中的动态规划

编号 题目 难度 标签 最后更新
0746 使用最小花费爬楼梯 🟢 数组、动态规划 2025-07-03

动态规划与字符串匹配

编号 题目 难度 标签 最后更新
0072 编辑距离 🟡 字符串、动态规划 2025-07-03

数据结构

数据结构设计——栈与队列

编号 题目 难度 标签 最后更新
0155 最小栈 🟢 栈、设计 2025-07-03
0225 用队列实现栈 🟢 栈、设计、队列 2025-07-03
0232 用栈实现队列 🟢 栈、设计、队列 2025-07-03

数据结构设计——哈希与双向链表

编号 题目 难度 标签 最后更新
0146 LRU缓存 🟡 哈希表、链表、设计、双向链表 2025-07-03

采样

计算几何

常用技巧与算法

剑指 Offer

编号 题目 难度 标签 最后更新
LCR 120 寻找文件副本 🟢 数组、哈希表、排序 2025-07-03
LCR 121 寻找目标值 🟡 数组、二分查找、矩阵 2025-07-03
LCR 125 用队列实现栈 🟢 栈、设计、队列 2025-07-03
LCR 126 斐波那契数 🟢 动态规划、记忆化搜索、数学 2025-07-03
LCR 127 训练计划 V 🟢 动态规划、记忆化搜索、数学 2025-07-03
LCR 139 训练计划 I 🟢 数组、双指针、排序 2025-07-03
LCR 140 训练计划 II 🟢 链表、双指针 2025-07-03
LCR 144 翻转二叉树 🟢 树、深度优先搜索、二叉树、递归 2025-07-03
LCR 146 螺旋遍历二维数组 🟡 数组、矩阵、模拟 2025-07-03
LCR 158 库存管理 I 🟢 数组、哈希表、分治、排序、计数 2025-07-03
LCR 161 销售区域最大销售额 🟡 数组、分治、动态规划 2025-07-03
LCR 171 链表中第一个公共节点 🟢 哈希表、链表、双指针 2025-07-03
Copyright © Jun 2025 all right reserved,powered by Gitbook该文件修订时间: 2025-07-03 17:35:09

results matching ""

    No results matching ""

    results matching ""

      No results matching ""