美文网首页
力扣(LeetCode)刷题顺序很重要

力扣(LeetCode)刷题顺序很重要

作者: aggie1024 | 来源:发表于2020-11-24 15:39 被阅读0次

    简介

    是不是有许多小伙伴在刷力扣的时候感觉无从下手?从头按顺序开始刷的童鞋们可能会比较有感触,为什么才第四题就感觉很难了?没关系,本文将对力扣的 1-700 题中不需要会员的数据结构与算法题目(数据库与 shell 除外)进行分类,并推荐一个刷题的顺序。

    完全零基础可以刷题吗?

    不能,至少要基本掌握一门计算机语言的语法。但现在在网上随便搜一下就能搜到许多关于计算机语言的教程。当然,最好还是上一下正规的课程。

    刷题顺序很重要吗?

    重要。按照题目类别结构化地刷题的速度不仅更快,而且可以在刷完一类题之后进行总结。对于水平较高的小伙伴们来说,按照推荐的顺序刷,可以在 200 小时内刷完 500 多题。对于萌新们来说,按照推荐顺序刷,能更好地掌握数据结构与算法基础。

    题目分类及刷题顺序推荐

    一. 数组

    题目分类 题目编号
    数组的遍历 485、495、414、628
    统计数组中的元素 645、697、448、442、41、274
    数组的改变、移动 453、665、283
    二维数组及滚动数组 118、119、661、598、419
    数组的旋转 189、396
    特定顺序遍历二维数组 54、59、498
    二维数组变换 566、48、73、289
    前缀和数组 303、304、238
    题解 数组篇
    二. 字符串

    题目分类 题目编号
    字符 520
    回文串的定义 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
    有限状态自动机 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
    树状数组 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
    结语

    希望以上的分类及顺序能帮到大家,未来也有做各分类的题解的打算,欢迎一起讨论。

    转载自作者:noone_
    链接:https://leetcode-cn.com/circle/article/48kq9d/
    来源:力扣(LeetCode)

    相关文章

      网友评论

          本文标题:力扣(LeetCode)刷题顺序很重要

          本文链接:https://www.haomeiwen.com/subject/gvgiiktx.html