顺的网站建设策划一般企业网站3年多少钱
| 💡 LeetCode 高频面试题分类列表,总共24类,312道题目! | 
|---|

图
- 133.克隆图
 - 207.课程表
 - 210.课程表 II
 - 399.除法求值
 - 547.省份数量
 - 684.冗余连接
 - 743.网络延迟时间
 - 785.判断二分图
 
堆
- 215.数组中的第K个最大元素
 - 295.数据流的中位数
 - 264.丑数 II
 - 347.前 K 个高频元素
 - 378.有序矩阵中第 K 小的元素
 - 703.数据流中的第 K 大元素
 - 767.重构字符串
 - 剑指 Offer 41.数据流中的中位数
 
栈
- 20.有效的括号
 - 71.简化路径
 - 84.柱状图中最大的矩形
 - 85.最大矩形
 - 155.最小栈
 - 224.基本计算器
 - 227.基本计算器 II
 - 394.字符串解码
 - 402.移掉 K 位数字
 - 503.下一个更大元素 II
 - 739.每日温度
 - 1047.删除字符串中的所有相邻重复项
 - 剑指 Offer 06.从尾到头打印链表
 - 剑指 Offer 30.包含min函数的栈
 - 剑指 Offer 31.栈的压入、弹出序列
 
队列
- 225.用队列实现栈
 - 232.用栈实现队列
 - 239.滑动窗口最大值
 - 387.字符串中的第一个唯一字符
 - 622.设计循环队列
 - 862.和至少为 K 的最短子数组
 - 933.最近的请求次数
 - 剑指 Offer 09.用两个栈实现队列
 - 剑指 Offer 59 - I.滑动窗口的最大值
 - 剑指 Offer 59 - II.队列的最大值
 
链表
- 2.两数相加
 - 25.K 个一组翻转链表
 - 82.删除排序链表中的重复元素 II
 - 83.删除排序链表中的重复元素
 - 86.分隔链表
 - 92.反转链表 II
 - 138.复制带随机指针的链表
 - 143.重排链表
 - 160.相交链表
 - 328.奇偶链表
 - 445.两数相加 II
 - 876.链表的中间结点
 - 剑指 Offer 22.链表中倒数第k个节点
 - 剑指 Offer 24.反转链表
 - 剑指 Offer 52.两个链表的第一个公共节点
 
数组
- 1.两数之和
 - 31.下一个排列
 - 33.搜索旋转排序数组
 - 41.缺失的第一个正数
 - 56.合并区间
 - 162.寻找峰值
 - 189.轮转数组
 - 560.和为 K 的子数组
 - 695.岛屿的最大面积
 - 剑指 Offer 66.构建乘积数组
 
矩阵
- 36.有效的数独
 - 37.解数独
 - 48.旋转图像
 - 54.螺旋矩阵
 - 59.螺旋矩阵 II
 - 73.矩阵置零
 - 74.搜索二维矩阵
 - 240.搜索二维矩阵 II
 - 733.图像渲染
 - 剑指 Offer 04.二维数组中的查找
 - 剑指 Offer 29.顺时针打印矩阵
 
字符串
- 6.Z 字形变换
 - 12.整数转罗马数字
 - 14.最长公共前缀
 - 28.实现 strStr()
 - 58.最后一个单词的长度
 - 115.不同的子序列
 - 151.颠倒字符串中的单词
 - 344.反转字符串
 - 443.压缩字符串
 - 459.重复的子字符串
 - 556.下一个更大元素 III
 - 557.反转字符串中的单词 III
 - 647.回文子串
 - 678.有效的括号字符串
 - 680.验证回文字符串 Ⅱ
 - 剑指 Offer 05.替换空格
 - 剑指 Offer 20.表示数值的字符串
 - 剑指 Offer 67.把字符串转换成整数
 
哈希表
- 49.字母异位词分组
 - 202.快乐数
 - 204.计数质数
 - 692.前K个高频单词
 - 706.设计哈希映射
 - 895.最大频率栈
 - 974.和可被 K 整除的子数组
 - 1044.最长重复子串
 - 剑指 Offer 03.数组中重复的数字
 - 剑指 Offer 35.复杂链表的复制
 - 面试题50.第一个只出现一次的字符
 
