Leetcode题目分类指南(单独刷题或学习算法书籍配合使用)

Leetcode题目分类指南

   笔者在学习《算法导论》同时,希望能够配合Leetcode的题目进行分类模块化练习,该分类为笔者自己根据做题学习经验,结合《算法导论》的内容,给出Leetcode题目分类。题目主要集中在Leetcode的前400题中,也包括有后面的一些经典值得刷的题。该题目分类按照算法和数据结构排版,即可供单独Leetcode刷题使用,也可以配合学习《算法导论》或者其他算法书籍(前三章题目分类的排版也考虑了算法第4版的顺序)当作编程练习使用,以便加深对数据结构和算法设计分析的理解。

   后期我会慢慢将题目的代码和题解按照分类的顺序更新出来,同时《算法导论》书中每章的算法也会用代码实现,关于算导的代码实现见我的博客。

   正文中每个题目名字前面的数字是题目在leetcode中的序号,后面是该题目的一些备注。

   该题目分类word版资源见资源链接。

 

目录

1 基本数据结构

1.1数组

1.1.1 基础

1.1.2 提高                

1.1.3 区间问题(Interval)               

1.1.4 Counter           

1.1.5 CounterII           

1.2 链表

1.2.1 基础                

1.2.2 提高                

1.3 栈

1.4 优先队列

1.5 堆

1.5.1 Easy

1.5.2 Medium

1.5.3 Hard

1.6 树

1.6.1基础           

1.6.2 Preorder先序遍历

1.6.3 Preorder先序遍历II           

1.6.4 BFS深度搜索            

1.6.5 BST二叉查找树        

1.6.6 重要程度              

2 排序

3 查找

3.1 哈希表

3.1.1 Easy

3.1.2 Medium

3.1.3 Hard

3.2 二分查找

3.3 二叉搜索树     

3.4 红黑树

3.5 并查集 

4 高级设计和分析技术

4.1 动态规划

4.1.1 一维                

4.1.2 二维                

4.1.3 化简                

4.1.4 其他高频经典题

4.2 贪心算法

4.3 回溯

4.4 分治和递归

4.4.1 分治

4.4.2递归

5 图算法

5.1 图

5.1.1 Easy

5.1.2 Medium

5.1.3 Hard

5.1.4 必做

5.2 DFS 和 BFS

5.4 拓扑排序

6 字符串问题(String)

6.1 基础            

6.2 提高            

6.3 子字符串Substring             

6.4 回文(Palindrome)           

6.5 括号问题(Parentheses)             

6.6 子序列Subsequence            

7 数学问题(Math)

7.1基础             

7.2 求和问题    

7.3很少考         

8 矩阵问题(Matrix)

9 随机化算法

9.1 等概率抽样

9.2 蓄水池抽样

9.3  其他

10 设计题(Design)

11 位运算(Bit Manipulation)

11 高级数据结构

11.1 特殊树

11.1.1字典树(Trie,或前缀树,单词查找树)

11.1.2 线段树(Segment Tree)

11.1.3 树状数组(Binary_Index_Tree)

12 其他问题

12.1 记忆化

12.2极小化极大

12.3 计算几何学

12.3.1 扫描线算法(Sweep Line Algorithm)

12.3.2 几何


1 基本数据结构

1.1数组

1.1.1 基础

27         移除元素                 

26         删除排序数组中的重复项             

80         删除排序数组中的重复项 II                

277      搜寻名人                 

189      旋转数组                 

41         缺失的第一个正数         

299      猜数字游戏             

134      加油站            

118       杨辉三角                  很少考

119       杨辉三角2               很少考

169      多数元素                  很少考

229      多数元素2               很少考

274      H指数             

275      H指数2          Binary Search

243      最短单词距离                 

244      最短单词距离2              

245      最短单词距离3              

217      存在重复元素                 

219      存在重复元素2               很少考

220      存在重复元素3               很少考

55         跳跃游戏                 

45         跳跃游戏2              

121      买卖股票的最佳时机             

122      买卖股票的最佳时机2          

123      买卖股票的最佳时机3          

188      买卖股票的最佳时机4          

309      最佳买卖股票时机含冷冻期                  

11 盛最多水的容器

42         接雨水            

334      递增的三元子序列                 

128      最长连续子序列             

164      最大间距                  桶Bucket

287      寻找重复数             

135      分发糖果                  很少考

330      按要求补齐数组              很少考

1.1.2 提高                

4 寻找两个有序数组的中位数          很少考

