Skip to content

powermano/leetcode-1

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 

Repository files navigation

个人刷题总结

数组问题

  1. 两数之和
  2. 寻找两个有序数组的中位数
  3. 三数之和
  4. 最大子序和
  5. 接雨水
  6. 盛最多水的容器
  7. 最接近的三数之和
  8. 最大矩形
  9. 删除排序数组中的重复项
  10. 下一个排列
  11. 1比特与2比特字符
  12. 翻转图像
  13. 四数之和
  14. 组合总和
  15. 螺旋矩阵 II
  16. 杨辉三角
  17. 子集
  18. 数组拆分 I
  19. 跳跃游戏 II
  20. 买卖股票的最佳时机
  21. 变为棋盘
  22. 合并两个有序数组
  23. 最小路径和
  24. 三角形最小路径和
  25. 合并区间
  26. 孤独像素 II
  27. 求众数
  28. 旋转图像
  29. 两数之和 II - 输入有序数组
  30. 缺失的第一个正数
  31. 最长重复子数组
  32. 寻找重复数
  33. 生命游戏
  34. 按奇偶排序数组
  35. 移除元素
  36. 数组中重复的数据
  37. 除自身以外数组的乘积
  38. 摆动排序
  39. 找到所有数组中消失的数字
  40. 从前序与中序遍历序列构造二叉树
  41. 买卖股票的最佳时机 II
  42. 使用最小花费爬楼梯

字符串

  1. 无重复字符的最长子串
  2. 最长回文子串
  3. 括号生成
  4. Z 字形变换
  5. 罗马数字转整数
  6. 报数
  7. 电话号码的字母组合
  8. 正则表达式匹配
  9. 有效的括号
  10. 编辑距离
  11. 复原IP地址
  12. 整数转罗马数字
  13. 二进制求和
  14. 最长公共前缀
  15. 字符串相加
  16. 特殊的二进制序列
  17. 转换成小写字母
  18. 唯一摩尔斯密码词
  19. 最长特殊序列 Ⅰ
  20. 字符串相乘
  21. 相似 RGB 颜色
  22. 反转字符串 II
  23. 机器人能否返回原点
  24. 串联所有单词的子串
  25. 独特的电子邮件地址
  26. 最小区间
  27. 两个字符串的删除操作
  28. 反转字符串中的单词 III
  29. 回文子串
  30. 最长有效括号
  31. 实现 strStr()
  32. 寻找最近的回文数
  33. 分割连接字符串
  34. 反转字符串
  35. 重构字符串
  36. 字母异位词分组
  37. 交错字符串
  38. 最短回文串
  39. 字符串转换整数 (atoi)
  40. 最小覆盖子串
  41. 特殊等价字符串组
  42. 简化路径

  1. 不同的二叉搜索树 II
  2. 不同的二叉搜索树
  3. 二叉树的中序遍历
  4. 翻转二叉树
  5. 二叉树的最大深度
  6. 合并二叉树
  7. 二叉树的层次遍历 II
  8. 将有序数组转换为二叉搜索树
  9. 二叉树展开为链表
  10. 输出二叉树
  11. 最大二叉树
  12. 对称二叉树
  13. 从前序与中序遍历序列构造二叉树
  14. 序列化和反序列化二叉搜索树
  15. 最长同值路径
  16. 二叉树的所有路径
  17. 二叉树的直径
  18. N叉树的前序遍历
  19. 二叉树的右视图
  20. 把二叉搜索树转换为累加树
  21. 二叉树中的最大路径和
  22. 二叉树的前序遍历
  23. 二叉树的层次遍历
  24. 二叉搜索树的范围和
  25. 路径总和
  26. 二叉搜索树的最小绝对差
  27. 二叉搜索树中的众数
  28. 相同的树
  29. 二叉搜索树迭代器
  30. 所有可能的满二叉树
  31. 完全二叉树的节点个数
  32. 两数之和 IV - 输入 BST
  33. 修剪二叉搜索树
  34. 二叉树的层平均值
  35. 二叉树的最小深度
  36. 打家劫舍 III
  37. N叉树的最大深度
  38. 二叉树的后序遍历
  39. 根据前序和后序遍历构造二叉树
  40. 恢复二叉搜索树
  41. 左叶子之和
  42. 路径总和 III