二叉树
- 94.二叉树的中序遍历
 - 100.相同的树
 - 108.将有序数组转换为二叉搜索树
 - 116.填充每个节点的下一个右侧节点指针
 - 117.填充每个节点的下一个右侧节点指针 II
 - 144.二叉树的前序遍历
 - 144.二叉树的前序遍历
 - 222.完全二叉树的节点个数
 - 226.翻转二叉树
 - 236.二叉树的最近公共祖先
 - 297.二叉树的序列化与反序列化
 - 404.左叶子之和
 - 450.删除二叉搜索树中的节点
 - 501.二叉搜索树中的众数
 - 508.出现次数最多的子树元素和
 - 530.二叉搜索树的最小绝对差
 - 538.把二叉搜索树转换为累加树
 - 543.二叉树的直径
 - 617.合并二叉树
 - 637.二叉树的层平均值
 - 654.最大二叉树
 - 662.二叉树最大宽度
 - 669.修剪二叉搜索树
 - 700.二叉搜索树中的搜索
 - 701.二叉搜索树中的插入操作
 - 889.根据前序和后序遍历构造二叉树
 - 958.二叉树的完全性检验
 - 剑指 Offer 27.二叉树的镜像
 - 剑指 Offer 54.二叉搜索树的第k大节点
 - 剑指 Offer 68 - I.二叉搜索树的最近公共祖先
 - 剑指 Offer 68 - II.二叉树的最近公共祖先
 
广度优先搜索
- 102.二叉树的层序遍历
 - 103.二叉树的锯齿形层序遍历
 - 107.二叉树的层序遍历 II
 - 111.二叉树的最小深度
 - 310.最小高度树
 - 513.找树左下角的值
 - 剑指 Offer 32 - II.从上到下打印二叉树 II
 - 剑指 Offer 32 - III.从上到下打印二叉树 III
 - 剑指 Offer 37.序列化二叉树
 
深度优先搜索
- 99.恢复二叉搜索树
 - 101.对称二叉树
 - 105.从前序与中序遍历序列构造二叉树
 - 106.从中序与后序遍历序列构造二叉树
 - 109.有序链表转换二叉搜索树
 - 114.二叉树展开为链表
 - 257.二叉树的所有路径
 - 301.删除无效的括号
 - 剑指 Offer 12.矩阵中的路径
 - 剑指 Offer 17.打印从1到最大的n位数
 - 剑指 Offer 34.二叉树中和为某一值的路径
 - 剑指 Offer 55 - I.二叉树的深度
 - 剑指 Offer 55 - II.平衡二叉树
 
滑动窗口
- 3.无重复字符的最长子串
 - 187.重复的DNA序列
 - 219.存在重复元素 II
 - 220.存在重复元素 III
 - 1004.最大连续1的个数 III
 - 剑指 Offer 48.最长不含重复字符的子字符串
 - 剑指 Offer 57 - II.和为s的连续正数序列
 - 剑指 Offer 58 - I.翻转单词顺序
 
动态规划
- 5.最长回文子串
 - 32.最长有效括号
 - 62.不同路径
 - 63.不同路径 II
 - 64.最小路径和
 - 70.爬楼梯
 - 72.编辑距离
 - 91.解码方法
 - 96.不同的二叉搜索树
 - 97.交错字符串
 - 120.三角形最小路径和
 - 121.买卖股票的最佳时机
 - 122.买卖股票的最佳时机 II
 - 123.买卖股票的最佳时机 III
 - 139.单词拆分
 - 152.乘积最大子数组
 - 198.打家劫舍
 - 213.打家劫舍 II
 - 221.最大正方形
 - 279.完全平方数
 - 300.最长递增子序列
 - 322.零钱兑换
 - 337.打家劫舍 III
 - 343.整数拆分
 - 410.分割数组的最大值
 - 494.目标和
 - 516.最长回文子序列
 - 518.零钱兑换 II
 - 673.最长递增子序列的个数
 - 718.最长重复子数组
 - 1143.最长公共子序列
 - 剑指 Offer 14- I.剪绳子
 - 剑指 Offer 14- II.剪绳子 II
 - 剑指 Offer 46.把数字翻译成字符串
 - 剑指 Offer 47.礼物的最大价值
 - 剑指 Offer 49.丑数
 - 剑指 Offer 60.n个骰子的点数
 - 剑指 Offer 63.股票的最大利润
 