321      拼接最大数              很少考

327     区间和的个数                 

289      生命游戏                 

1.1.3 区间问题(Interval)               

57         插入区间                 

56         合并区间                 

252      会议室            

253      会议室2         

352      将数据流变为多个不相交区间              TreeMap

1.1.4 Counter           

239      滑动窗口最大值             

295      数据流的中位数             

53         最大子序和             

325      和等于k的最长子数组长度         

209      长度最小的子数组                 

238      除自身以外数组的乘积                 

152      乘积最大子序列    

228      汇总区间                 

163      缺失的区间             

1.1.5 Counter           

88         合并两个有序数组                 

75         颜色分类                 

283      移动零            

376      摆动序列                 

280      摆动排序        

324      摆动排序1              

278      第一个错误的版本                 

35         搜索插入位置                 

33         搜索旋转排序数组                 

81         搜索旋转排序数组2              

153      搜索旋转排序数组中的最小值                   

154      搜索旋转排序数组中的最小值2          

162      寻找峰值                 

374      猜数字大小             

34 在排序数组中查找元素的第一个和最后一个位置

349      两个数组的交集             

350      两个数组的交集2          

315      计算右侧小于当前元素的个数             

300      最长上升子序列             

354      俄罗斯套娃信封问题    

1.2 链表

1.2.1 基础                

206      反转链表                 

141      环形链表                 

24         两两交换链表中的节点                 

328      奇偶链表                 

92         反转链表2              

237      删除链表中的节点                 

19         删除链表的倒数第N个结点

83        删除排序链表中的重复元素

203      移除链表元素        

82         删除排序链表中的重复元素2              

369      给单链表加1         

2  两数相加        

160      相交链表                 

21         合并两个有序链表                 

1.2.2 提高                

234      回文链表                 

143      重排链表                 

142      环形链表 II           

148      排序链表                 

25         K个一组反转链表         

61         旋转链表                 

86         分隔链表                 

23         合并K个排序链表                

147      对链表进行插入排序    

1.3 栈

155      最小栈            

232      用栈实现队列                 

225      用队列实现栈                 

150      逆波兰表达式求值                 

71         简化路径                 

388      文件的最长绝对路径    

394      字符串解码    

224      基本计算器             

227      基本计算器2         

385      迷你语法分析器             

84         柱状图中最大的矩形

20    有效的括号

94         二叉树的中序遍历

42         接雨水

1.4 优先队列

215      数组中的第K个最大元素            

347      前 K 个高频元素          

313      超级丑数               很少考

373      查找和最小的K对数字                  很少考

218      天际线问题             

332      重新安排行程                 

341      扁平化嵌套列表迭代器         

1.5 堆

1.5.1 Easy

703      数据流中的第K大元素 

1.5.2 Medium

378      有序矩阵中第K小的元素               

215      数组中的第K个最大元素   

743      网络延迟时间            

347      前K个高频元素  

1.5.3 Hard

882      细分图中的可到达结点            

23         合并K个排序链表           

864      获取所有钥匙的最短路径       

407      接雨水 II                    

218      天际线问题        

871      最低加油次数                    

786      第K个最小的素数分数   

239      滑动窗口最大值                

295      数据流的中位数   

1.6 树

1.6.1基础           

144      二叉树的前序遍历                 

94         二叉树的中序遍历         

145      二叉树的后序遍历         

102      二叉树的层次遍历

543      二叉树的直径

1.6.2 Preorder先序遍历

100      相同的树                 

101      对称二叉树             

226      翻转二叉树              preorder + BFS

257      二叉树的所有路径                 

112       路径总和        

113       路径总和2              

129      求根到叶子节点数字之和    

298      二叉树最长连续序列    

111       二叉树的最小深度                 

1.6.3 Preorder先序遍历           

104      二叉树的最大深度                 

110       平衡二叉树          

124      二叉树中的最大路径和         

250      统计同值子树                 

366      寻找完全二叉树的叶子节点                  

337      打家劫舍 III           postorder + preorder

1.6.4 BFS深度搜索            

107      二叉树的层次遍历2              

103      二叉树的锯齿形层次遍历    

199      二叉树的右视图              BFS + preorder

1.6.5 BST二叉查找树        

98         验证二叉搜索树              preorder

235      二叉搜索树的最近公共祖先                   preorder

236      二叉树的最近公共祖先          postorder

108      将有序数组转换为二叉搜索树              binary search