哈希表

  1. 两数之和
  2. TinyURL 的加密与解密
  3. 宝石与石头
  4. 无重复字符的最长子串
  5. 最大矩形
  6. 解数独
  7. 二叉树的中序遍历
  8. 四数之和
  9. 只出现一次的数字
  10. 两个数组的交集
  11. 每日温度
  12. 岛屿的周长
  13. 快乐数
  14. 串联所有单词的子串
  15. 键盘行
  16. 最长重复子数组
  17. 最小区间
  18. 回旋镖的数量
  19. 子域名访问计数
  20. 重复的DNA序列
  21. 字母异位词分组
  22. 和为K的子数组
  23. 最小覆盖子串
  24. 复制带随机指针的链表
  25. 原子的数量
  26. 员工的重要性
  27. 不同岛屿的数量 II
  28. 最长回文串
  29. 连续数组
  30. 计数质数
  31. 不同岛屿的数量
  32. 前 K 个高频元素
  33. 找不同
  34. 猜数字游戏
  35. 最长和谐子序列
  36. 查找常用字符
  37. 存在重复元素
  38. 最长重复子串
  39. 有效的数独
  40. 分糖果
  41. 单词规律
  42. 最短完整词

动态规划

  1. 最长回文子串
  2. 最大子序和
  3. 最大矩形
  4. 正则表达式匹配
  5. 不同的二叉搜索树 II
  6. 编辑距离
  7. 不同的二叉搜索树
  8. 爬楼梯
  9. 买卖股票的最佳时机
  10. 戳气球
  11. 赛车
  12. 最小路径和
  13. 最佳买卖股票时机含冷冻期
  14. 三角形最小路径和
  15. 区域和检索 - 数组不可变
  16. 安卓系统手势解锁
  17. 划分为k个相等的子集
  18. 矩形区域不超过 K 的最大数值和
  19. 最长重复子数组
  20. 打家劫舍
  21. 统计重复个数
  22. 回文子串
  23. 最长有效括号
  24. 比特位计数
  25. 最大正方形
  26. 访问所有节点的最短路径
  27. 最长上升子序列
  28. K个逆序对数组
  29. 不含连续1的非负整数
  30. 丑数 II
  31. 等差数列划分
  32. 使用最小花费爬楼梯
  33. 大礼包
  34. 最长递增子序列的个数
  35. 猜数字大小 II
  36. 三个无重叠子数组的最大和
  37. 拼接最大数
  38. 地下城游戏
  39. 奇怪的打印机
  40. 交错字符串
  41. 计算各个位数不同的数字个数
  42. 不同路径

深度优先搜索

  1. 24 点游戏
  2. 祖玛游戏
  3. 二叉树的最大深度
  4. 将有序数组转换为二叉搜索树
  5. 破解保险箱
  6. 网络延迟时间
  7. 孤独像素 II
  8. 二叉树展开为链表
  9. 字符串解码
  10. 01 矩阵
  11. 对称二叉树
  12. 从前序与中序遍历序列构造二叉树
  13. 有序链表转换二叉搜索树
  14. 大礼包
  15. 奇怪的打印机
  16. 二叉树的所有路径
  17. 二叉树的右视图
  18. 二叉树中的最大路径和
  19. 路径总和
  20. 岛屿的最大面积
  21. 克隆图
  22. 隔离病毒
  23. 岛屿数量
  24. 相同的树
  25. 移除盒子
  26. 删除无效的括号
  27. 员工的重要性
  28. 金字塔转换矩阵
  29. 打家劫舍 III
  30. 二叉树的最小深度
  31. N叉树的最大深度
  32. 不同岛屿的数量 II
  33. 课程表
  34. 由斜杠划分区域
  35. 恢复二叉搜索树
  36. 递增子序列
  37. 树中距离之和
  38. 矩阵中的最长递增路径
  39. 三元表达式解析器
  40. 不同岛屿的数量
  41. 喧闹和富有
  42. 被围绕的区域

