leetcode-cn对应题号,出现频率依次由高到低,不同类型会有重复题目,配合vscode的leetcode插件食用最佳。
动态规划
| 题号 | 题目 | 难度 | 标签 |
|---|---|---|---|
| 5 | 最长回文子串 | 中等 | 字符串、动态规划 |
| 53 | 最大子序和 | 简单 | 数组、分治算法、动态规划 |
| 85 | 最大矩形 | 困难 | 栈、数组、哈希表、动态规划 |
| 10 | 正则表达式匹配 | 困难 | 字符串、动态规划、回溯算法 |
| 95 | 不同的二叉搜索树II | 中等 | 树、动态规划 |
| 351 | 安卓系统手势解锁 | 中等 | 动态规划、回溯算法 |
| 72 | 编辑距离 | 困难 | 字符串、动态规划 |
| 96 | 不同的二叉搜索树 | 中等 | 树、动态规划 |
| 70 | 爬楼梯 | 简单 | 动态规划 |
| 818 | 赛车 | 困难 | 堆、动态规划 |
| 312 | 戳气球 | 困难 | 动态规划 |
| 64 | 最小路径和 | 中等 | 数组、动态规划 |
| 121 | 买卖股票的最佳时机 | 中等 | 数组、动态规划 |
堆
| 题号 | 题目 | 难度 | 标签 |
|---|---|---|---|
| 23 | 合并K个排序链表 | 困难 | 堆、链表、分治算法 |
| 818 | 赛车 | 困难 | 堆、动态规划 |
| 743 | 网络延迟时间 | 中等 | 堆、广度优先搜索、深度优先搜索、图 |
| 407 | 接雨水II | 困难 | 堆、广度优先搜索 |
| 264 | 丑数II | 中等 | 堆、数学、动态规划 |
| 767 | 重构字符串 | 中等 | 堆、贪心算法、排序、字符串 |
| 358 | K距离间隔重排字符串 | 困难 | 堆、贪心算法、哈希表 |
| 215 | 数组中的第K个最大元素 | 中等 | 堆、分治算法 |
| 378 | 有序矩阵中第K小的元素 | 中等 | 堆、二分查找 |
| 313 | 超级丑数 | 中等 | 堆、数学 |
| 871 | 最低加油次数 | 困难 | 堆、动态规划 |
| 786 | 第K个最小的素数分数 | 困难 | 堆、二分查找 |
| 347 | 前K个高频元素 | 中等 | 堆、哈希表 |
| 218 | 天际线问题 | 困难 | 堆、树状数组、线段树、分治算法 |
二叉树
| 题号 | 题目 | 难度 | 标签 |
|---|---|---|---|
| 95 | 不同的二叉搜索树II | 中等 | 树、动态规划 |
| 96 | 不同的二叉搜索树 | 中等 | 树、动态规划 |
| 94 | 二叉树的中序遍历 | 中等 | 树、栈、哈希表 |
| 226 | 翻转二叉树 | 简单 | 树 |
| 104 | 二叉树的最大深度 | 简单 | 树、深度优先搜索 |
| 617 | 合并二叉树 | 简单 | 树 |
| 107 | 二叉树的层次遍历II | 简单 | 树、广度优先搜索 |
| 108 | 将有序数组转换为二叉搜索树 | 简单 | 树、深度优先搜索 |
| 114 | 二叉树展开为链表 | 中等 | 树、深度优先搜索 |
| 654 | 最大二叉树 | 中等 | 树 |
| 655 | 输出二叉树 | 中等 | 树 |
| 101 | 对称二叉树 | 简单 | 树、深度优先搜索、广度优先搜索 |
| 105 | 从前序与中序遍历序列构造二 | 中等 | 树、深度优先搜索、数组 |
二分查找
| 题号 | 题目 | 难度 | 标签 |
|---|---|---|---|
| 4 | 寻找两个有序数组的中位数 | 困难 | 数组、二分查找、分治算法 |
| 644 | 最大平均子段和11 | 困难 | 数组、二分查找 |
| 349 | 两个数组的交集 | 简单 | 排序、哈希表、双指针、二分查找 |
| 287 | 寻找重复数 | 中等 | 数组、双指针、二分查找 |
| 167 | 两数之和II-输入有序数组 | 简单 | 数组、双指针、二分查找 |
| 363 | 矩形区域不超过K的最大数值和 | 困难 | 队列、二分查找、动态规划 |
| 718 | 最长重复子数组 | 中等 | 数组、哈希表、二分查找、动态规划 |
| 862 | 和至少为K的最短子数组 | 困难 | 队列、二分查找 |
| 300 | 最长上升子序列 | 中等 | 二分查找、动态规划 |
| 50 | Pow(x,n) | 中等 | 数学、二分查找 |
| 327 | 区间和的个数 | 困难 | 排序、树状数组、线段树、二分查找、分治算法 |
| 29 | 两数相除 | 中等 | 数学、二分查找 |
| 33 | 搜索旋转排序数组 | 中等 | 数组、二分查找 |
| 174 | 地下城游戏 | 困难 | 二分查找 、[动态规划 |
广度优先搜索
| 题号 | 题目 | 难度 | 标签 |
|---|---|---|---|
| 815 | 公交路线 | 困难 | 广度优先搜索 |
| 743 | 网络延迟时间 | 中等 | 堆、深度优先搜索、广度优先搜索、图 |
| 107 | 二叉树的层次遍历11 | 简单 | 树、广度优先搜索 |
| 407 | 接雨水II | 困难 | 堆、广度优先搜索 |
| 542 | 01矩阵 | 中等 | 深度优先搜索、广度优先搜索 |
| 847 | 访问所有节点的最短路径 | 困难 | 广度优先搜索、动态规划 |
| 490 | 迷宫 | 中等 | 深度优先搜索、广度优先搜索 |
| 101 | 对称二叉树 | 简单 | 树]深度优先搜索、广度优先搜索 |
| 773 | 滑动谜题 | 困难 | 广度优先搜索 |
| 102 | 二叉树的层次遍历 | 中等 | 树、广度优先搜索 |
| 690 | 员工的重要性 | 简单 | 深度优先搜索、 广度优先搜索1哈希表 |
| 199 | 二叉树的右视图 | 中等 | 树、深度优先搜索 |
| 301 | 删除无效的括号 | 困难 | 深度优先搜索、广度优先搜索 |
| 279 | 完全平方数 | 中等 | 广度优先搜索、数学、动态规划 |
深度优先搜索
| 题号 | 题目 | 难度 | 标签 |
|---|---|---|---|
| 679 | 24点游戏 | 困难 | 深度优先搜索 |
| 753 | 破解保险箱 | 困难 | 深度优先搜索、数学 |
| 104 | 二叉树的最大深度 | 简单 | 树、深度优先搜索 |
| 743 | 网络延迟时间 | 中等 | 堆、深度优先搜索、广度优先搜索、图 |
| 533 | 孤独像索II | 中等 | 深度优先搜索、数组 |
| 694 | 不同岛屿的数量 | 中等 | 深度优先搜索、哈希表 |
| 108 | 将有序数组转换为二叉搜索树 | 简单 | 树、深度优先搜索 |
| 114 | 二叉树展开为链表 | 中等 | 树、深度优先搜索 |
| 542 | 01矩阵 | 中等 | 深度优先搜索 |
| 490 | 迷宫 | 中等 | 深度优先搜索、广 度优先搜索 |
| 101 | 对称二叉树 | 简单 | 树、深度优先搜索 |
| 394 | 字符串解码 | 中等 | 栈、深度优先搜索 |
| 109 | 有序链表转换二叉搜索树 | 中等 | 深度优先搜索、链表 |
| 105 | 从前序与中序遍历序列构造二 | 中等 | 树、深度优先搜索、数组 |
哈希表
| 题号 | 题目 | 难度 | 标签 |
|---|---|---|---|
| 1 | 两数之和 | 简单 | 数组、哈希表 |
| 535 | TinyURL的加密与解密 | 中等 | 哈希表、数学 |
| 771 | 宝石与石头 | 简单 | 哈希表 |
| 3 | 无重复字符的最长子串 | 中等 | 哈希表、双指针、字符串)、Sliding Window |
| 711 | 不同岛屿的数量II | 困难 | 深度优先搜索、哈希表 |
| 37 | 解数独 | 困难 | 哈希表、回溯算法 |
| 85 | 最大矩形 | 困难 | 栈、数组、哈希表、动态规划 |
| 18 | 四数之和 | 中等 | 数组、哈希表、双指针 |
| 94 | 二叉树的中序遍历 | 中等 | 栈、树、哈希表 |
| 136 | 只出现一次的数字 | 简单 | 位运算、哈希表 |
| 739 | 每日温度 | 中等 | 栈、哈希表 |
| 694 | 不同岛屿的数量 | 中等 | 深度优先搜索、哈希表 |
| 463 | 岛屿的周长 | 简单 | 哈希表 |
| 349 | 两个数组的交集 | 简单 | 排序、哈希表、双指针、二分查找 |
回溯算法
| 题号 | 题目 | 难度 | 标签 |
|---|---|---|---|
| 22 | 括号生成 | 中等 | 字符串、回溯算法 |
| 46 | 全排列 | 中等 | 回溯算法 |
| 17 | 电话号码的字母组合 | 中等 | 字符串、回溯算法 |
| 37 | 解数独 | 困难 | 哈希表、回溯算法 |
| 10 | 正则表达式匹配 | 困难 | 字符串、动态规划、回溯算法 |
| 351 | 安卓系统手势解锁 | 中等 | 动态规划、回溯算法 |
| 411 | 最短特异单词缩写 | 困难 | 位运算、回溯算法 |
| 51 | N皇后 | 困难 | 回溯算法 |
| 93 | 复原IP地址 | 中等 | 字符串、回溯算法 |
| 78 | 子集 | 中等 | 位运算 |
| 39 | 组合总和 | 中等 | 数组、回溯算法 |
| 784 | 字母大小写全排列 | 简单 | 位运算、回溯算法 |
| 131 | 分割回文串 | 中等 | 回溯算法 |
链表
| 题号 | 题目 | 难度 | 标签 |
|---|---|---|---|
| 2 | 两数相加 | 中等 | 链表、数学 |
| 21 | 合并两个有序链表 | 简单 | 链表 |
| 206 | 反转链表 | 简单 | 链表 |
| 24 | 两两交换链表中的节点 | 中等 | 链表 |
| 25 | K个组翻转链表 | 困难 | 链表 |
| 92 | 反转链表II | 中等 | 链表 |
| 23 | 合并K个排序链表 | 困难 | 堆链表、分治算法 |
| 148 | 排序链表 | 中等 | 排序链表 |
| 237 | 删除链表中的节点 | 简单 | 链表 |
| 19 | 删除链表的倒数第N个节点 | 中等 | 链表、双指针 |
| 143 | 重排链表 | 中等 | 链表 |
| 86 | 分隔链表 | 中等 | 链表、双指针 |
| 203 | 移除链表元素 | 简单 | 链表 |
| 109 | 有序链表转换二叉搜索树 | 中等 | 深度优先搜索、链表 |
设计
| 题号 | 题目 | 难度 | 标签 |
|---|---|---|---|
| 225 | 用队列实现栈 | 简单 | 栈、设计 |
| 146 | LRU缓存机制 | 中等 | 设计 |
| 588 | 设计内存文件系统 | 困难 | 设计 |
| 460 | LFU缓存 | 困难 | 设计 |
| 155 | 最小栈 | 简单 | 栈、设计 |
| 232 | 用栈实现队列 | 简单 | 栈、设计 |
| 208 | 实现Trie (前缀树) | 中等 | 设计、字典树 |
| 173 | 二叉搜索树迭代器 | 中等 | 栈、树、设计 |
| 379 | 电话目录管理系统 | 中等 | 设计 |
| 284 | 顶端迭代器 | 中等 | 设计 |
| 432 | 全0(1)的数据结构 | 困难 | 设计 |
| 341 | 扁平化嵌套列表迭代器 | 中等 | 栈、设计 |
| 244 | 最短单词距离II | 中等 | 设计、哈希表 |
| 211 | 添加与搜索单词-数据结构设计 | 中等 | 设计、字典树 、回溯算法 |
数学
| 题号 | 题目 | 难度 | 标签 |
|---|---|---|---|
| 2 | 两数相加 | 中等 | 链表、数学 |
| 535 | TinyURL的加密与解密 | 中等 | 哈希表、数学 |
| 7 | 整数反转 | 简单 | 数学 |
| 13 | 罗马数字转整数 | 简单 | 数学、字符串 |
| 9 | 回文数 | 简单 | 数学 |
| 458 | 可怜的小猪 | 困难 | 数学 |
| 233 | 数字1的个数 | 困难 | 数学 |
| 258 | 各位相加 | 简单 | 数学 |
| 12 | 整数转罗马数字 | 中等 | 数学、字符串 |
| 67 | 二进制求和 | 简单 | 数学、字符串 |
| 782 | 变为棋盘 | 困难 | 数组、数学 |
| 753 | 破解保险箱 | 困难 | 深度优先搜索、数学 |
| 728 | 自除数 | 简单 | 数学 |
数组
| 题号 | 题目 | 难度 | 标签 |
|---|---|---|---|
| 1 | 两数之和 | 简单 | 数组、哈希表 |
| 5 | 寻找两个有序数组的中位数 | 困难 | 数组、二分查找、分治算法 |
| 15 | 三数之和 | 中等 | 数组、双指针 |
| 42 | 接雨水 | 困难 | 栈 |
| 11 | 盛最多水的容器 | 中等 | 数组、双指针 |
| 53 | 最大子序和 | 简单 | 数组、分治算法、动态规划 |
| 644 | 最大平均子段和II | 困难 | 数组、二分查找 |
| 16 | 最接近的三数之和 | 中等 | 数组、双指针 |
| 85 | 最大矩形 | 困难 | 栈、数组、哈希表、动态规划 |
| 26 | 删除排序数组中的重复项 | 简单 | 数组、双指针 |
| 717 | 1比特与2比特字符 | 简单 | 数组 |
| 782 | 变为棋盘 | 困难 | 数组、数学 |
| 832 | 翻转图像 | 简单 | 数组 |
贪心算法
| 题号 | 题目 | 难度 | 标签 |
|---|---|---|---|
| 406 | 根据身高重建队列 | 中等 | 贪心算法 |
| 45 | 跳跃游戏II | 困难 | 贪心算法、数组 |
| 765 | 情侣牵手 | 困难 | 贪心算法、并査集、图 |
| 316 | 去除重复字母 | 困难 | 栈、贪心算法 |
| 135 | 分发糖果 | 困难 | 贪心算法 |
| 122 | 买卖股票的最佳时机11 | 简单 | 贪心算法、数组 |
| 767 | 重构字符串 | 中等 | 堆、贪心算法、排序、字符串 |
| 358 | K距离间隔重排字符串 | 困难 | 堆、贪心算法、哈希表 |
| 621 | 任务调度器 | 中等 | 贪心算法、队列、数组 |
| 55 | 跳跃游戏 | 中等 | 贪心算法、数组 |
| 321 | 拼接最大数 | 困难 | 贪心算法、动态规划 |
| 861 | 翻转矩阵后的得分 | 中等 | 贪心算法 |
| 763 | 划分字母区间 | 中等 | 贪心算法、双指针 |
| 714 | 买卖股票的最佳时机含手续费 | 中等 | 贪心算法、数组、动态规划 |
位运算
| 题号 | 题目 | 难度 | 标签 |
|---|---|---|---|
| 78 | 子集 | 中等 | 位运算、数组、回溯算法 |
| 421 | 数组中两个数的最大异或值 | 中等 | 位运算、字典书 |
| 751 | IP到CIDR | 简单 | 位运算 |
| 260 | 只出现一次的数字III | 中等 | 位运算 |
| 137 | 只出现一次的数字II | 中等 | 位运算 |
| 136 | 只出现一次的数字 | 简单 | 位运算、哈希表 |
| 784 | 字母大小写全排列 | 简单 | 位运算、回溯算法 |
| 461 | 汉明距离 | 简单 | 位运算 |
| 371 | 两整数只和 | 简单 | 位运算 |
| 169 | 求众数 | 简单 | 位运算、数组、分治算法 |
| 338 | 比特位计数 | 中等 | 位运算、动态规划 |
| 401 | 二进制手表 | 简单 | 位运算、回溯算法 |
| 187 | 重复的DNA序列 | 简单 | 位运算、哈希表 |
| 476 | 数字的补数 | 简单 | 位运算 |
字符串
| 题号 | 题目 | 难度 | 标签 |
|---|---|---|---|
| 3 | 无重复字符的最长子串 | 中等 | 哈希表、双指针、字符串、sliding window |
| 5 | 最长回文子串 | 中等 | 字符串、动态规划 |
| 22 | 括号生成 | 中等 | 字符串、回溯算法 |
| 13 | 罗马数字转换整数 | 简单 | 数学、字符串 |
| 6 | Z字形变换 | 中等 | 字符串 |
| 38 | 报数 | 简单 | 字符串 |
| 17 | 电话号码的字母组合 | 中等 | 字符串、回溯算法 |
| 10 | 正则表达式匹配 | 困难 | 字符串、动态规划、回溯算法 |
| 20 | 有效的括号 | 简单 | 栈、字符串 |
| 72 | 编辑距离 | 困难 | 字符串、动态规划 |
| 12 | 整转罗马数字 | 中等 | 数学、字符串 |
| 14 | 最长公共前缀 | 简单 | 字符串 |
| 67 | 二进制求和 | 简单 | 数学、字符串 |
| 415 | 字符串相加 | 简单 | 字符串 |
公众号:前端开发指南,学习更多前端进阶知识。