109      有序链表转换二叉搜索树              binary search

173      二叉搜索树迭代器                  inorder

230      二叉搜索树中第K小的元素                  inorder

297      二叉树的序列化与反序列化                   BFS

285      二叉搜索树中的顺序后继              inorder

270      最接近的二叉搜索树值          preorder

272      最接近的二叉搜索树值2               inorder

99         恢复二叉搜索树              inorder

1.6.6 重要程度              

156      上下翻转二叉树              很少考

114       二叉树展开为链表                  很少考

255      验证前序遍历序列二叉搜索树              很少考

333      最大BST子树                 很少考

222      完全二叉树的节点个数                  很少考

105      从前序与中序遍历序列构造二叉树      很少考

106      从中序与后序遍历序列构造二叉树      很少考

116       填充每个节点的下一个右侧节点指针                   重要

117       填充每个节点的下一个右侧节点指针2               重要

314      二叉树的垂直遍历                  重要

96         不同的二叉搜索树     重要

95         不同的二叉搜索树2               很少考

331      验证二叉树的前序序列化              很少考

2 排序

350      两个数组的交集 II  

349      两个数组的交集

1122   数组的相对排序   

179    最大数              

148      排序链表                  

56         合并区间          

853      车队          

147      对链表进行插入排序     

253      会议室 II                  

280      摆动排序                  

220      存在重复元素 III   

1183    矩阵中1 的最大数量   

327      区间和的个数                  

527      单词缩写                  

493      翻转对              

164      最大间距            

710      黑名单中的随机数            

57         插入区间                     

315      计算右侧小于当前元素的个数

3 查找

3.1 哈希表

3.1.1 Easy

1  两数之和          

202      快乐数              

204      计数质数                  

359      日志速率限制器                    

463      岛屿的周长              

136      只出现一次的数字          

447      回旋镖的数量          

350      两个数组的交集 II                  

387      字符串中的第一个唯一字符                                   

290      单词规律                               

349      两个数组的交集              

409      最长回文串              

3.1.2 Medium

3  无重复字符的最长子串                     

718      最长重复子数组                

535      TinyURL的加密与解密  

974      和可被 K 整除的子数组         

939      最小面积矩形                    

676      实现一个魔法字典            

560      和为K的子数组   

554      砖墙            

94         二叉树的中序遍历            

138      复制带随机指针的链表            

347      前 K 个高频元素         

18         四数之和            

325      和等于 k 的最长子数组长度          

525      连续数组  

648      单词替换            

187      重复的DNA序列          

3.1.3 Hard

149      直线上最多的点数            

85         最大矩形            

1044    最长重复子串   

711       不同岛屿的数量 II   

726      原子的数量   

76         最小覆盖子串                 

632      最小区间            

336      回文对       

381      O(1) 时间插入、删除和获取随机元素 - 允许重复   

30         串联所有单词的子串       

992      K 个不同整数的子数组           

710      黑名单中的随机数

340      至多包含 K 个不同字符的最长子串

3.2 二分查找

278      第一个错误的版本         

35         搜索插入位置        

33         搜索旋转排序数组         

81         搜索旋转排序数组2     

153      寻找旋转排序数组中的最小值  

154      寻找旋转排序数组中的最小值2

162      寻找峰值        

374      猜数字大小             

34         在排序数组中查找元素的第一个和最后一个位置              

349      两个数组的交集                  

350      两个数组的交集2 

315      计算右侧小于当前元素的个数

300      最长上升子序列

354      俄罗斯套娃信封问题

378   有序矩阵中第K小的元素

718      最长重复子数组

911       在线选举

658      找到 K 个最接近的元素

668      乘法表中第k小的数

410      分割数组的最大值

3.3 二叉搜索树     

98         验证二叉搜索树              preorder

235      二叉搜索树的最近公共祖先                   preorder

236      二叉树的最近公共祖先          postorder

108      将有序数组转换为二叉搜索树              binary search

109      有序链表转换二叉搜索树              binary search

173      二叉搜索树迭代器                  inorder

230      二叉搜索树中第K小的元素                  inorder

297      二叉树的序列化与反序列化                   BFS

285      二叉搜索树中的顺序后继              inorder

270      最接近的二叉搜索树值          preorder

272      最接近的二叉搜索树值2               inorder

99         恢复二叉搜索树              inorder

3.4 红黑树

110       平衡二叉树

3.5 并查集 

261      以图判树                 

323      无向图中连通分量的数目             

200      岛屿数量

