leetcode
题目分类 | 题目编号 |
---|---|
数组 | |
数组的遍历 | 485、495、414、628 |
485. 最大连续1的个数 | |
495. 提莫攻击 | |
414. 第三大的数 | 一次遍历维护三个变量就行 |
628. 三个数的最大乘积 | 维护三个最大和两个最小(包含了所有情况) |
统计数组中的元素 | 645、697、448、442、41、274 |
645. 错误的集合 | 集合中有一个数字是错误的,还有输出正确的那个数,和剑指offer03有一点点不同 |
448. 找到所有数组中消失的数字 | 也是对下标的一些技巧 |
442. 数组中重复的数据 | 也是下标,遇到了负数就直接返回这个 |
41. 缺失的第一个正数 | 也是下标,不会做 |
274. H 指数 | 题目绕口,但是还行 |
数组的改变、移动 | 453、665、283 |
453. 最小移动次数使数组元素相等 | 数学题转化一次思路= = |
665. 非递减数列 | 顺向思维,不要想着判断,直接看修改多少次 |
二维数组及滚动数组 | 118、119、661、598、419 |
数组的旋转 | 189、396 |
特定顺序遍历二维数组 | 54、59、498 |
二维数组变换 | 566、48、73、289 |
前缀和数组 | 303、304、238 |
二. 字符串 | |
题目分类 | 题目编号 |
字符 | 520 |
520. 检测大写字母 | easy |
回文串的定义 | 125 |
公共前缀 | 14 |
单词 | 434、58 |
字符串的反转 | 344、541、557、151 |
字符的统计 | 387、389、383、242、49、451、423、657、551、696、467、535 |
数字与字符串间转换 | 299、412、506、539、553、537、592、640、38、443、8、13、12、273、165、481 |
子序列 | 392、524、521、522 |
高精度运算 | 66、67、415、43、306 |
字符串变换 | 482、6、68 |
字符串匹配 | 28、686、459、214 |
中心拓展法 | 5、647 |
三. 数与位 | |
题目分类 | 题目编号 |
数字的位操作 | 7、9、479、564、231、342、326、504、263、190、191、476、461、477、693、393、172、458、258、319、405、171、168、670、233、357、400 |
简单数学题 | 492、29、507 |
快速幂 | 50、372 |
四. 栈与递归 | |
题目分类 | 题目编号 |
用栈访问最后若干元素 | 682、71、388 |
栈与计算器 | 150、227、224 |
栈与括号匹配 | 20、636、591、32 |
递归 | 385、341、394 |
五. 链表 | |
题目分类 | 题目编号 |
链表的删除 | 203、237、19 |
链表的遍历 | 430 |
链表的旋转与反转 | 61、24、206、92、25 |
链表高精度加法 | 2、445 |
链表的合并 | 21、23 |
六. 哈希表 | |
题目分类 | 题目编号 |
哈希表的查找、插入及删除 | 217、633、349、128、202、500、290、532、205、166、466、138 |
哈希表与索引 | 1、167、599、219、220 |
哈希表与统计 | 594、350、554、609、454、18 |
哈希表与前缀和 | 560、523、525 |
七. 贪心算法 | |
题目分类 | 题目编号 |
数组与贪心算法 | 605、121、122、561、455、575、135、409、621、179、56、57、228、452、435、646、406、48、169、215、75、324、517、649、678、420 |
子数组与贪心算法 | 53、134、581、152 |
子序列与贪心算法 | 334、376、659 |
数字与贪心 | 343 |
单调栈法 | 496、503、456、316、402、321、84、85 |
八. 双指针法 | |
题目分类 | 题目编号 |
头尾指针 | 345、680、167、15、16、18、11、42 |
同向双指针、滑动窗口 | 27、26、80、83、82、611、187、643、674、209、3、438、567、424、76、30 |
分段双指针 | 86、328、160、88、475 |
快慢指针 | 141、142、143、234、457、287 |
九. 树 | |
题目分类 | 题目编号 |
树与递归 | 100、222、101、226、437、563、617、508、572、543、654、687、87 |
树的层次遍历 | 102、429、690、559、662、671、513、515、637、103、107、257、623、653、104、111、112、113、129、404、199、655、116、117 |
树的前序遍历 | 144、589 |
树的前序序列化 | 606、331、652、297、449 |
树的后序遍历 | 145、590 |
树的中序遍历与二叉搜索树 | 94、700、530、538、230、98、173、669、450、110、95、108、109 |
重构二叉树 | 105、106 |
二叉树的展开 | 114 |
最近公共祖先 | 235、236 |
Morris中序遍历 | 501、99 |
四叉树 | 558、427 |
十. 图与搜索 | |
题目分类 | 题目编号 |
图的建立与应用 | 565 |
深度优先搜索 | 17、397 |
回溯法 | 526、401、36、37、51、52、77、39、216、40、46、47、31、556、60、491、78、90、79、93、332 |
回溯法与表达式 | 241、282、679 |
回溯法与括号 | 22、301 |
回溯法与贪心 | 488 |
广度优先搜索 | 133、200、695、463、542、130、417、529、127、126、433、675 |
并查集 | 547、684、685 |
拓扑排序 | 399、207、210 |
207. 课程表 | |
210. 课程表 II | 拓扑排序输出所有可能 |
有限状态自动机 | 65、468 |
十一. 二分查找 | |
题目分类 | 题目编号 |
二分查找应用(简单) | 374、35、278、367、69、441 |
二分查找应用(中等) | 34、540、275、436、300、354、658、162、4 |
二分查找与旋转数组 | 153、154、33、81 |
二分查找与矩阵 | 74、240 |
二分答案法 | 378、668、410、483 |
十二. 二进制运算的应用 | |
题目分类 | 题目编号 |
异或的应用 | 89、136、137、260、268 |
与或非的应用 | 371、318、201 |
十三. 动态规划 | |
题目分类 | 题目编号 |
数组中的动态规划 | 509、70、338、45、55、198、213、650、91、639、552、123、188、309、32、264、313、403 |
子数组、子序列中的动态规划 | 689、413、446、368、416、279 |
背包问题 | 322、518、474、494、377 |
矩阵中的动态规划 | 62、63、64、120、576、688、221、629、174、96、329 |
动态规划与字符串匹配 | 583、72、97、115、516、132、131、139、140、514、10、44 |
状态压缩动态规划 | 464、691、698、638、473 |
区间中的动态规划 | 486、664、375、312、546 |
树形dp | 337、124 |
数位dp | 233、600 |
十四. 数据结构 | |
题目分类 | 题目编号 |
数据结构设计——栈与队列 | 225、232、284、622、641、155 |
数据结构设计——哈希表 | 676、355、380、381 |
数据结构设计——哈希与双向链表 | 432、146、460 |
前缀树 | 208、211、648、386、677、472、421、212、336、440 |
堆 | 23、373、378、632、347、692、502、630、407、295、480 |
630. 课程表 III | 这个似乎用贪心 |
树状数组 | 307、315、493、327、673 |
线段树 | 699 |
平衡树(set/map) | 352、218、363 |
十五. 采样 | |
题目分类 | 题目编号 |
按权值采样 | 528、497 |
蓄水池抽样 | 382、398 |
拒绝采样 | 470、478、519 |
十六. 计算几何 | |
题目分类 | 题目编号 |
计算几何基础 | 593、447、223、149 |
分类讨论法 | 335 |
凸包 | 587 |
覆盖问题 | 391 |
十七. 常用技巧与算法 | |
题目分类 | 题目编号 |
博弈论 | 292 |
分块 | 239、164 |
倍增法 | 330 |
拓展欧几里得算法 | 365 |
洗牌算法 | 384 |
找规律 | 390、672 |
分治法 | 395、667 |
排序算法 | 147、148 |
线性筛 | 204 |
摩尔投票法 | 229 |
种一棵树最好的时间是十年前,其次是现在。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?