当前位置: 首页 > news >正文

LeetCode 高频题目分类列表

💡 LeetCode 高频面试题分类列表,总共24类,312道题目!

刷穿LeetCode.png

  • 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.圆圈中最后剩下的数字

相关文章:

LeetCode 高频题目分类列表

💡 LeetCode 高频面试题分类列表,总共24类,312道题目! 图 133.克隆图 207.课程表 210.课程表 II 399.除法求值 547.省份数量 684.冗余连接 743.网络延迟时间 785.判断二分图 堆 215.数组中的第K个最大元素 295.数据流的中位数 26…...

为什么模方有时候置平之后再打开,置平的地方纹理就缺失了,显示为下图中反光的灰色?

答:一般置平后结构改动多的位置会用灰面填充纹理,可以联动PS或者空三映射进行纹理贴图。 模方是一款针对实景三维模型的冗余碎片、水面残缺、道路不平、标牌破损、纹理拉伸模糊等共性问题研发的实景三维模型修复编辑软件。模方4.0新增单体化建模模块&am…...

k8s基础 随笔

写个笔记,后面再完善 部署第一个应用 为什么先实战水平扩缩?因为这个最简单,首先来部署一个喜闻乐见的nginx kubectl create deployment web --imagenginx:1.14 --dry-run -o yaml > web.yaml --dry-run表示试运行,试一下看…...

c# 关于某管理业务系统对数据统计问题.

1.业务系统主要的就是功能的稳定,流畅性. 最近客户提出某统计功能数据加载到页面很慢.反映到运维工程师处,运维跟我说之后我(研发), 我看了看代码,有几处代码确实需要优化,统计功能调用了4次服务端,每一次客户端调用服务端的时候返回结果3S左右,有三次调用服务端,一共大约耗时…...

nginx 配置相关详解

目录 Nginx的优点 Nginx简介 Nginx的优点 可以高并发连接 内存消耗少 成本低廉 配置文件非常易懂 稳定性高 内置有健康的检查功能 支持Rewrite重写 支持热部署 Nginx与Apache的对比 Nginx多进程工作原理跟设计 Nginx是如何实现高性能的 事件驱动模型 多进程机制…...

解决spring项目中无法加载resources下文件

解决spring项目中无法加载resources下文件 问题发现问题解决步骤一:检查文件名步骤二:确保测试资源目录步骤三:检查文件路径是否正确 问题发现 在学习Spring过程中,TestContext框架试图检测一个默认的XML资源位置。如果您的类被命…...

【广州华锐互动】人体血管器官3D动态展示为医学生提供哪些便利?

人体血管器官3D动态展示是一种采用先进的计算机图形技术和立体成像技术,对人体内部结构和功能进行三维可视化的教学方法。这种教学方式以其独特的优势,正在改变传统的解剖学教学模式,为医学教育带来了革新。 首先,3D动态演示能够提…...

【QT开发笔记-基础篇】| 第四章 事件QEvent | 4.7 拖放事件

本节对应的视频讲解:B_站_链_接 【QT开发笔记-基础篇】 第4章 事件 4.7 拖动事件 本章要实现的整体效果如下: QEvent::DragEnter ​ 当拖动文件进入到窗口/控件中时,触发该事件,它对应的子类是 QDragEnterEvent QEvent::DragLe…...

【Linux】介绍 Docker 的基本概念和优势,以及在应用程序开发中的实际应用

Docker 是一种轻量级的虚拟化技术,它基于 Linux 容器技术,能够在不同平台、不同主机上快速地运行和部署应用程序。Docker 的基本概念包括以下几点: 镜像(Image):Docker 镜像是一个只读的模板,它…...

GUN C/C++ undefined reference to symbol ‘dlclose@@GLIBC_2.2.5‘

编译问题: /usr/bin/ld: ../../3rdParty/lib/libluajit.a(lj_clib.o): undefined reference to symbol dlcloseGLIBC_2.2.5 //usr/lib64/libdl.so.2: error adding symbols: DSO missing from command line collect2: error: ld returned 1 exit status make[1]: …...

RabbitMQ概述,死信队列

RabbitMQ(Rabbit Message Queue)是一个开源的消息队列中间件,它实现了高级消息队列协议(AMQP)并提供可靠的消息传递机制。RabbitMQ 在分布式系统中广泛用于消息传递和事件驱动的架构。以下是一些 RabbitMQ 的重要知识点…...

【开发日常】insmod: error inserting ‘*.ko‘: -1 Unknown symbol in module原理分析

问题的起源是一次面试,面试官询问加载内核的时候,如果insmod失败,且提示Unknown symbol in module。请问我里面的原理是什么呢?为什么内核知道当前缺少的是这个symbol? 想了解下具体的原因。 首先是模拟一个环境。 写…...

圆弧插补【C#】

圆弧: 圆弧插补方法可以通过提供圆弧的起点、终点和半径来画弧。下面是一个用C#实现的圆弧插补方法的示例代码: public void DrawArc(Point startPoint, Point endPoint, int radius, bool isClockwise) {// 计算圆心坐标int centerX (startPoint.X e…...

Redis EmbeddedString

前言 Redis 写入键值对时,首先会先创建一个 RedisObject 对象来存储 Value。 如果写入的 Value 是字符串,那么 Redis 会再根据写入的字符串长度,来创建对应的 sdshdr 来存储字符串,最后把 RedisObject 的 ptr 指针指向 sdshdr。 …...

