困难难度题目从类型上说多是:
- 图
- 设计题
- 游戏场景题目
- 中等题目的 follow up
从解法上来说,多是:
- 图算法
- 动态规划
- 二分法
- DFS & BFS
- 状态压缩
- 剪枝
从逻辑上说, 要么就是非常难想到,要么就是非常难写代码。 这里我总结了几个技巧:
- 看题目的数据范围, 看能否暴力模拟
- 暴力枚举所有可能的算法往上套,比如图的题目。
- 总结和记忆解题模板,减少解题压力
以下是我列举的经典题目(带 91 字样的表示出自 91 天学算法活动):
- 0004. 寻找两个正序数组的中位数
- 0023. 合并 K 个升序链表
- 0025. K 个一组翻转链表
- 0030. 串联所有单词的子串
- 0032. 最长有效括号
- 0042. 接雨水
- 0052. N 皇后 II
- 0057. 插入区间 🆕
- 0084. 柱状图中最大的矩形
- 0085. 最大矩形
- 0124. 二叉树中的最大路径和
- 0128. 最长连续序列
- 0140. 单词拆分 II 🆕
- 0145. 二叉树的后序遍历
- 0212. 单词搜索 II
- 0239. 滑动窗口最大值
- 0295. 数据流的中位数
- 0297. 二叉树的序列化与反序列化 91
- 0301. 删除无效的括号
- 0312. 戳气球
- 330. 按要求补齐数组
- 0335. 路径交叉
- 0460. LFU 缓存
- 0472. 连接词
- 0488. 祖玛游戏
- 0493. 翻转对
- 0715. Range 模块 🆕
- 0768. 最多能完成排序的块 II 91
- 0887. 鸡蛋掉落
- 0895. 最大频率栈
- 0975. 奇偶跳 🆕
- 1032. 字符流
- 1168. 水资源分配优化
- 1203. 项目管理 🆕
- 1255. 得分最高的单词集合
- 1345. 跳跃游戏 IV
- 1449. 数位成本和为目标值的最大数字 🆕
- 5640. 与数组中元素的最大异或值 🆕