| 41 |
缺失的第一个正数 |
困难 |
Array |
Java |
| 80 |
删除排序数组中的重复项 |
中等 |
Array |
Java |
| 229 |
求众数 Ⅱ |
中等 |
Array |
Cpp |
| 275 |
H-Index II |
中等 |
Array |
Cpp |
| 220 |
存在重复元素 III |
中等 |
Array |
Cpp |
| 55 |
跳跃游戏 |
中等 |
Array && Greedy |
Cpp |
| 45 |
跳跃游戏Ⅱ |
困难 |
Array && Greedy |
Cpp |
| 121 |
买卖股票的最佳时机 |
简单 |
Array && Dp |
Cpp |
| 122 |
买卖股票的最佳时机 Ⅱ |
简单 |
Array && Greedy |
Cpp |
| 123 |
买卖股票的最佳时机 III |
困难 |
Array && Dp |
Cpp |
| 188 |
买卖股票的最佳时机 Ⅳ |
困难 |
Array && Dp |
Cpp |
| 309 |
最佳买卖股票时机含冷冻期 |
中等 |
Array && Dp |
Cpp |
| 42 |
接雨水 |
困难 |
Array && Stack |
Cpp |
| 334 |
递增的三元子序列 |
中等 |
Array |
Cpp |
| 128 |
最长连续序列 |
困难 |
Array |
Cpp |
| 164 |
最大间隔 |
困难 |
Array && Bucket |
Cpp |
| 287 |
寻找重复数 |
中等 |
Binary Search && fast-slow pointer |
Cpp |
| 135 |
分糖果 |
困难 |
Greedy |
Cpp |
| 330 |
按要求补齐数组 |
困难 |
Array && Greedy |
Cpp |
| 4 |
寻找两个有序数组的中位数 |
困难 |
Array && Binary Search |
Cpp |
| 321 |
拼接最大数 |
困难 |
Array && Divide and Conquer |
Cpp |
| 289 |
生命游戏 |
中等 |
Array |
Cpp |
| 53 |
最大子序和 |
简单 |
Dp or Divide and Conquer |
Cpp |
| 325 |
最大子数组之和为k |
中等 |
Array |
Cpp |
| 209 |
长度最小的子数组 |
中等 |
Two pointer or Binary Search |
Cpp |
| 57 |
插入区间 |
困难 |
Array |
Cpp |
| 327 |
区间和的个数 |
困难 |
Array && Divide and Conquer |
Cpp |
| 56 |
合并区间 |
中等 |
Array |
Cpp |
| 252 |
会议室 |
简单 |
Array |
Cpp |
| 253 |
会议室Ⅱ |
中等 |
Array |
Cpp |
| 352 |
将数据流变为多个不相交区间 |
困难 |
Array |
Cpp |
| 239 |
滑动窗口最大值 |
困难 |
Array && Deque |
Cpp |
| 295 |
数据流的中位数 |
困难 |
Array && Heap |
Cpp |
| 703 |
数据流中的第K大元素 |
简单 |
Array && Heap |
Cpp |
| 238 |
除自身以外数组的乘积 |
中等 |
Array |
Cpp |
| 152 |
乘积最大子序列 |
中等 |
Array && Dp |
Cpp |
| 228 |
区间汇总 |
中等 |
Array |
Cpp |
| 163 |
丢失的区间 |
中等 |
Array |
Cpp |
| 88 |
合并两个有序数组 |
简单 |
Array |
Cpp |
| 75 |
颜色分类(三色旗问题) |
中等 |
Array && Two pointer |
Cpp |
| 283 |
移动零 |
简单 |
Array |
Cpp |
| 376 |
摆动序列 |
中等 |
Greedy && Dp |
Cpp |
| 280 |
摆动排序Ⅰ |
中等 |
Array |
Cpp |
| 324 |
摆动排序Ⅱ |
中等 |
Array && QuickSort |
Cpp |
| 215 |
数组中第K大元素 |
中等 |
Array && QuickSort |
Cpp |
| 28 |
实现strStr() |
简单 |
String && Kmp |
Cpp |
| 14 |
最长公共前缀 |
简单 |
String |
Cpp |
| 58 |
最后一个单词的长度 |
简单 |
String |
Cpp |
| 387 |
字符串中的第一个唯一字符 |
简单 |
String |
Cpp |
| 151 |
翻转字符串里的单词 |
中等 |
String |
Cpp |
| 205 |
同构字符串 |
简单 |
String |
Cpp |
| 294 |
反转游戏Ⅱ |
简单 |
String && DFS |
Cpp |
| 49 |
字母异位词分组 |
中等 |
Hashmap |
Cpp |
| 87 |
扰乱字符串 |
困难 |
DFS && Backtracking |
Cpp |
| 179 |
最大数 |
中等 |
String && Sort |
Cpp |
| 6 |
Z字型变换 |
中等 |
String |
Cpp |
| 38 |
报数 |
简单 |
String |
Cpp |
| 161 |
一次编辑距离 |
中等 |
String |
Cpp |
| 316 |
去掉重复字符 |
困难 |
Stack && Greedy |
Cpp |
| 168,171 |
Excel表列名称 |
简单 |
String |
Cpp |
| 13 |
罗马数字转换成整数 |
简单 |
String && Math |
Python3 |
| 12 |
整数转换成罗马数字 |
中等 |
String && Math |
Python3 |
| 273 |
整数转换英文表示 |
困难 |
String && Math |
Python3 |
| 246 |
镜像数字 |
简单 |
String |
Cpp |
| 32 |
最长有效括号 |
困难 |
String |
Cpp |
| 65 |
有效数字 |
困难 |
String |
Cpp |
| 68 |
文本左右对齐 |
困难 |
String |
Cpp |
| 76 |
最小覆盖子串 |
困难 |
String && Sliding window |
Cpp |
| 336 |
回文对 |
困难 |
String && Hash |
Cpp |
| 214 |
最短回文串 |
困难 |
String |
Cpp |
| 395 |
至少有K个重复字符的最长子串 |
中等 |
String && Divide and Conquer |
Cpp |
| 30 |
串联所有单词的子串 |
中等 |
String && Sliding window |
Cpp |
| 131 |
分割回文串 |
中等 |
String && Backtracking |
Cpp |
| 132 |
分割回文串Ⅱ |
困难 |
String && Dp |
Cpp |
| 267 |
回文排列II |
中等 |
String && Backtracking |
Cpp |
| 241 |
为运算表达式设计优先级 |
中等 |
String && Divide and Conquer |
Cpp |
| 301 |
删除无效的括号 |
困难 |
String && (DFS or BFS) |
Cpp |
| 115 |
不同的子序列 |
困难 |
String && Dp |
Cpp |
| 187 |
重复的DNA序列 |
中等 |
String && Bit Manipulation |
Cpp |
| 258 |
各位相加 |
简单 |
String && Math |
Cpp |
| 29 |
两数相除 |
简单 |
String && Binary Search |
Cpp |
| 204 |
计算素数个数 |
简单 |
String && Math |
Cpp |
| 365 |
水壶问题 |
简单 |
String && Math |
Cpp |
| 15 |
3Sum |
中等 |
Binary Serach && Two Pointer |
Cpp |
| 372 |
Super Pow |
中等 |
Math |
Java |
| 454 |
4Sum II |
中等 |
HashMap |
Java |
| 698 |
划分为k个相等子集 |
中等 |
Recursion |
Java |
| 329 |
矩阵中的最长递增路径 |
困难 |
Dp && Matrix |
Java |
| 264 |
丑数II |
中等 |
Dp && Heap |
Java |
| 718 |
最长重复子数组 |
中等 |
Dp |
Java |
| 673 |
最长递增子序列个数 |
中等 |
Dp |
Java |
| 319 |
灯泡开关 |
中等 |
Dp |
Java |
| 363 |
矩形区域不超过k的最大数值和 |
困难 |
Dp && Matrix |
Java |
| 202 |
快乐数 |
简单 |
Math |
Java |
| 172 |
阶乘后的0 |
简单 |
Math |
Cpp |
| 343 |
整数拆分 |
中等 |
Math && Dp |
Cpp |
| 396 |
旋转函数 |
中等 |
Math |
Cpp |
| 390 |
消除游戏 |
中等 |
Math |
Cpp |
| 357 |
计算各个位数不同的数字个数 |
中等 |
Math |
Cpp |
| 90 |
子集II |
中等 |
Backtracing |
Cpp |
| 377 |
组合总和IV |
中等 |
Dp |
Cpp |
| 31 |
下一个排列 |
中等 |
Array |
Java |
| 60 |
第k个全排列 |
中等 |
Backtracing |
Java |
| 93 |
复原ip地址 |
中等 |
Backtracing |
Cpp |
| 282 |
给表达式添加运算符 |
困难 |
Backtracing |
Cpp |
| 351 |
Android解锁模式 |
中等 |
Backtracing |
Cpp |
| 140 |
单词拆分II |
困难 |
Backtracing |
Cpp |
| 279 |
完全平方数 |
中等 |
Dp |
Cpp |
| 375 |
猜数字大小II |
中等 |
Dp |
Cpp |
| 312 |
戳气球 |
困难 |
Dp |
Cpp |
| 365 |
房屋染色II |
困难 |
Dp |
Cpp |
| 72 |
编辑距离 |
困难 |
Dp && String |
Cpp |
| 97 |
交错字符串 |
困难 |
Dp && String |
Cpp |
| 73 |
矩阵置零 |
中等 |
Matrix |
Cpp |
| 378 |
有序矩阵中第k小的元素 |
中等 |
Matrix && Binary Search |
Cpp |
| 240 |
搜索二维矩阵II |
中等 |
Matrix && Binary Search |
Cpp |
| 174 |
地下城游戏 |
困难 |
Matrix && Dp |
Cpp |
| 542 |
01矩阵 |
中等 |
BFS |
Cpp |
| 317 |
建筑物之间的最短距离 |
困难 |
BFS |
Cpp |
| 221 |
最大正方形 |
中等 |
DP && Matrix |
Cpp |
| 85 |
最大矩形 |
困难 |
DP && Matrix |
Cpp |
| 84 |
柱状图中的最大的矩形 |
困难 |
Stack |
Cpp |
| 198 |
打家劫舍 |
简单 |
Dp |
Cpp |
| 213 |
打家劫舍II |
中等 |
Dp |
Cpp |
| 276 |
栅栏涂色 |
简单 |
Dp |
Cpp |
| 91 |
解码方法 |
中等 |
Dp |
Cpp |
| 10 |
正则表达式匹配 |
困难 |
Dp |
Cpp |
| 370 |
区间加法 |
中等 |
Array |
Cpp |
| 296 |
最佳的碰头地点 |
困难 |
Array && Sort |
Cpp |
| 1140 |
石子游戏II |
中等 |
Dp && Game theory |
Cpp |
| 44 |
通配符匹配II |
困难 |
String && Dp |
Cpp |
| 361 |
轰炸敌人 |
中等 |
Matrix && Dp |
Cpp |
| 36 |
有效的数独 |
中等 |
Matrix |
Cpp |
| 37 |
解数独 |
困难 |
Matrix |
Cpp |
| 95 |
不同的二叉搜索树II |
中等 |
Dp |
Cpp |
| 386 |
字典序排数 |
中等 |
String |
Cpp |
| 302 |
包含全部黑色像素的最小矩形 |
困难 |
Matrix && Binary Search |
Cpp |
| 493 |
翻转对 |
困难 |
Divide and Conquer && MergeSort |
Cpp |
| 1124 |
表现良好的最长时间段 |
中等 |
Stack && Greedy |
Cpp |
| 560 |
和为K的子数组 |
中等 |
Divide and Conquer or Hashmap |
Cpp |
| 315 |
计算右侧小于当前元素的个数 |
困难 |
Divide and Conquer or BIT |
Cpp |
| 388 |
文件的最长绝对路径 |
中等 |
Stack && String |
Cpp |
| 1129 |
颜色交替的最短路径 |
中等 |
Graph |
Cpp |
| 1131 |
绝对值表达式的最大值 |
中等 |
Math |
Cpp |
| 307 |
区域和检索 - 数组可修改 |
中等 |
BIT |
Cpp |
| 1105 |
填充书架 |
中等 |
Dp |
Cpp |
| 1106 |
解析布尔表达式 |
困难 |
Stack && String |
Cpp |
| 354 |
俄罗斯套娃信封问题 |
困难 |
Dp |
Cpp |
| 368 |
最大整除子集 |
中等 |
Dp |
Cpp |
| 403 |
青蛙过河 |
困难 |
Dp or ( Binary Search && Memorization ) |
Cpp |
| 410 |
分割数组的最大值 |
困难 |
Dp or ( Binary Search && Greedy ) |
Cpp |
| 255 |
验证前序遍历序列二叉搜索树 |
中等 |
Tree && Stack |
Cpp |
| 254 |
因子的组合 |
中等 |
Dp |
Cpp |
| 446 |
等差数列划分 II - 子序列 |
困难 |
Dp |
Cpp |
| 1121 |
将数组分成几个递增序列 |
困难 |
Math |
Cpp |
| 1155 |
掷骰子的N种方法 |
中等 |
Dp |
Cpp |
| 1156 |
单字符重复子串的最大长度 |
中等 |
Dp |
Cpp |
| 1151 |
最少交换次数来组合所有的1 |
中等 |
Array && Sliding window |
Cpp |
| 1153 |
字符串转换 |
中等 |
HashMap |
Cpp |
| 464 |
我能赢吗 |
中等 |
Dp && Game theory |
Cpp |
| 486 |
预测赢家 |
中等 |
Dp && Game theory && Max_Min |
Cpp |
| 741 |
摘樱桃 |
困难 |
Dp && Dfs |
Cpp |
| 314 |
二叉树的垂直遍历 |
中等 |
Tree && Bfs |
Cpp |
| 1062 |
最长重复子串 |
中等 |
Dp |
Cpp |
| 1092 |
最短公共超序列 |
困难 |
Dp && LCS ex |
Cpp |
| 907 |
子数组的最小值之和 |
中等 |
Stack |
Cpp |
| 1053 |
交换一次的先前排列 |
中等 |
Stack |
Cpp |
| 494 |
目标和 |
中等 |
Dp && Dfs |
Cpp |
| 1073 |
负二进制数相加 |
中等 |
Math |
Cpp |
| 363 |
矩形区域不超过k的最大数值和 |
困难 |
TreeSet && Matrix |
Cpp |
| 1074 |
元素和为目标值的子矩阵数量 |
困难 |
TreeSet && Matrix |
Cpp |
| 466 |
统计重复个数 |
困难 |
Dp |
Cpp |
| 236 |
二叉树的最近公共祖先 |
中等 |
Tree |
Cpp |
| 109 |
有序链表构造二叉搜索树 |
中等 |
Tree |
Cpp |
| 1054 |
距离相等的条形码 |
中等 |
Array |
Cpp |
| 467 |
环绕字符串中唯一的子字符串 |
中等 |
Dp |
Cpp |
| 1049 |
最后一块石头的重量II |
中等 |
Dp |
Cpp |
| 699 |
掉落的方块 |
困难 |
Segment Tree |
Cpp |
| 218 |
天际线问题 |
困难 |
Segment Tree |
Cpp |
| 850 |
矩形面积II |
困难 |
Segment Tree && Swaping line |
Cpp |
| 285 |
二叉搜索树中的顺序后继 |
中等 |
BST && Binary Search |
Cpp |
| 318 |
最大单词长度乘积 |
中等 |
Bit Manipulation |
Cpp |
| 1039 |
多边形三角剖分的最低得分 |
中等 |
Range Dp |
Cpp |
| 638 |
大礼包 |
中等 |
DFS |
Cpp |
| 576 |
出界的路径数 |
中等 |
Dp |
Cpp |
| 523 |
连续的子数组和 |
中等 |
HashMap or Dp |
Cpp |
| 769 |
最多能完成排序的块 |
困难 |
Array |
Cpp |
| 137 |
只出现一次的数字II |
中等 |
Bit Manipulation |
Cpp |
| 517 |
超级洗衣机 |
困难 |
Dp && Math |
Cpp |
| 358 |
K 距离间隔重排字符串 |
困难 |
Heap && Hashmap && Greedy |
Cpp |
| 646 |
最长数对链 |
中等 |
Dp or Greedy |
Cpp |
| 1036 |
逃离大迷宫 |
困难 |
BFS |
Cpp |
| 1029 |
两地调度 |
简单 |
Greedy |
Cpp |
| 5074 |
水资源分配优化 |
困难 |
Graph |
Cpp |
| 5164 |
从链表中删去总和值为零的连续节点 |
中等 |
Hashmap && Linklist |
Cpp |
| 5165 |
餐盘栈 |
困难 |
Design && Heap |
Cpp |
| 5167 |
查询无效交易 |
简单 |
Simulate |
Cpp |
| 785 |
判断二分图 |
中等 |
Graph |
Cpp |
| 685 |
冗余连接II |
困难 |
Graph && Union Set |
Cpp |
| 322 |
重新安排行程 |
中等 |
Graph && DFS |
Cpp |
| 1102 |
得分最高的路径 |
中等 |
Graph && Heap && Binary Seach |
Cpp |
| 269 |
火星词典 |
困难 |
Graph && Topsort |
Cpp |
| 444 |
序列重建 |
中等 |
Graph && Topsort |
Cpp |
| 208 |
实现 Trie (前缀树) |
中等 |
Tri Tree |
Cpp |
| 211 |
添加与搜索单词 - 数据结构设计 |
中等 |
Tri Tree |
Cpp |
| 212 |
单词搜索 II |
困难 |
Tri Tree && DFS |
Cpp |
| 621 |
任务调度器 |
中等 |
Greedy && Math |
Cpp |
| 61 |
旋转链表 |
中等 |
Linklist |
Cpp |
| 89 |
格雷编码 |
中等 |
Bit Manipulation |
Cpp |
| 81 |
搜索旋转排序数组 II |
中等 |
Binary Search |
Cpp |
| 34 |
在排序数组中查找元素的第一个和最后一个位置 |
中等 |
Binary Search |
Cpp |
| 126 |
单词接龙II |
困难 |
BFS && DFS |
Cpp |
| 5176 |
猜字谜 |
困难 |
Bit Manipulation && Hashmap |
Cpp |
| 232 |
用栈实现队列 |
简单 |
Stack |
Cpp |
| 142 |
环形链表II |
中等 |
LinkList |
Cpp |
| 5183 |
一周的第几天 |
简单 |
Math |
Cpp |
| 162 |
寻找峰值 |
中等 |
Binary Search |
Cpp |
| 138 |
复制带随机指针的链表 |
中等 |
有丝分裂法 or Hashmap |
Cpp |
| 166 |
分数到小数 |
中等 |
Math && Hashmap |
Cpp |
| 190 |
颠倒二进制位 |
简单 |
Bit Manipulation |
Cpp |
| 201 |
数字范围按位与 |
中等 |
Bit Manipulation |
Cpp |
| 740 |
删除与获得点数 |
中等 |
Dp |
Cpp |
| 223 |
矩形面积 |
中等 |
Math && IOU |
Python3 |
| 224 |
基本计算器 |
困难 |
Math && Stack |
Cpp |
| 227 |
基本计算器II |
中等 |
Math && Stack |
Cpp |
| 772 |
基本计算器III |
困难 |
String && Stack |
Cpp |
| 237 |
删除链表中的节点 |
简单 |
Linklist |
Cpp |
| 243 |
最短单词距离 |
简单 |
Array |
Cpp |
| 244 |
最短单词距离II |
中等 |
Hashmap |
Cpp |
| 245 |
最短单词距离III |
中等 |
Array |
Cpp |
| 249 |
移位字符串分组 |
中等 |
Hashmap |
Cpp |
| 260 |
只出现一次的数字 III |
中等 |
Bit Manipulation |
Cpp |
| 149 |
直线上最多的点数 |
困难 |
Math && Hashmap |
Cpp |
| 286 |
墙与门 |
中等 |
BFS |
Cpp |
| 310 |
最小高度树 |
中等 |
Graph && TopSort |
Cpp |
| 333 |
最大BST子树 |
中等 |
Tree |
Cpp |
| 305 |
岛屿数量II |
困难 |
Union Set |
Cpp |
| 272 |
最接近的二叉搜索数值II |
困难 |
Tree && Stack |
Cpp |
| 510 |
二叉搜索树中的中序后继II |
中等 |
Tree |
Cpp |
| 5091 |
建造街区的最短时间 |
困难 |
Greedy |
Cpp |
| 373 |
查找和最小的K对数字 |
中等 |
Heap |
Cpp |
| 402 |
移掉K位数字 |
中等 |
Heap |
Cpp |
| 311 |
稀疏矩阵的乘法 |
中等 |
Matrix |
Cpp |
| 331 |
验证二叉树的前序序列化 |
中等 |
Tree |
Cpp |
| 499 |
迷宫III |
困难 |
BFS |
Cpp |
| 647 |
回文子串 |
中等 |
Dp && String |
Cpp |
| 974 |
可被K整除的子数组 |
中等 |
Hashmap && Math |
Cpp |
| 651 |
4键键盘 |
中等 |
Dp |
Cpp |
| 688 |
“马”在棋盘上的概率 |
中等 |
Dp |
Cpp |
| 406 |
根据身高重建队列 |
中等 |
Greedy |
Cpp |
| LCP 4 |
覆盖 |
困难 |
Graph |
Cpp |
| LCP 5 |
发LeetCoin |
困难 |
Tree |
Cpp |
| 341 |
扁平化嵌套列表迭代器 |
中等 |
Stack |
Cpp |
| 313 |
超级丑数 |
中等 |
Heap && Math && Dp |
Cpp |
| 437 |
路径总和III |
简单 |
Hashmap && Tree |
Cpp |
| 448 |
找到所有数组中消失的数字 |
简单 |
Array |
Cpp |
| 5216 |
统计元音字母序列的数目 |
困难 |
Dp |
Python3 |
| 5081 |
步进数 |
中等 |
DFS |
Cpp |
| 5099 |
验证回文字符串III |
困难 |
Dp |
Cpp |
| 417 |
太平洋大西洋水流问题 |
中等 |
BFS |
Cpp |
| 371 |
两整数之和 |
简单 |
Bit Manipulation |
Cpp |
| 393 |
UTF-8编码验证 |
中等 |
Bit Manipulation |
Cpp |
| 903 |
DI序列的有效排列 |
困难 |
Dp |
Cpp |
| 548 |
将数组分割成和相等的子数组 |
中等 |
Array |
Cpp |
| 442 |
数组中重复的数据 |
中等 |
Array |
Cpp |
| 763 |
划分字母区间 |
中等 |
Greedy && Sweeping line |
Cpp |
| 869 |
重新排序得到 2 的幂 |
中等 |
Math |
Cpp |
| 5223 |
可以攻击国王的皇后 |
中等 |
Array |
Cpp |
| 5224 |
掷骰子模拟 |
中等 |
Dp |
Cpp |
| 5225 |
最大相等频率 |
困难 |
Hashmap && 分类讨论 |
Cpp |
| 1014 |
最佳观光组合 |
中等 |
Array && Math |
Cpp |
| 397 |
整数替换 |
中等 |
Bit Manipulation |
Cpp |
| 1201 |
丑数III |
中等 |
Math && Binary Search && 容斥原理 |
Cpp |
| 391 |
完美矩形 |
困难 |
Sweeping line && Set |
Cpp |
| 743 |
网络延迟时间 |
中等 |
Graph && 最短路径 |
Cpp |
| 364 |
加权嵌套序列和II |
中等 |
Recursion |
Cpp |
| 625 |
最小因式分解 |
中等 |
Recursion |
Cpp |
| 5111 |
分享巧克力 |
困难 |
Binary Search && Greedy |
Cpp |
| 1021 |
删除最外层括号 |
简单 |
String && 括号 |
Cpp |
| 678 |
有效的括号字符串 |
中等 |
String && Stack or Dp |
Cpp |
| 468 |
验证ip地址 |
中等 |
String && Split |
Cpp |
| 1234 |
替换子串得到平衡字符串 |
中等 |
Sliding Window |
Cpp |
| 1235 |
规划兼职工作 |
困难 |
Dp && Sort && Binary Search |
Cpp |
| 527 |
单词缩写 |
困难 |
String && Sort |
Java |
| 593 |
有效的正方形 |
中等 |
Math |
Java |
| 986 |
区间列表的交集 |
中等 |
Interval && Sort && Two Pointers |
Cpp |
| 453 |
最小移动次数使数组元素相等 |
简单 |
Math |
Cpp |
| 462 |
最小移动次数使数组元素相等II |
中等 |
Math |
Cpp |
| 976 |
三角形的最大周长 |
简单 |
Math |
Cpp |
| 423 |
从英文中重建数字 |
中等 |
Math |
Cpp |
| 483 |
最小好进制 |
困难 |
Math && Binary Search |
Cpp |
| 1245 |
树的直径 |
中等 |
Tree && BFS && DFS |
Cpp |
| 1246 |
删除回文子数组 |
困难 |
Interval Dp |
Cpp |
| 1247 |
交换字符使得字符串相同 |
简单 |
Greedy && String |
Cpp |
| 1248 |
统计「优美子数组」 |
中等 |
Sliding Window or Hashmap |
Cpp |
| 1250 |
检查「好数组」 |
困难 |
Math && 基础数论 |
Cpp |
| 805 |
数组的均值分割 |
困难 |
Math && DFS |
Cpp |
| 932 |
漂亮数组 |
中等 |
Divide and Conquer && Math |
Cpp |
| 775 |
全局倒置与局部倒置 |
中等 |
Array && Math |
Cpp |
| 861 |
翻转矩阵后的得分 |
中等 |
Greedy |
Cpp |
| 662 |
二叉树最大宽度 |
中等 |
Tree && BFS && DFS |
Cpp |
| 452 |
用最少数量的箭引爆气球 |
中等 |
Greedy |
Cpp |
| 488 |
祖玛游戏 |
困难 |
DFS |
Cpp |
| 546 |
移除盒子 |
困难 |
DFS && Memo |
Cpp |
| 1255 |
得分最高的单词集合 |
困难 |
Bit Manipulation && Enum |
Cpp |
| 711 |
不同岛屿数量II |
困难 |
HashMap && Math |
Cpp |
| 973 |
最接近原点的 K 个点 |
中等 |
Divide or Sort or Heap |
Cpp |
| 663 |
均匀树划分 |
中等 |
Tree && PostOrder |
Cpp |
| 898 |
子数组按位或操作 |
中等 |
Bit Manipulation && Dp |
Cpp |
| 1027 |
最长等差数列 |
中等 |
Dp |
Cpp |
| 873 |
最长的斐波那契子序列的长度 |
中等 |
Dp |
Cpp |
| 1263 |
推箱子 |
困难 |
BFS |
Java |
| 146 |
LRU缓存机制 |
中等 |
Design && Linklist && HashMap |
Java |
| 808 |
分汤 |
中等 |
Dp |
Java |
| 1024 |
视频拼接 |
中等 |
Sort && Greedy && Dp |
Java |
| 1003 |
检查替换后的词是否有效 |
中等 |
Stack |
Java |
| 713 |
乘积小于K的子数组 |
中等 |
Two Pointers && Array |
Java |
| 962 |
最大宽度坡 |
中等 |
Binary Search && Stack |
Java |
| 5273 |
搜索推荐系统 |
中等 |
String && Binary Search |
Cpp |
| 845 |
数组中的最长山脉 |
中等 |
String && Binary Search |
Cpp |
| 864 |
获取所有钥匙的最短路径 |
困难 |
BFS && Bit Manipulation |
Java |
| 652 |
寻找重复的子树 |
中等 |
Tree && HashMap |
Java |
| 471 |
编码最短长度的字符串 |
困难 |
String && Dp |
Cpp |
| 501 |
二叉搜索树中的众数 |
简单 |
Tree |
Cpp |
| 5113 |
删除区间 |
中等 |
Interval && 分类讨论 |
Cpp |
| 5114 |
删除树节点 |
中等 |
DFS && Dp |
Cpp |
| 5278 |
分割回文串III |
困难 |
Dp |
Java |
| 5136 |
矩形内船只的数目 |
困难 |
Binary Search |
Java |
| 889 |
根据前序和后序遍历构造二叉树 |
中等 |
Tree && Divide and Conquer |
Cpp |
| 5282 |
转化为全零矩阵的最少反转次数 |
困难 |
Bit Manipulation && BFS |
Cpp |
| 834 |
树中距离之和 |
困难 |
Tree && DFS && Dp |
Java |
| 679 |
24点游戏 |
困难 |
DFS |
Java |
| 644 |
最大平均子段和 II |
困难 |
Binary Search && 前缀和 |
Java |
| 738 |
单调递增的数字 |
中等 |
Math && 找规律 |
Java |
| 5286 |
网格中的最短路径 |
困难 |
BFS |
Cpp |
| 664 |
奇怪的打印机 |
困难 |
Dp |
Cpp |
| 1017 |
负二进制转换 |
中等 |
Math |
Cpp |
| 1000 |
合并石头的最低成本 |
困难 |
Dp |
Cpp |
| 837 |
新21点 |
中等 |
Dp |
Cpp |
| 600 |
不含连续1的非负整数 |
困难 |
Dp |
Cpp |
| 792 |
匹配子序列单词数 |
中等 |
Array |
Cpp |
| 456 |
132模式 |
中等 |
Stack |
Cpp |
| 675 |
为高尔夫比赛砍树 |
困难 |
Heap && BFS |
Cpp |
| 979 |
在二叉树中分配硬币 |
中等 |
Tree |
Cpp |
| 924 |
尽量减少恶意软件的传播 |
困难 |
DFS && Union Set |
Cpp |
| 928 |
尽量减少恶意软件的传播II |
困难 |
枚举 && BFS |
Cpp |
| 818 |
赛车 |
困难 |
Dp or (BFS && 剪枝) |
Cpp |
| 433 |
最小基因变化 |
中等 |
BFS && Bit Manipulation |
Cpp |
| 447 |
回旋镖的数量 |
简单 |
HashMap && Math |
Cpp |
| 1013 |
将数组分成和相等的三个部分 |
简单 |
Array |
Cpp |
| 552 |
学生出勤记录II |
困难 |
Dp |
Cpp |
| 1320 |
二指输入的最小距离 |
困难 |
Dp |
Cpp |
| 1316 |
不同循环子字符串 |
困难 |
滚动哈希 |
Cpp |
| 642 |
设计搜索自动补全系统 |
困难 |
Trie Tree |
Cpp |
| 472 |
连接词 |
困难 |
Trie Tree |
Cpp |
| 745 |
前缀和后缀搜索 |
困难 |
Trie Tree |
Cpp |
| 915 |
分割数组 |
中等 |
Array |
Cpp |
| 795 |
区间子数组个数 |
中等 |
Array |
Cpp |
| 362 |
敲击计数器 |
中等 |
Design && BIT板子 |
Cpp |
| 723 |
粉碎糖果 |
中等 |
Simulate && Two Pointer |
Cpp |
| 1335 |
工作计划的最低难度 |
困难 |
Dp |
Cpp |
| 835 |
图像重叠 |
中等 |
Hashmap && Array |
Cpp |
| 1326 |
灌溉花园的最少水龙头数目 |
困难 |
Greedy or Dp |
Cpp |
| 774 |
最小化去加油站的最大距离 |
困难 |
Binary Search |
Cpp |
| 1334 |
阈值距离内邻居最少的城市 |
中等 |
Graph && Floyd |
Cpp |
| 742 |
二叉树最近的叶结点 |
中等 |
Tree && BFS |
Cpp |
| 939 |
最小面积矩形 |
中等 |
Matrix && Sweeping line |
Cpp |
| 722 |
删除注释 |
中等 |
String && 状态机 |
Cpp |
| 689 |
三个无重叠子数组的最大和 |
困难 |
Dp |
Cpp |
| 730 |
统计不同回文子字符串 |
困难 |
Dp |
Cpp |
| 384 |
打乱数组 |
中等 |
Random |
Cpp |
| 470 |
用Rand7()实现Rand10() |
中等 |
Random && Rejection Sampling |
Cpp |
| 528 |
按权重随机选择 |
中等 |
Random && Binary Search |
Cpp |
| 910 |
最小差值II |
中等 |
Greedy && Math |
Cpp |
| 930 |
和相同的二元子数组 |
中等 |
HashMap && Sliding Window |
Cpp |
| 5314 |
跳跃游戏IV |
困难 |
BFS |
Cpp |
| 5335 |
参加考试的最大学生数 |
困难 |
Dp && 状态压缩 |
Cpp |
| 1203 |
项目管理 |
困难 |
TopSort && Graph |
Cpp |
| 5342 |
最多可以参加的会议数目 |
中等 |
Greedy && Heap |
Cpp |
| 5343 |
多次求和构造目标数组 |
困难 |
逆推 && Heap |
Cpp |
| 5172 |
形成三的最大倍数 |
困难 |
Math |
Cpp |
| 1371 |
每个元音包含偶数次的最长子字符串 |
中等 |
Bit Manipulation && HashMap |
Cpp |
| 搜狐畅游2020笔试 |
棋盘 |
🌟🌟🌟🌟 |
选址问题 |
Cpp |
| 1388 |
3n块披萨 |
困难 |
Dp |
Cpp |
| 1392 |
最长快乐前缀 |
困难 |
字符串滚动哈希板子 |
Cpp |
| 5391 |
生成数组 |
困难 |
Dp |
Cpp |
| 面试题 05.02 |
二进制数转字符串 |
中等 |
String |
Cpp |
| 871 |
最低加油次数 |
困难 |
Dp or Heap |
Cpp |