二分查找

  1. 寻找两个有序数组的中位数
  2. 两个数组的交集
  3. 矩形区域不超过 K 的最大数值和
  4. 两数之和 II - 输入有序数组
  5. 寻找重复数
  6. 最长重复子数组
  7. 和至少为 K 的最短子数组
  8. 最长上升子序列
  9. 搜索旋转排序数组
  10. 地下城游戏
  11. Pow(x, n)
  12. 两数相除
  13. x 的平方根
  14. 搜索插入位置
  15. 山脉数组的峰顶索引
  16. 区间和的个数
  17. 有序矩阵中第K小的元素
  18. 乘法表中第k小的数
  19. 完全二叉树的节点个数
  20. 分割数组的最大值
  21. 长度最小的子数组
  22. 翻转对
  23. 寻找旋转排序数组中的最小值
  24. 猜数字大小
  25. 计算右侧小于当前元素的个数
  26. 在排序数组中查找元素的第一个和最后一个位置
  27. 供暖器
  28. 最长重复子串
  29. 第 K 个最小的素数分数
  30. 判断子序列
  31. 将数据流变为多个不相交区间
  32. 黑名单中的随机数
  33. 四数相加 II
  34. 寻找右区间
  35. 最小好进制
  36. 阶乘函数后K个零
  37. 俄罗斯套娃信封问题
  38. 搜索旋转排序数组 II
  39. 排列硬币
  40. 找出第 k 小的距离对
  41. 最小化去加油站的最大距离
  42. 寻找峰值

贪心

  1. 根据身高重建队列
  2. 跳跃游戏 II
  3. 情侣牵手
  4. 分发糖果
  5. 去除重复字母
  6. 买卖股票的最佳时机 II
  7. 重构字符串
  8. 任务调度器
  9. 拼接最大数
  10. 跳跃游戏
  11. 划分字母区间
  12. 翻转矩阵后的得分
  13. 两地调度
  14. 分发饼干
  15. 最后一块石头的重量
  16. 模拟行走机器人
  17. 删列造序
  18. 将数组拆分成斐波那契序列
  19. 加油站
  20. 买卖股票的最佳时机含手续费
  21. 判断子序列
  22. 通配符匹配
  23. 课程表 III
  24. IPO
  25. 分割数组为连续子序列
  26. 按要求补齐数组
  27. K 连续位的最小翻转次数
  28. 用最少数量的箭引爆气球
  29. K 距离间隔重排字符串
  30. 形成字符串的最短路径
  31. 设置交集大小至少为2
  32. 4键键盘
  33. 摆动序列
  34. 移掉K位数字
  35. 戳印序列
  36. 柠檬水找零
  37. 无重叠区间
  38. Dota2 参议院
  39. 优势洗牌
  40. 寻找排列
  41. 单调递增的数字
  42. 救生艇

双指针

  1. 无重复字符的最长子串
  2. 三数之和
  3. 接雨水
  4. 盛最多水的容器
  5. 最接近的三数之和
  6. 删除排序数组中的重复项
  7. 四数之和
  8. 合并两个有序数组
  9. 两个数组的交集
  10. 删除链表的倒数第N个节点
  11. 分隔链表
  12. 串联所有单词的子串
  13. 两数之和 II - 输入有序数组
  14. 寻找重复数
  15. 移除元素
  16. 最小区间
  17. 实现 strStr()
  18. 环形链表
  19. 反转字符串
  20. 颜色分类
  21. 有序数组的平方
  22. 最小覆盖子串
  23. 移动零
  24. 回文链表
  25. 划分字母区间
  26. 替换后的最长重复字符
  27. 长度最小的子数组
  28. 反转字符串中的元音字母
  29. 旋转链表
  30. 环形链表 II
  31. 独特字符串
  32. 验证回文串
  33. 乘积小于K的子数组
  34. 环形数组循环
  35. 两个数组的交集 II
  36. 删除排序数组中的重复项 II
  37. 数组中的最长山脉
  38. 安排工作以达到最大收益
  39. 比较含退格的字符串
  40. 推多米诺
  41. 最大连续1的个数 III
  42. 通过删除字母匹配到字典里最长单词