二分查找
- 4.寻找两个正序数组的中位数
 - 33.搜索旋转排序数组
 - 34.在排序数组中查找元素的第一个和最后一个位置
 - 50.Pow(x, n)
 - 69.x 的平方根
 - 153.寻找旋转排序数组中的最小值
 - 162.寻找峰值
 - 230.二叉搜索树中第K小的元素
 - 287.寻找重复数
 - 349.两个数组的交集
 - 704.二分查找
 - 剑指 Offer 11.旋转数组的最小数字
 - 剑指 Offer 53 - I.在排序数组中查找数字 I
 - 剑指 Offer 53 - II.0~n-1中缺失的数字
 
双指针
- 3.无重复字符的最长子串
 - 11.盛最多水的容器
 - 15.三数之和
 - 19.删除链表的倒数第 N 个结点
 - 26.删除有序数组中的重复项
 - 42.接雨水
 - 61.旋转链表
 - 75.颜色分类
 - 76.最小覆盖子串
 - 88.合并两个有序数组
 - 125.验证回文串
 - 141.环形链表
 - 142.环形链表 II
 - 209.长度最小的子数组
 - 234.回文链表
 - 283.移动零
 - 剑指 Offer 04.二维数组中的查找
 - 剑指 Offer 18.删除链表的节点
 - 剑指 Offer 21.调整数组顺序使奇数位于偶数前面
 - 剑指 Offer 22.链表中倒数第k个节点
 - 剑指 Offer 58 - I.翻转单词顺序
 
并查集
- 128.最长连续序列
 - 130.被围绕的区域
 - 200.岛屿数量
 
位运算
- 136.只出现一次的数字
 - 137.只出现一次的数字 II
 - 191.位1的个数
 - 231.2 的幂
 - 260.只出现一次的数字 III
 - 268.丢失的数字
 - 405.数字转换为十六进制数
 - 剑指 Offer 15.二进制中1的个数
 - 剑指 Offer 56 - I.数组中数字出现的次数
 - 剑指 Offer 56 - II.数组中数字出现的次数 II
 - 剑指 Offer 65.不用加减乘除做加法
 
分治
- 23.合并K个升序链表
 - 53.最大子数组和
 - 169.多数元素
 - 剑指 Offer 42.连续子数组的最大和
 - 剑指 Offer 36.二叉搜索树与双向链表
 - 剑指 Offer 39.数组中出现次数超过一半的数字
 
回溯
- 10.正则表达式匹配
 - 17.电话号码的字母组合
 - 22.括号生成
 - 39.组合总和
 - 40.组合总和 II
 - 46.全排列
 - 47.全排列 II
 - 51.N 皇后
 - 60.排列序列
 - 77.组合
 - 78.子集
 - 79.单词搜索
 - 89.格雷编码
 - 93.复原 IP 地址
 - 140.单词拆分 II
 - 306.累加数
 - 剑指 Offer 13.机器人的运动范围
 - 剑指 Offer 38.字符串的排列
 
贪心
- 44.通配符匹配
 - 45.跳跃游戏 II
 - 55.跳跃游戏
 - 134.加油站
 - 135.分发糖果
 - 316.去除重复字母
 - 763.划分字母区间
 
排序
- 148.排序链表
 - 164.最大间距
 - 179.最大数
 - 242.有效的字母异位词
 - 315.计算右侧小于当前元素的个数
 - 剑指 Offer 40.最小的k个数
 - 剑指 Offer 45.把数组排成最小的数
 - 剑指 Offer 51.数组中的逆序对
 - 剑指 Offer 61.扑克牌中的顺子
 
递归
- 2.两数相加
 - 21.合并两个有序链表
 - 24.两两交换链表中的节点
 - 98.验证二叉搜索树
 - 104.二叉树的最大深度
 - 110.平衡二叉树
 - 124.二叉树中的最大路径和
 - 199.二叉树的右视图
 - 剑指 Offer 07.重建二叉树
 - 剑指 Offer 10- I.斐波那契数列
 - 剑指 Offer 10- II.青蛙跳台阶问题
 - 剑指 Offer 26.树的子结构
 - 剑指 Offer 28.对称的二叉树
 - 剑指 Offer 64.求1+2+…+n
 
数学
- 7.整数反转
 - 8.字符串转换整数 (atoi)
 - 9.回文数
 - 43.字符串相乘
 - 166.分数到小数
 - 168.Excel表列名称
 - 171.Excel 表列序号
 - 400.第 N 位数字
 - 670.最大交换
 - 剑指 Offer 16.数值的整数次方
 - 剑指 Offer 43.1~n 整数中 1 出现的次数
 - 剑指 Offer 44.数字序列中某一位的数字
 - 剑指 Offer 62.圆圈中最后剩下的数字
 
