heap
- 重构字符串(Roblox)
- 任务调度器(Roblox, Snowflake)
- 前K个高频单词(Adobe)
- 前 K 个高频元素(Adobe, Bloomberg)
- 最多可以参加的会议数目(Snowflake)
- 查找和最小的 K 对数字(Linkedin, Google)
- 最后一块石头的重量(Nvidia)
- 数据流的中位数(Snowflake)
- Merge k Sorted Lists(Bloomberg, Snowflake, Nvidia, Microsoft)
- 股票价格波动(Google)
- 会议室 III
prefix sum
- 乘积小于 K 的子数组(Airbnb)
- 最大连续1的个数 III(Microsoft, Expedia)
- 和可被 K 整除的子数组(Expedia)
- 二维区域和检索 - 矩阵不可变(Snowflake)
- Subarray Sum Equals K(Bloomberg)
- Product of Array Except Self(Bloomberg, Microsoft)
- Meeting Rooms II(Microsoft)
trie
- 添加与搜索单词 - 数据结构设计(Docusign, LinkedIn, Snowflake, Rubrik, Tiktok)
- 最长公共前缀(Bloomberg)
- 最长公共前缀的长度(Databricks)
- Implement Trie (Prefix Tree)(Snowflake)
- 设计内存文件系统(Snowflake)
- 删除子文件夹(Snowflake, Google)
- 搜索推荐系统(Docusign, Amazon)
- 单词搜索 II(Microsoft, Google, Airbnb)
stack
- Basic Calculator II(Tesla)
- Max Stack(Linkedin)
- Nested List Weight Sum II(Linkedin)
- Valid Parentheses(Nvidia, Expedia)
- 逆波兰表达式求值(Microsoft)
- 基本计算器(Microsoft)
- 有效的括号(Microsoft)
- 最长有效括号(Tiktok)
- 最大矩形(Tiktok)
- 柱状图中最大的矩形(Microsoft)
- 简化路径(Snowflake, Tiktok)
- 去除重复字母(Expedia)
- 队列中可以看到的人数(Expedia)
- 使字符串平衡的最小交换次数(Expedia)
- 子数组范围和(Tiktok)
queue
- 设计循环队列(Tesla, Cloudflare)
- 敲击计数器(Snowflake, Cloudflare, Databricks)
- 绝对差不超过限制的最长连续子数组(Google)
错题集
- 设计循环队列(Tesla, Cloudflare)
hash
- 缺失的第一个正数(Tesla)
- 丢失的数字(Meta, Microsoft, Bloomberg)
sort
sliding window
- 最大连续1的个数 III(SAP, Salesforce, LinkedIn, Meta, Google)
- 替换后的最长重复字符(Adobe, Amazon, Bytedance, Bloomberg)
- 子串的最大出现次数(Hubspot, Salesforce)
- 至多包含两个不同字符的最长子串(Ebay, Google, Tiktok)
- 至多包含 K 个不同字符的最长子串(Microsoft)
- 乘积小于 K 的子数组(Paypal, Oracle, Salesforce)
- 最小区间(Lyft, Databricks)
- 大小为 K 且平均值大于等于阈值的子数组数目(LinkedIn)