广度优先搜索

  1. 公交路线
  2. 二叉树的层次遍历 II
  3. 网络延迟时间
  4. 接雨水 II
  5. 01 矩阵
  6. 对称二叉树
  7. 滑动谜题
  8. 访问所有节点的最短路径
  9. 二叉树的右视图
  10. 二叉树的层次遍历
  11. 完全平方数
  12. 克隆图
  13. 岛屿数量
  14. 删除无效的括号
  15. 员工的重要性
  16. 二叉树的最小深度
  17. N叉树的最大深度
  18. 课程表
  19. 腐烂的橘子
  20. 相似度为 K 的字符串
  21. 被围绕的区域
  22. 在每个树行中找最大值
  23. 找树左下角的值
  24. 扫雷游戏
  25. 二叉树的锯齿形层次遍历
  26. 单词接龙
  27. N叉树的层序遍历
  28. 迷宫
  29. 最小高度树
  30. 太平洋大西洋水流问题
  31. 单词接龙 II
  32. 猫和老鼠
  33. 二叉树中所有距离为 K 的结点
  34. 离建筑物最近的距离
  35. 逃离大迷宫
  36. 获取所有钥匙的最短路径
  37. 以图判树
  38. 最短的桥
  39. 课程表 II
  40. 为高尔夫比赛砍树
  41. K 站中转内最便宜的航班
  42. 二叉树的堂兄弟节点

  1. 接雨水
  2. 最大矩形
  3. 有效的括号
  4. 二叉树的中序遍历
  5. 用队列实现栈
  6. 每日温度
  7. 去除重复字母
  8. 字符串解码
  9. 删除最外层的括号
  10. 下一个更大元素 I
  11. 基本计算器
  12. 最小栈
  13. 二叉树的前序遍历
  14. 简化路径
  15. 用栈实现队列
  16. 原子的数量
  17. 二叉搜索树迭代器
  18. 棒球比赛
  19. 柱状图中最大的矩形
  20. 下一个更大元素 II
  21. 二叉树的后序遍历
  22. 三元表达式解析器
  23. 括号的分数
  24. 132模式
  25. 扁平化嵌套列表迭代器
  26. 二叉树的锯齿形层次遍历
  27. 函数的独占时间
  28. 迷你语法分析器
  29. 链表中的下一个更大节点
  30. 基本计算器 IV
  31. 验证前序遍历序列二叉搜索树
  32. 比较含退格的字符串
  33. 验证栈序列
  34. 移掉K位数字
  35. 奇偶跳
  36. 验证二叉树的前序序列化
  37. 行星碰撞
  38. 最大频率栈
  39. 标签验证器
  40. 删除字符串中的所有相邻重复项
  41. 股票价格跨度
  42. 子数组的最小值之和

回溯算法

  1. 括号生成
  2. 全排列
  3. 电话号码的字母组合
  4. 解数独
  5. 正则表达式匹配
  6. 复原IP地址
  7. N皇后
  8. 组合总和
  9. 子集
  10. 字母大小写全排列
  11. 最短特异单词缩写
  12. 分割回文串
  13. 安卓系统手势解锁
  14. 全排列 II
  15. 组合
  16. 格雷编码
  17. 二进制手表
  18. 计算各个位数不同的数字个数
  19. 组合总和 III
  20. 优美的排列
  21. N皇后 II
  22. 单词搜索
  23. 列举单词的全部缩写
  24. 贴纸拼词
  25. 累加数
  26. 第k个排列
  27. 子集 II
  28. 将数组拆分成斐波那契序列
  29. 组合总和 II
  30. 通配符匹配
  31. 添加与搜索单词 - 数据结构设计
  32. 翻转游戏 II
  33. 单词接龙 II
  34. 单词搜索 II
  35. 单词方块
  36. 正方形数组的数目
  37. 活字印刷
  38. 单词拆分 II
  39. 不同路径 III
  40. 单词规律 II
  41. 回文排列 II
  42. 因子的组合

设计

  1. 用队列实现栈
  2. LRU缓存机制
  3. LFU缓存
  4. 最小栈
  5. 实现 Trie (前缀树)
  6. 用栈实现队列
  7. 二叉搜索树迭代器
  8. 顶端迭代器
  9. 全 O(1) 的数据结构
  10. 扁平化嵌套列表迭代器
  11. 最短单词距离 II
  12. 设计内存文件系统
  13. 添加与搜索单词 - 数据结构设计
  14. 二叉树的序列化与反序列化
  15. 设计哈希集合
  16. 设计推特
  17. 数据流的中位数
  18. O(1) 时间插入、删除和获取随机元素 - 允许重复
  19. 设计哈希映射
  20. 电话目录管理系统
  21. 设计链表
  22. 设计 Excel 求和公式
  23. 设计循环双端队列
  24. 常数时间插入、删除和获取随机元素
  25. 设计循环队列
  26. 锯齿迭代器
  27. 单词的唯一缩写
  28. 日志速率限制器
  29. 数据流中的移动平均值
  30. 两数之和 III - 数据结构设计
  31. 展开二维向量
  32. 判定井字棋胜负
  33. 贪吃蛇
  34. 敲击计数器
  35. 迭代压缩字符串
  36. 设计日志存储系统
  37. 设计搜索自动补全系统
  38. 最大栈

