跳至主要內容

设计


设计

全部标签

数据结构

数组 矩阵 链表 双向链表 单调栈 队列 单调队列 堆(优先队列) 哈希表 字符串 字符串匹配 二叉树 二叉搜索树 最小生成树 有序集合 拓扑排序 最短路 强连通分量 欧拉回路 双连通分量 并查集 字典树 线段树 树状数组 后缀数组

算法

枚举 递归 分治 回溯 贪心 动态规划 排序 桶排序 计数排序 基数排序 归并排序 快速选择 二分查找 记忆化搜索 深度优先搜索 广度优先搜索 双指针 位运算 前缀和 计数 滑动窗口 状态压缩 哈希函数 滚动哈希 扫描线

其他

数学 数论 几何 博弈 模拟 组合数学 随机化 概率与统计 水塘抽样 拒绝采样 数据库 设计 数据流 脑筋急转弯 交互 迭代器 多线程


题号标题题解标签难度
146LRU 缓存open in new window[✓]设计 哈希表 链表 1+
155最小栈open in new window[✓] 设计
170两数之和 III - 数据结构设计 🔒open in new window设计 数组 哈希表 2+
173二叉搜索树迭代器open in new window[✓] 设计 3+
208实现 Trie (前缀树)open in new window[✓]设计 字典树 哈希表 1+
211添加与搜索单词 - 数据结构设计open in new window[✓]深度优先搜索 设计 字典树 1+
225用队列实现栈open in new window[✓] 设计 队列
232用栈实现队列open in new window[✓] 设计 队列
244最短单词距离 II 🔒open in new window设计 数组 哈希表 2+
251展开二维向量 🔒open in new window设计 数组 双指针 1+
271字符串的编码与解码 🔒open in new window设计 数组 字符串
281锯齿迭代器 🔒open in new window设计 队列 数组 1+
284窥视迭代器open in new window设计 数组 迭代器
288单词的唯一缩写 🔒open in new window设计 数组 哈希表 1+
295数据流的中位数open in new window[✓]设计 双指针 数据流 2+
297二叉树的序列化与反序列化open in new window[✓] 深度优先搜索 广度优先搜索 3+
303区域和检索 - 数组不可变open in new window[✓]设计 数组 前缀和
304二维区域和检索 - 矩阵不可变open in new window设计 数组 矩阵 1+
307区域和检索 - 数组可修改open in new window[✓]设计 树状数组 线段树 1+
308二维区域和检索 - 矩阵可修改 🔒open in new window设计 树状数组 线段树 2+
341扁平化嵌套列表迭代器open in new window 深度优先搜索 3+
346数据流中的移动平均值 🔒open in new window[✓]设计 队列 数组 1+
348设计井字棋 🔒open in new window设计 数组 哈希表 2+
352将数据流变为多个不相交区间open in new window设计 二分查找 有序集合
353贪吃蛇 🔒open in new window设计 队列 数组 2+
355设计推特open in new window[✓]设计 哈希表 链表 1+
359日志速率限制器 🔒open in new window设计 哈希表 数据流
362敲击计数器 🔒open in new window设计 队列 数组 2+
379电话目录管理系统 🔒open in new window[✓]设计 队列 数组 2+
380O(1) 时间插入、删除和获取随机元素open in new window[✓]设计 数组 哈希表 2+
381O(1) 时间插入、删除和获取随机元素 - 允许重复open in new window设计 数组 哈希表 2+
431将 N 叉树编码为二叉树 🔒open in new window 深度优先搜索 广度优先搜索 2+
432全 O(1) 的数据结构open in new window[✓]设计 哈希表 链表 1+
449序列化和反序列化二叉搜索树open in new window 深度优先搜索 广度优先搜索 4+
460LFU 缓存open in new window设计 哈希表 链表 1+
535TinyURL 的加密与解密open in new window设计 哈希表 字符串 1+
588设计内存文件系统 🔒open in new window设计 字典树 哈希表 2+
604迭代压缩字符串 🔒open in new window设计 数组 字符串 1+
622设计循环队列open in new window[✓]设计 队列 数组 1+
631设计 Excel 求和公式 🔒open in new window 设计 拓扑排序 2+
635设计日志存储系统 🔒open in new window设计 哈希表 字符串 1+
641设计循环双端队列open in new window[✓]设计 队列 数组 1+
642设计搜索自动补全系统 🔒open in new window深度优先搜索 设计 字典树 4+
676实现一个魔法字典open in new window深度优先搜索 设计 字典树 2+
677键值映射open in new window设计 字典树 哈希表 1+
703数据流中的第 K 大元素open in new window[✓] 设计 二叉搜索树 3+
705设计哈希集合open in new window[✓]设计 数组 哈希表 2+
706设计哈希映射open in new window[✓]设计 数组 哈希表 2+
707设计链表open in new window[✓]设计 链表
715Range 模块open in new window设计 线段树 有序集合
716最大栈 🔒open in new window 设计 链表 2+
729我的日程安排表 Iopen in new window[✓]设计 线段树 数组 2+
731我的日程安排表 IIopen in new window[✓]设计 线段树 数组 3+
732我的日程安排表 IIIopen in new window设计 线段树 二分查找 2+
745前缀和后缀搜索open in new window设计 字典树 数组 2+
855考场就座open in new window设计 有序集合 堆(优先队列)
895最大频率栈open in new window 设计 哈希表 1+
900RLE 迭代器open in new window设计 数组 计数 1+
901股票价格跨度open in new window 设计 数据流 1+
911在线选举open in new window设计 数组 哈希表 1+
919完全二叉树插入器open in new window 广度优先搜索 设计 1+
933最近的请求次数open in new window设计 队列 数据流
981基于时间的键值存储open in new window设计 哈希表 字符串 1+
1032字符流open in new window设计 字典树 数组 2+
1146快照数组open in new window设计 数组 哈希表 1+
1157子数组中占绝大多数的元素open in new window设计 树状数组 线段树 2+
1166设计文件系统 🔒open in new window设计 字典树 哈希表 1+
1172餐盘栈open in new window 设计 哈希表 1+
1206设计跳表open in new window设计 链表
1244力扣排行榜 🔒open in new window设计 哈希表 排序
1261在受污染的二叉树中查找元素open in new window 深度优先搜索 广度优先搜索 3+
1286字母组合迭代器open in new window设计 字符串 回溯 1+
1348推文计数open in new window设计 哈希表 二分查找 2+
1352最后 K 个数的乘积open in new window设计 队列 数组 2+
1357每隔 n 个顾客打折open in new window设计 数组 哈希表
1381设计一个支持增量操作的栈open in new window[✓] 设计 数组
1396设计地铁系统open in new window设计 哈希表 字符串
1429第一个唯一数字 🔒open in new window设计 队列 数组 2+
1472设计浏览器历史记录open in new window[✓] 设计 数组 3+
1476子矩形查询open in new window设计 数组 矩阵
1483树节点的第 K 个祖先open in new window 深度优先搜索 广度优先搜索 3+
1500设计文件分享系统 🔒open in new window设计 哈希表 数据流 2+
1570两个稀疏向量的点积 🔒open in new window设计 数组 哈希表 1+
1586二叉搜索树迭代器 II 🔒open in new window 设计 3+
1600王位继承顺序open in new window 深度优先搜索 设计 1+
1603设计停车系统open in new window设计 计数 模拟
1622奇妙序列open in new window设计 线段树 数学
1628设计带解析函数的表达式树 🔒open in new window 设计 3+
1656设计有序流open in new window设计 数组 哈希表 1+
1670设计前中后队列open in new window设计 队列 数组 2+
1756设计最近使用(MRU)队列 🔒open in new window 设计 树状数组 3+
1797设计一个验证系统open in new window设计 哈希表 链表 1+
1804实现 Trie (前缀树) II 🔒open in new window设计 字典树 哈希表 1+
1825求出 MK 平均值open in new window设计 队列 数据流 2+
1845座位预约管理系统open in new window设计 堆(优先队列)
1865找出和为指定值的下标对open in new window设计 数组 哈希表
1912设计电影租借系统open in new window设计 数组 哈希表 2+
1993树上的操作open in new window 深度优先搜索 广度优先搜索 3+
2013检测正方形open in new window设计 数组 哈希表 1+
2034股票价格波动open in new window设计 哈希表 数据流 2+
2043简易银行系统open in new window设计 数组 哈希表 1+
2069模拟行走机器人 IIopen in new window设计 模拟
2080区间内查询数字的频率open in new window设计 线段树 数组 2+
2102序列顺序查询open in new window设计 数据流 有序集合 1+
2166设计位集open in new window设计 数组 哈希表 1+
2227加密解密字符串open in new window设计 字典树 数组 2+
2241设计一个 ATM 机器open in new window贪心 设计 数组
2254设计视频共享平台 🔒open in new window 设计 哈希表 1+
2276统计区间中的整数数目open in new window设计 线段树 有序集合
2286以组为单位订音乐会的门票open in new window设计 树状数组 线段树 1+
2296设计一个文本编辑器open in new window 设计 链表 3+
2336无限集中的最小数字open in new window设计 哈希表 有序集合 1+
2349设计数字容器系统open in new window设计 哈希表 有序集合 1+
2353设计食物评分系统open in new window设计 哈希表 有序集合 1+
2408设计 SQL 🔒open in new window设计 数组 哈希表 1+
2424最长上传前缀open in new window并查集 设计 树状数组 4+
2502设计内存分配器open in new window设计 数组 哈希表 1+
2526找到数据流中的连续整数open in new window设计 队列 哈希表 2+
2590设计一个待办事项清单 🔒open in new window设计 数组 哈希表 2+
2642设计可以求最短路径的图类open in new window 设计 最短路 1+
2671频率跟踪器open in new window设计 哈希表
3242设计相邻元素求和服务open in new window设计 数组 哈希表 2+
LCP 27黑盒光线反射open in new window设计 线段树 数学 1+
剑指 Offer 30包含min函数的栈open in new window[✓] 设计
剑指 Offer 37序列化二叉树open in new window[✓] 深度优先搜索 广度优先搜索 3+
剑指 Offer 41数据流中的中位数open in new window[✓]设计 双指针 数据流 2+
剑指 Offer 59-II队列的最大值open in new window[✓]设计 队列 单调队列
剑指 Offer 9用两个栈实现队列open in new window[✓] 设计 队列
剑指 Offer II 13二维子矩阵的和open in new window设计 数组 矩阵 1+
剑指 Offer II 30插入、删除和随机访问都是 O(1) 的容器open in new window[✓]设计 数组 哈希表 2+
剑指 Offer II 31最近最少使用缓存open in new window[✓]设计 哈希表 链表 1+
剑指 Offer II 41滑动窗口的平均值open in new window[✓]设计 队列 数组 1+
剑指 Offer II 42最近请求次数open in new window设计 队列 数据流
剑指 Offer II 43往完全二叉树添加节点open in new window 广度优先搜索 设计 1+
剑指 Offer II 48序列化与反序列化二叉树open in new window[✓] 深度优先搜索 广度优先搜索 3+
剑指 Offer II 55二叉搜索树迭代器open in new window[✓] 设计 3+
剑指 Offer II 58日程表open in new window[✓]设计 线段树 二分查找 1+
剑指 Offer II 59数据流的第 K 大数值open in new window[✓] 设计 二叉搜索树 3+
剑指 Offer II 62实现前缀树open in new window[✓]设计 字典树 哈希表 1+
剑指 Offer II 64神奇的字典open in new window深度优先搜索 设计 字典树 2+
剑指 Offer II 66单词之和open in new window设计 字典树 哈希表 1+
面试题 03.01三合一open in new window 设计 数组
面试题 03.02栈的最小值open in new window 设计
面试题 03.03堆盘子open in new window 设计 链表
面试题 03.04化栈为队open in new window 设计 队列
面试题 03.05栈排序open in new window 设计 单调栈
面试题 03.06动物收容所open in new window设计 队列
面试题 10.10数字流的秩open in new window设计 树状数组 二分查找 1+
面试题 16.02单词频率open in new window设计 字典树 数组 2+
面试题 16.09运算open in new window设计 数学
面试题 16.25LRU 缓存open in new window[✓]设计 哈希表 链表 1+
面试题 17.20连续中值open in new window设计 双指针 数据流 2+