305      岛屿数量2

547      朋友圈

4 高级设计和分析技术

4.1 动态规划

4.1.1 一维                

70         爬楼梯                   

62         不同路径                 

63         不同路径2              

120      三角形最小路径和                  很少考

279      完全平方数             

139      单词拆分        

375      猜数字大小2         

312      戳气球                   

322      零钱兑换               

4.1.2 二维                

256      粉刷房子                 

265      粉刷房子2              

64         最小路径和             

72         编辑距离     

97         交错字符串  

174      地下城游戏             

221      最大正方形    

85         最大矩形                     

363      矩形区域不超过 K 的最大数值和      TreeSet

4.1.3 化简                

198      打家劫舍                 

213      打家劫舍2              

276      栅栏涂色                 

91         解码方法                 

10         正则表达式匹配             

44         通配符匹配

4.1.4 其他高频经典题

53    最大子序和

121   买卖股票的最佳时机

5       最长回文子串    

486      预测赢家

1027   最长等差数列

673      最长递增子序列的个数            

300    最长上升子序列   

322      零钱兑换            

873      最长的斐波那契子序列的长度        

516      最长回文子序列        

714      买卖股票的最佳时机含手续费        

1024     视频拼接               

718      最长重复子数组        

91         解码方法            

1155    掷骰子的N种方法                    

361      轰炸敌人   

464      我能赢吗            

801      使序列递增的最小交换次数            

279      完全平方数        

467      环绕字符串中唯一的子字符串        

221      最大正方形        

983      最低票价            

688      “马”在棋盘上的概率        

1223    掷骰子模拟        

898      子数组按位或操作            

64         最小路径和        

1139    最大的以 1 为边界的正方形   

1049    最后一块石头的重量 II   

343      整数拆分            

1105    填充书架            

152      乘积最大子序列        

1143    最长公共子序列   

647      回文子串            

309      最佳买卖股票时机含冷冻期            

813      最大平均值和的分组       

877      石子游戏            

139      单词拆分   

96         不同的二叉搜索树   

903      DI 序列的有效排列  

552      学生出勤记录 II       

546      移除盒子            

410      分割数组的最大值            

471      编码最短长度的字符串            

1092    最短公共超序列        

466      统计重复个数            

72         编辑距离            

943      最短超级串        

85         最大矩形            

887      鸡蛋掉落            

1147    段式回文            

639      解码方法 2        

354      俄罗斯套娃信封问题       

312      戳气球                

689      三个无重叠子数组的最大和                     

964      表示数字的最少运算符                     

123      买卖股票的最佳时机 III          

629      K个逆序对数组        

10         正则表达式匹配        

1074    元素和为目标值的子矩阵数量        

97         交错字符串                

871      最低加油次数   

4.2 贪心算法

122      买卖股票的最佳时机2           简单        

455      分发饼干                  简单        

392      判断子序列              简单        

1029    两地调度         简单

406      根据身高重建队列                  中等        

621      任务调度器              中等        

55         跳跃游戏                  中等        

714      买卖股票的最佳时机含手续费              中等        

134      加油站             中等        

452      用最少数量的箭引爆气球              中等        

402      移掉K位数字                 中等        

376      摆动序列                  中等        

659      分割数组为连续子序列                  中等        

738      单调递增的数字              中等        

435      无重叠区间              中等        

649      Dota2参议院          中等        

651      4键键盘          中等        

484      寻找排列         中等        

253      会议室2          中等        

1053    交换一次的先前排列              中等        

45         跳跃游戏2               困难        

    135  分发糖果                  困难        

    316  去除重复字母                  困难        

    321  拼接最大数              困难        

    44    通配符匹配              困难        

    630  课程表3          困难        

    502  IPO          困难        

    330  按要求补齐数组              困难        

    759  员工空闲时间                  困难        

    358  K 距离间隔重排字符串                 困难        

 

4.3 回溯

78         子集                 

90         子集2             

77         组合                 

39         组合总和                 

40         组合总和2     

216      组合总和3              

377      组合总和4               Dynamic Programming

254      因子的组合             

46         全排列            

47         全排列2         

31         下一个排列              String

60         第k个排列              String

291      单词规律2              

17         电话号码的字母组合             

320      列举单词的全部缩写    

93         复原IP地址            很少考

282      给表达式添加运算符             

140      单词拆分2   

351      安卓系统手势解锁                 

4.4 分治和递归