链表

  1. 两数相加
  2. 合并两个有序链表
  3. 反转链表
  4. 两两交换链表中的节点
  5. K 个一组翻转链表
  6. 反转链表 II
  7. 排序链表
  8. 合并K个排序链表
  9. 删除链表中的节点
  10. 重排链表
  11. 删除链表的倒数第N个节点
  12. 分隔链表
  13. 移除链表元素
  14. 两数相加 II
  15. 有序链表转换二叉搜索树
  16. 环形链表
  17. 删除排序链表中的重复元素
  18. 复制带随机指针的链表
  19. 回文链表
  20. 删除排序链表中的重复元素 II
  21. 对链表进行插入排序
  22. 链表的中间结点
  23. 相交链表
  24. 旋转链表
  25. 环形链表 II
  26. 将二叉搜索树转化为排序的双向链表
  27. 链表中的下一个更大节点
  28. 奇偶链表
  29. 分隔链表
  30. 扁平化多级双向链表
  31. 电话目录管理系统
  32. 链表组件
  33. 设计链表
  34. 循环有序列表的插入
  35. 给单链表加一

排序

  1. 排序链表
  2. 两个数组的交集
  3. 合并区间
  4. 最大数
  5. 摆动排序
  6. 重构字符串
  7. 颜色分类
  8. 最大间距
  9. 区间和的个数
  10. 对链表进行插入排序
  11. 插入区间
  12. 按奇偶排序数组 II
  13. 最佳的碰头地点
  14. 翻转对
  15. 计算右侧小于当前元素的个数
  16. 存在重复元素 III
  17. 数组的相对排序
  18. 煎饼排序
  19. 黑名单中的随机数
  20. H指数
  21. 有效的字母异位词
  22. 摆动排序 II
  23. 两个数组的交集 II
  24. 单词缩写
  25. 车队
  26. 三角形的最大周长
  27. 通过删除字母匹配到字典里最长单词
  28. 最接近原点的 K 个点
  29. 距离顺序排列矩阵单元格
  30. 距离相等的条形码
  31. 会议室 II
  32. 校园自行车分配
  33. 会议室
  34. 前五科的均分
  35. 用户网站访问行为分析

  1. 合并K个排序链表
  2. 赛车
  3. 网络延迟时间
  4. 接雨水 II
  5. 丑数 II
  6. 重构字符串
  7. 数组中的第K个最大元素
  8. 超级丑数
  9. 有序矩阵中第K小的元素
  10. 天际线问题
  11. 前 K 个高频元素
  12. 最后一块石头的重量
  13. 最低加油次数
  14. 第 K 个最小的素数分数
  15. 数据流中的第K大元素
  16. 找出第 k 小的距离对
  17. IPO
  18. 分割数组为连续子序列
  19. K 距离间隔重排字符串
  20. 滑动窗口最大值
  21. 水位上升的泳池中游泳
  22. 设计推特
  23. 数据流的中位数
  24. 根据字符出现频率排序
  25. 前K个高频单词
  26. 获取所有钥匙的最短路径
  27. 查找和最小的K对数字
  28. 雇佣 K 名工人的最低成本
  29. K 站中转内最便宜的航班
  30. 最接近原点的 K 个点
  31. 细分图中的可到达结点
  32. 距离相等的条形码
  33. 会议室 II
  34. 员工空闲时间