SpringMVC之WEB-INF下页面跳转@ModelAttributeIDEA tomcat控制台中文乱码问题处理

WEB-INF下页面跳转 ModelAttribute来注解非请求处理方法 用途:预加载数据,会在每个RequestMapping方法执行之前调用。 特点:无需返回视图,返回类型void IDEA tomcat控制台中文乱码问题处理 复制此段代码:-Dfile.e…...

利用ChatGPT练习口语

目录 ChatGPT 这两天发布了一个激动人心的新功能,App端(包括iOS和Android)开始支持语音对话以及图片识别功能。 这两个功能一如既往的优先开放给Plus用户使用,现在将App更新到最新版本,就能体验。 为什么说激动人心&a…...

【Django 01】环境搭配与项目配置

1. 介绍 https://github.com/Joe-2002/sweettalk-django4.2#readme Django 是一个使用 Python 编写的开源 Web 应用程序框架,它提供了一套用于快速开发安全、 可扩展和高效的 Web 应用程序的工具和功能。Django 基于 MVC(Model-View-Controller&#xf…...

PyCharm配置运行参数

...

ChatGPT AIGC 实现Excel 交叉查找 Index+match 函数

行与列交叉多条件查找需求如下: 这个需求要使用Excel中最经典的组合函数Index+match函数。 函数公式可以交给ChatGPT AIGC来实现。 Prompt: 有一个表格A列为品牌,B列为月份,C列为销量,61行数据,请写出Excel函数公式根据E3单元格的品牌与F2单元格的月份查找对应的销量,…...

【前端学习】—多种方式实现数组拍平(十一)

【前端学习】—多种方式实现数组拍平(十一) 一、数组拍平 数组拍平也叫数组扁平化、数组拉平、数组降维,指的是把多维数组转化为一维数组。 二、使用场景 复杂场景下的数据处理(echarts做大屏数据展示) 三、如何实…...

golang循环变量捕获问题​​

在 Go 语言中,当在循环中启动协程(goroutine)时,如果在协程闭包中直接引用循环变量,可能会遇到一个常见的陷阱 - ​​循环变量捕获问题​​。让我详细解释一下: 问题背景 看这个代码片段: fo…...

ssc377d修改flash分区大小

1、flash的分区默认分配16M、 / # df -h Filesystem Size Used Available Use% Mounted on /dev/root 1.9M 1.9M 0 100% / /dev/mtdblock4 3.0M...

理解 MCP 工作流:使用 Ollama 和 LangChain 构建本地 MCP 客户端

🌟 什么是 MCP? 模型控制协议 (MCP) 是一种创新的协议,旨在无缝连接 AI 模型与应用程序。 MCP 是一个开源协议,它标准化了我们的 LLM 应用程序连接所需工具和数据源并与之协作的方式。 可以把它想象成你的 AI 模型 和想要使用它…...

Leetcode 3577. Count the Number of Computer Unlocking Permutations

Leetcode 3577. Count the Number of Computer Unlocking Permutations 1. 解题思路2. 代码实现 题目链接:3577. Count the Number of Computer Unlocking Permutations 1. 解题思路 这一题其实就是一个脑筋急转弯,要想要能够将所有的电脑解锁&#x…...

【HTML-16】深入理解HTML中的块元素与行内元素

HTML元素根据其显示特性可以分为两大类:块元素(Block-level Elements)和行内元素(Inline Elements)。理解这两者的区别对于构建良好的网页布局至关重要。本文将全面解析这两种元素的特性、区别以及实际应用场景。 1. 块元素(Block-level Elements) 1.1 基本特性 …...

拉力测试cuda pytorch 把 4070显卡拉满

import torch import timedef stress_test_gpu(matrix_size16384, duration300):"""对GPU进行压力测试,通过持续的矩阵乘法来最大化GPU利用率参数:matrix_size: 矩阵维度大小,增大可提高计算复杂度duration: 测试持续时间(秒&…...

【JavaSE】绘图与事件入门学习笔记

-Java绘图坐标体系 坐标体系-介绍 坐标原点位于左上角,以像素为单位。 在Java坐标系中,第一个是x坐标,表示当前位置为水平方向,距离坐标原点x个像素;第二个是y坐标,表示当前位置为垂直方向,距离坐标原点y个像素。 坐标体系-像素 …...

MySQL 8.0 事务全面讲解

以下是一个结合两次回答的 MySQL 8.0 事务全面讲解,涵盖了事务的核心概念、操作示例、失败回滚、隔离级别、事务性 DDL 和 XA 事务等内容,并修正了查看隔离级别的命令。 MySQL 8.0 事务全面讲解 一、事务的核心概念(ACID) 事务是…...

三分算法与DeepSeek辅助证明是单峰函数

前置 单峰函数有唯一的最大值,最大值左侧的数值严格单调递增,最大值右侧的数值严格单调递减。 单谷函数有唯一的最小值,最小值左侧的数值严格单调递减,最小值右侧的数值严格单调递增。 三分的本质 三分和二分一样都是通过不断缩…...

MinIO Docker 部署:仅开放一个端口

MinIO Docker 部署:仅开放一个端口 在实际的服务器部署中,出于安全和管理的考虑,我们可能只能开放一个端口。MinIO 是一个高性能的对象存储服务,支持 Docker 部署,但默认情况下它需要两个端口:一个是 API 端口(用于存储和访问数据),另一个是控制台端口(用于管理界面…...