4.4.1 分治

    4      寻找两个有序数组的中位数                   困难        

    53    最大子序和              简单        

    23    合并K个排序链表                 困难        

    312  戳气球             困难        

    169  多数元素                  简单        

    215  数组中的第K个最大元素             中等        

    241  为运算表达式设计优先级              中等        

    218  天际线问题              困难        

    327  区间和的个数                  困难        

    315  计算右侧小于当前元素的个数              困难

    282  给表达式添加运算符              困难        

    493  翻转对             困难        

    240  搜索二维矩阵2      中等        

    514  自由之路                  困难

4.4.2递归

    698  划分为k个相等的子集          中等        

    687  最长同值路径                  简单        

    726  原子的数量              困难        

    248  中心对称数3          困难        

    247  中心对称数2          中等        

    544  输出比赛匹配对              中等        

    625  最小因式分解                  中等

5 图算法

5.1 图

5.1.1 Easy

997      找到小镇的法官        

1042    不邻接植花   

5.1.2 Medium

743      网络延迟时间                    

1162  地图分析   

1043  分隔数组以得到最大和            

399      除法求值            

310      最小高度树                

207      课程表   

133      克隆图       

785      判断二分图        

1129    颜色交替的最短路径   

332      重新安排行程            

802      找到最终的安全状态       

210      课程表2       

990      等式方程的可满足性       

323      无向图中连通分量的数目       

5.1.3 Hard

269      火星词典            

1203    项目管理            

839      相似字符串组            

1153    字符串转化        

928      尽量减少恶意软件的传播2

5.1.4 必做

133      克隆图            

399      除法求值                 

310      最小高度数

 

5.2 DFS 和 BFS

200      岛屿数量                 

286      墙与门            

130      被围绕的区域                 

339      嵌套列表权重和             

364      加权嵌套序列和2 

127      单词接龙        

51         N皇后             

52         N皇后2         

126      单词接龙2     

5.4 拓扑排序

207      课程表       

210      课程表2

269      火星词典            

1203  项目管理            

329      矩阵中的最长递增路径   

6 字符串问题(String)

6.1 基础            

28         实现 strStr()  

14         最长公共前缀        

58         最后一个单词的长度             

387      字符串中的第一个唯一字符                  

383      赎金信    

344      反转字符串             

151      翻转字符串里的单词                  

186      翻转字符串里的单词2 

345      反转字符串中的元音字母    

205      同构字符串    

293      翻转游戏                 

294      翻转游戏2              

290      单词规律                 

242      有效的字母异位词                 

49         字母异位词分组                  

249      移位字符串分组             

87         扰乱字符串             

179      最大数                  很少考

6          Z字形变换              很少考

161       相隔为 1 的编辑距离               

38         报数              

358      K 距离间隔重排字符串                

316      去除重复字母              

271      字符串的编码与解码    

168      Excel表列名称            

171      Excel表列序号               

13        罗马数字转整数          

12        整数转罗马数字             

273      整数转换英文表示

246      中心对称数             

247      中心对称数2         

248      中心对称数3          很少考

6.2 提高            

157      用 Read4 读取 N 个字       

158      用 Read4 读取 N 个字符2                 

68         文本左右对齐               

65         有效数字    

6.3 子字符串Substring             

76         最小覆盖子串                                             Sliding Window

30         串联所有单词的子串                                        Sliding Window

3          无重复字符的最长子串                                    Sliding Window

340      至多包含 K 个不同字符的最长子串         Sliding Window

395      至少有K个重复字符的最长子串             Sliding Window

159      至多包含两个不同字符的最长子串               Sliding Window

6.4 回文(Palindrome)           

125      验证回文串             

266      回文排列                 

5          最长回文子串                 

9          回文数             

214      最短回文串    

336 回文对                 

131      分割回文串                   

132      分割回文串2               

267      回文排列2              

6.5 括号问题(Parentheses)             

20         有效的括号                   

22         括号生成                     

32         最长有效括号              

241      为运算表达式设计优先级                 

301      删除无效的括号    

6.6 子序列Subsequence            

392      判断子序列             

115       不同的子序列              

187      重复的DNA序列           很少考

7 数学问题(Math)

7.1基础             

7      整数反转      

165      比较版本号             

66         加一             

8           字符串转换整数 (atoi)         

258      各位相加              

67         二进制求和                

43         字符串相乘           

29         两数相除                 

69         x 的平方根    

50         Pow(x, n)        

367      有效的完全平方数                 

365      水壶问题                 

204      计数质数        