位运算

  1. 数组中两个数的最大异或值
  2. 只出现一次的数字 III
  3. 子集
  4. 只出现一次的数字 II
  5. 只出现一次的数字
  6. 字母大小写全排列
  7. 最短特异单词缩写
  8. 汉明距离
  9. 两整数之和
  10. 求众数
  11. 二进制手表
  12. 比特位计数
  13. 重复的DNA序列
  14. 数字的补数
  15. 缺失数字
  16. 列举单词的全部缩写
  17. 金字塔转换矩阵
  18. 颠倒二进制位
  19. 汉明距离总和
  20. 找不同
  21. 数字范围按位与
  22. UTF-8 编码验证
  23. 2的幂
  24. 4的幂
  25. 二进制表示中质数个计算置位
  26. IP 到 CIDR
  27. 数字转换为十六进制数
  28. 位1的个数
  29. 最大单词长度乘积
  30. 交替位二进制数
  31. 整数替换
  32. 子数组按位或操作
  33. 最小的必要团队

  1. 情侣牵手
  2. 网络延迟时间
  3. 除法求值
  4. 克隆图
  5. 课程表
  6. 由斜杠划分区域
  7. 相似度为 K 的字符串
  8. 相似字符串组
  9. 最小高度树
  10. 不邻接植花
  11. 重新安排行程
  12. 冗余连接
  13. 钥匙和房间
  14. 正方形数组的数目
  15. 序列重建
  16. 冗余连接 II
  17. 以图判树
  18. 课程表 II
  19. 火星词典
  20. 尽量减少恶意软件的传播 II
  21. 分隔数组以得到最大和
  22. 找到最终的安全状态
  23. 找到小镇的法官
  24. 判断二分图
  25. 无向图中连通分量的数目
  26. 等式方程的可满足性
  27. 得分最高的路径
  28. 从始点到终点的所有路径
  29. 最低成本联通所有城市
  30. 平行课程
  31. 最大层内元素和
  32. 地图分析
  33. 字符串转化

并查集

  1. 情侣牵手
  2. 最长连续序列
  3. 除法求值
  4. 打砖块
  5. 岛屿数量
  6. 由斜杠划分区域
  7. 被围绕的区域
  8. 相似字符串组
  9. 朋友圈
  10. 账户合并
  11. 冗余连接
  12. 水位上升的泳池中游泳
  13. 冗余连接 II
  14. 以图判树
  15. 尽量减少恶意软件的传播 II
  16. 尽量减少恶意软件的传播
  17. 岛屿数量 II
  18. 移除最多的同行或同列石头
  19. 无向图中连通分量的数目
  20. 按公因数计算最大组件大小
  21. 彼此熟识的最早时间
  22. 等式方程的可满足性
  23. 得分最高的路径
  24. 句子相似性 II
  25. 按字典序排列最小的等效字符串
  26. 最低成本联通所有城市

分治算法

  1. 寻找两个有序数组的中位数
  2. 最大子序和
  3. 合并K个排序链表
  4. 戳气球
  5. 求众数
  6. 为运算表达式设计优先级
  7. 漂亮数组
  8. 数组中的第K个最大元素
  9. 区间和的个数
  10. 给表达式添加运算符
  11. 翻转对
  12. 天际线问题
  13. 计算右侧小于当前元素的个数
  14. 将二叉搜索树转化为排序的双向链表
  15. DI 序列的有效排列
  16. 自由之路
  17. 搜索二维矩阵 II
  18. 最接近原点的 K 个点

滑动窗口

  1. 无重复字符的最长子串
  2. 最小覆盖子串
  3. 滑动窗口中位数
  4. 替换后的最长重复字符
  5. K 连续位的最小翻转次数
  6. 滑动窗口最大值
  7. 最小窗口子序列
  8. 最大连续1的个数 III
  9. K 个不同整数的子数组
  10. 移动石子直到连续 II
  11. 字符串的排列
  12. 至多包含 K 个不同字符的最长子串
  13. 最长湍流子数组
  14. 爱生气的书店老板
  15. 元素和为目标值的子矩阵数量
  16. 至多包含两个不同字符的最长子串
  17. 长度为 K 的无重复字符子串
  18. 最少交换次数来组合所有的 1

字典树

  1. 数组中两个数的最大异或值
  2. 实现 Trie (前缀树)
  3. 前缀和后缀搜索
  4. 添加与搜索单词 - 数据结构设计
  5. 词典中最长的单词
  6. 键值映射
  7. 单词替换
  8. 单词搜索 II
  9. 单词方块
  10. 实现一个魔法字典
  11. 回文对
  12. 前K个高频单词
  13. 字符流
  14. 连接词
  15. 字符串的索引对
  16. 驼峰式匹配
  17. 设计搜索自动补全系统

