跳至主要內容

设计


设计

全部标签

数据结构

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

算法

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

其他

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


题号标题题解标签难度
0146LRU 缓存open in new windowJSopen in new window设计 哈希表 链表 1+
0155最小栈open in new windowJSopen in new window 设计
0170两数之和 III - 数据结构设计open in new window设计 数组 哈希表 2+
0173二叉搜索树迭代器open in new windowJSopen in new window 设计 3+
0208实现 Trie (前缀树)open in new window设计 字典树 哈希表 1+
0211添加与搜索单词 - 数据结构设计open in new window深度优先搜索 设计 字典树 1+
0225用队列实现栈open in new windowJSopen in new window 设计 队列
0232用栈实现队列open in new windowJSopen in new window 设计 队列
0244最短单词距离 IIopen in new window设计 数组 哈希表 2+
0251展开二维向量open in new window设计 数组 双指针 1+
0271字符串的编码与解码open in new window设计 数组 字符串
0281锯齿迭代器open in new window设计 队列 数组 1+
0284顶端迭代器open in new window设计 数组 迭代器
0288单词的唯一缩写open in new window设计 数组 哈希表 1+
0295数据流的中位数open in new window设计 双指针 数据流 2+
0297二叉树的序列化与反序列化open in new windowJSopen in new window 深度优先搜索 广度优先搜索 3+
0303区域和检索 - 数组不可变open in new windowJSopen in new window设计 数组 前缀和
0304二维区域和检索 - 矩阵不可变open in new window设计 数组 矩阵 1+
0307区域和检索 - 数组可修改open in new windowJSopen in new window设计 树状数组 线段树 1+
0308二维区域和检索 - 可变open in new window设计 树状数组 线段树 2+
0341扁平化嵌套列表迭代器open in new window 深度优先搜索 3+
0346数据流中的移动平均值open in new windowJSopen in new window设计 队列 数组 1+
0348设计井字棋open in new window设计 数组 哈希表 1+
0352将数据流变为多个不相交区间open in new window设计 二分查找 有序集合
0353贪吃蛇open in new window设计 队列 数组 1+
0355设计推特open in new windowJSopen in new window设计 哈希表 链表 1+
0359日志速率限制器open in new window设计 哈希表
0362敲击计数器open in new window设计 队列 数组 2+
0379电话目录管理系统open in new windowJSopen in new window设计 队列 数组 2+
0380O(1) 时间插入、删除和获取随机元素open in new windowJSopen in new window设计 数组 哈希表 2+
0381O(1) 时间插入、删除和获取随机元素 - 允许重复open in new window设计 数组 哈希表 2+
0431将 N 叉树编码为二叉树open in new window 深度优先搜索 广度优先搜索 2+
0432全 O(1) 的数据结构open in new window设计 哈希表 链表 1+
0449序列化和反序列化二叉搜索树open in new window 深度优先搜索 广度优先搜索 4+
0460LFU 缓存open in new window设计 哈希表 链表 1+
0535TinyURL 的加密与解密open in new window设计 哈希表 字符串 1+
0588设计内存文件系统open in new window设计 字典树 哈希表 1+
0604迭代压缩字符串open in new window设计 数组 哈希表 2+
0622设计循环队列open in new windowJSopen in new window设计 队列 数组 1+
0631设计 Excel 求和公式open in new window 设计 拓扑排序
0635设计日志存储系统open in new window设计 哈希表 字符串 1+
0641设计循环双端队列open in new window设计 队列 数组 1+
0642设计搜索自动补全系统open in new window设计 字典树 字符串 1+
0676实现一个魔法字典open in new window设计 字典树 哈希表 1+
0677键值映射open in new window设计 字典树 哈希表 1+
0703数据流中的第 K 大元素open in new windowJSopen in new window 设计 二叉搜索树 3+
0705设计哈希集合open in new windowJSopen in new window设计 数组 哈希表 2+
0706设计哈希映射open in new windowJSopen in new window设计 数组 哈希表 2+
0707设计链表open in new windowJSopen in new window设计 链表
0715Range 模块open in new window设计 线段树 有序集合
0716最大栈open in new window 设计 链表 2+
0729我的日程安排表 Iopen in new window设计 线段树 二分查找 1+
0731我的日程安排表 IIopen in new window设计 线段树 二分查找 1+
0732我的日程安排表 IIIopen in new window设计 线段树 二分查找 1+
0745前缀和后缀搜索open in new window设计 字典树 哈希表 1+
0855考场就座open in new window设计 有序集合 堆(优先队列)
0895最大频率栈open in new window 设计 哈希表 1+
0900RLE 迭代器open in new window设计 数组 计数 1+
0901股票价格跨度open in new window 设计 数据流 1+
0911在线选举open in new window设计 数组 哈希表 1+
0919完全二叉树插入器open in new window 广度优先搜索 设计 1+
0933最近的请求次数open in new window设计 队列 数据流
0981基于时间的键值存储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 windowJSopen in new window 设计 数组 3+
1476子矩形查询open in new window设计 数组 矩阵
1483树节点的第 K 个祖先open in new window 深度优先搜索 广度优先搜索 2+
1500设计文件分享系统open in new window设计 哈希表 数据流 1+
1570两个稀疏向量的点积open in new window设计 数组 哈希表 1+
1586二叉搜索树迭代器 IIopen 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 设计 2+
1656设计有序流open in new window设计 数组 哈希表 1+
1670设计前中后队列open in new window设计 队列 数组 2+
1756设计最近使用(MRU)队列open in new window 设计 树状数组 3+
1797设计一个验证系统open in new window设计 哈希表
1804实现 Trie (前缀树) IIopen 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 深度优先搜索 广度优先搜索 2+
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设计 数组 哈希表
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设计 哈希表 堆(优先队列)
2349设计数字容器系统open in new window设计 哈希表 有序集合 1+
2353设计食物评分系统open in new window设计 哈希表 有序集合 1+
2408设计 SQLopen 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设计 哈希表
LCP 27黑盒光线反射open in new window设计 线段树 数学 1+
剑指 Offer 09用两个栈实现队列open in new windowJSopen in new window 设计 队列
剑指 Offer 30包含min函数的栈open in new windowJSopen in new window 设计
剑指 Offer 37序列化二叉树open in new windowJSopen in new window 深度优先搜索 广度优先搜索 3+
剑指 Offer 41数据流中的中位数open in new window设计 双指针 数据流 2+
剑指 Offer 59 - II队列的最大值open in new window设计 队列 单调队列
剑指 Offer II 013二维子矩阵的和open in new window设计 数组 矩阵 1+
剑指 Offer II 030插入、删除和随机访问都是 O(1) 的容器open in new window设计 数组 哈希表 2+
剑指 Offer II 031最近最少使用缓存open in new windowJSopen in new window设计 哈希表 链表 1+
剑指 Offer II 041滑动窗口的平均值open in new window设计 队列 数组 1+
剑指 Offer II 042最近请求次数open in new window设计 队列 数据流
剑指 Offer II 043往完全二叉树添加节点open in new window 广度优先搜索 设计 1+
剑指 Offer II 048序列化与反序列化二叉树open in new window 深度优先搜索 广度优先搜索 3+
剑指 Offer II 055二叉搜索树迭代器open in new window 设计 3+
剑指 Offer II 058日程表open in new window设计 线段树 二分查找 1+
剑指 Offer II 059数据流的第 K 大数值open in new window 设计 二叉搜索树 3+
剑指 Offer II 062实现前缀树open in new window设计 字典树 哈希表 1+
剑指 Offer II 064神奇的字典open in new window设计 字典树 哈希表 1+
剑指 Offer II 066单词之和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 windowJSopen in new window设计 哈希表 链表 1+
面试题 17.20连续中值open in new window设计 双指针 数据流 2+