7.2 求和问题    

1           Two Sum         

167      Two Sum II - Input array is sorted         

15         3Sum               

16         3Sum Closest           很少考

259      3Sum Smaller          很少考

18         4Sum               

7.3很少考         

231      2的幂             

326      3的幂             

342      4的幂     

372      超级次方                 

233      数字1的个数        

319      灯泡开关        

292      Nim 游戏               

202      快乐数            

400      第N个数字                  

263      丑数      

264      丑数2             

306      累加数         

172      阶乘后的零          

343      整数拆分        

396      旋转函数                 

390      消除游戏                 

386      字典序排数             

357      计算各个位数不同的数字个数             

360      有序转化数组

397      整数替换                 

368      最大整除子集        

8 矩阵问题(Matrix)

48         旋转图像                 

54         螺旋矩阵                 

59         螺旋矩阵2              

73         矩阵置零                 

311       稀疏矩阵的乘法             

329      列举单词的全部缩写             

378      有序矩阵中第K小的元素            

74         搜索二维矩阵             

240      搜索二维矩阵2              

370      区间加法                 

79         单词搜索              

296      最佳的碰头地点    

361      轰炸敌人                 

317      离建筑物最近的距离             

302      包含全部黑色像素的最小矩形             

36         有效的数独                   

37         解数独    

9 随机化算法

9.1 等概率抽样

384      打乱数组                                                    

380      常数时间插入、删除和获取随机元素                  

381      138O(1) 时间插入、删除和获取随机元素 - 允许重复           

138      复制带随机指针的链表

9.2 蓄水池抽样

382      链表随机节点

398      随机数索引

9.3  其他

470      用 Rand7() 实现 Rand10()

478      在圆内随机生成点   

10 设计题(Design)

359      日志速率限制器             

346      数据流中的移动平均值                  Sliding Window

362      敲击计数器             

281      锯齿迭代器    

284      顶端迭代器                   

251      展开二维向量                 

288 单词的唯一缩写                 

170      两数之和3 - 数据结构设计         

348      判定井字棋胜负             

379      电话目录管理系统                 

353      贪吃蛇            

146      LRU缓存机制             

355      设计推特                 

303      区域和检索 - 数组不可变  

304      二维区域和检索 - 矩阵不可变        

307      区域和检索 - 数组可修改            BIT & ST

308      二维区域和检索 - 可变       BIT & ST

11 位运算(Bit Manipulation)

421      数组中两个数的最大异或值

389      找不同         

136      只出现一次的数字

137   只出现一次的数字II 

260      只出现一次的数字III

393      UTF-8编码验证

318      最大单词长度乘积

191      位1的个数

338      比特位计数

411       最短特异单词缩写                             

898      子数组按位或操作            

78         子集            

1131  绝对值表达式的最大值                        

11 高级数据结构

11.1 特殊树

11.1.1字典树(Trie,或前缀树,单词查找树)

421      数组中两个数的最大异或值                     

642      设计搜索自动补全系统                     

676      实现一个魔法字典            

336      回文对       

745      前缀和后缀搜索                

1032    字符流       

208      实现 Trie (前缀树)            

648      单词替换            

212      单词搜索 II       

692      前K个高频单词       

1023    驼峰式匹配                

1065    字符串的索引对        

677      键值映射            

11.1.2 线段树(Segment Tree)

715      Range 模块   

218      天际线问题        

327      区间和的个数            

1157    子数组中占绝大多数的元素            

850      矩形面积 II       

493      翻转对       

308      二维区域和检索 - 可变          

315      计算右侧小于当前元素的个数        

307      区域和检索 - 数组可修改   

11.1.3 树状数组(Binary_Index_Tree)

218      天际线问题         

327      区间和的个数            

493      翻转对       

308      二维区域和检索 - 可变          

315      计算右侧小于当前元素的个数        

307      区域和检索 - 数组可修改      

12 其他问题

12.1 记忆化

329      矩阵中的最长递增路径

12.2极小化极大

292      Nim 游戏       

375      猜数字大小II         

486      预测赢家        

464      我能赢吗        

294      翻转游戏II             

12.3 计算几何学

12.3.1 扫描线算法(Sweep Line Algorithm)

218      天际线问题              困难        

391      完美矩形                  困难        

12.3.2 几何

587      安装栅栏                  困难        

1266    访问所有点的最小时间                  简单        

1232    缀点成线                  简单        

你可能感兴趣的:(算法导论,leetcode)