递归

  1. 特殊的二进制序列
  2. 划分为k个相等的子集
  3. 最长同值路径
  4. 二叉搜索树的范围和
  5. 原子的数量
  6. 所有可能的满二叉树
  7. 二叉搜索树结点最小距离
  8. 有效的井字游戏
  9. 中心对称数 II
  10. 输出比赛匹配对
  11. 第K个语法符号
  12. 最小因式分解
  13. 中心对称数 III
  14. 拆分二叉搜索树

有序映射

  1. 一手顺子
  2. 我的日程安排表 II
  3. 存在重复元素 III
  4. 考场就座
  5. 将数据流变为多个不相交区间
  6. 我的日程安排表 III
  7. 掉落的方块
  8. Range 模块
  9. 奇偶跳
  10. K 个空花盆

线段树

  1. 二维区域和检索 - 可变
  2. Range 模块
  3. 掉落的方块
  4. 区域和检索 - 数组可修改
  5. 我的日程安排表 III
  6. 计算右侧小于当前元素的个数
  7. 天际线问题
  8. 翻转对
  9. 区间和的个数
  10. 矩形面积 II

队列

  1. 最近的请求次数
  2. 矩形区域不超过 K 的最大数值和
  3. 和至少为 K 的最短子数组
  4. 任务调度器
  5. 杀死进程
  6. 设计循环双端队列
  7. 设计循环队列
  8. 数据流中的移动平均值
  9. 贪吃蛇

数学

  1. 两数相加
  2. TinyURL 的加密与解密
  3. 整数反转
  4. 罗马数字转整数
  5. 回文数
  6. 可怜的小猪
  7. 各位相加
  8. 数字 1 的个数
  9. 整数转罗马数字
  10. 二进制求和
  11. 变为棋盘
  12. 字符串相乘
  13. 自除数
  14. 破解保险箱
  15. 最大三角形面积
  16. 快乐数
  17. 灯泡开关
  18. 相似 RGB 颜色
  19. 增减字符串匹配
  20. 数组的均值分割
  21. 三维形体的表面积
  22. 黑板异或游戏
  23. 丑数 II
  24. 等差数列划分
  25. 超级次方
  26. 三个数的最大乘积
  27. 基本计算器
  28. 第N个数字
  29. Pow(x, n)
  30. 计算各个位数不同的数字个数
  31. 字符串转换整数 (atoi)
  32. 两数相除
  33. x 的平方根
  34. 完全平方数
  35. 到达终点数字
  36. 最大整除子集
  37. 缺失数字
  38. 最小移动次数使数组元素相等
  39. 超级丑数
  40. 整数拆分
  41. 最少移动次数使数组元素相等 II
  42. 石子游戏

极小化极大

  1. Nim 游戏
  2. 猜数字大小 II
  3. 预测赢家
  4. 石子游戏
  5. 我能赢吗
  6. 翻转游戏 II
  7. 猫和老鼠
  8. 猜猜这个单词

树状数组

  1. 区间和的个数
  2. 翻转对
  3. 天际线问题
  4. 计算右侧小于当前元素的个数
  5. 区域和检索 - 数组可修改
  6. 二维区域和检索 - 可变

Random

  1. 黑名单中的随机数
  2. 用 Rand7() 实现 Rand10()
  3. 在圆内随机生成点
  4. 按权重随机选择
  5. 随机翻转矩阵
  6. 非重叠矩形中的随机点

拓扑排序

  1. 课程表
  2. 矩阵中的最长递增路径
  3. 序列重建
  4. 课程表 II
  5. 火星词典

脑筋急转弯

  1. Nim 游戏
  2. 灯泡开关
  3. 在LR字符串中交换相邻字符
  4. 移动石子直到连续

几何

  1. 三维形体的表面积
  2. 最小面积矩形 II
  3. 安装栅栏

Line Sweep

  1. 天际线问题
  2. 完美矩形
  3. 矩形面积 II

Rejection Sampling

  1. 用 Rand7() 实现 Rand10()
  2. 在圆内随机生成点

蓄水池抽样

  1. 随机数索引
  2. 链表随机节点

二叉搜索树

  1. 从二叉搜索树到更大和树

记忆化

  1. 矩阵中的最长递增路径

About

按tag区分的刷题列表, 充会员整理的按 leetcode 频率热度排序的刷题列表 每个tag的top42(宇宙数字)。

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published