链接:https://leetcode.cn/problem-list/TP9kvfRn
目录:
展开/折叠
- 基础计算
- LCR 001. 两数相除 (easy)
- LCR 002. 二进制求和 (easy)
- LCR 003. 比特位计数 (easy)
- LCR 004. 只出现一次的数字 II (medium)
- LCR 005. 最大单词长度乘积 (medium)
- LCR 006. 两数之和 II - 输入有序数组 (easy)
- LCR 007. 三数之和 (easy)
- 数组
- LCR 008. 长度最小的子数组 (medium)
- LCR 009. 乘积小于 K 的子数组 (medium)
- LCR 010. 和为 K 的子数组 (medium)
- LCR 011. 连续数组 (medium)
- LCR 012. 寻找数组的中心下标 (easy)
- LCR 013. 二维区域和检索 - 矩阵不可变 (medium)
- 字符串
- LCR 014. 字符串的排列 (medium)
- LCR 015. 找到字符串中所有字母异位词 (medium)
- LCR 016. 无重复字符的最长子串 (easy)
- LCR 017. 最小覆盖子串 (hard)
- LCR 018. 验证回文串 (easy)
- LCR 019. 验证回文串 II (easy)
- LCR 020. 回文子串 (medium)
- 链表、双指针、递归
- LCR 021. 删除链表的倒数第 N 个结点 (medium)
- LCR 022. 环形链表 II (medium)
- LCR 023. 相交链表 (easy)
- LCR 024. 反转链表 (easy)
- LCR 025. 两数相加 II (medium)
- LCR 026. 重排链表 (medium)
- LCR 027. 回文链表 (easy)
- LCR 028. 扁平化多级双向链表 (medium)
- LCR 029. 循环有序列表的插入 (medium)
- 哈希表
- LCR 030. O(1) 时间插入、删除和获取随机元素 (medium)
- LCR 031. LRU 缓存 (medium)
- LCR 032. 有效的字母异位词 (easy)
- LCR 033. 字母异位词分组 (medium)
- LCR 034. 验证外星语词典 (easy)
- 栈,数组
- LCR 035. 最小时间差 (medium)
- LCR 036. 逆波兰表达式求值 (medium)
- LCR 037. 行星碰撞 (medium)
- LCR 038. 每日温度 (medium)
- LCR 039. 柱状图中最大的矩形 (hard)
- LCR 040. 最大矩形 (hard)
- LCR 041. 数据流中的移动平均值 (easy)
- LCR 042. 最近的请求次数 (easy)
- 二叉树,深度/广度优先搜索
- LCR 043. 完全二叉树插入器 (medium)
- LCR 044. 在每个树行中找最大值 (medium)
- LCR 045. 找树左下角的值 (medium)
- LCR 046. 二叉树的右视图 (medium)
- LCR 047. 二叉树剪枝 (medium)
- LCR 048. 二叉树的序列化与反序列化 (hard)
- LCR 049. 求根节点到叶节点数字之和 (medium)
- LCR 050. 路径总和 III (medium)
- LCR 051. 二叉树中的最大路径和 (hard)
- LCR 052. 递增顺序搜索树 (easy)
- LCR 053. 二叉搜索树中的中序后继 (medium)
- LCR 054. 把二叉搜索树转换为累加树 (medium)
- LCR 055. 二叉搜索树迭代器 (medium)
- LCR 056. 两数之和 IV - 输入二叉搜索树 (easy)
- 数组
- LCR 057. 存在重复元素 III (medium)
- LCR 058. 我的日程安排表 I (medium)
- LCR 059. 数据流中的第 K 大元素 (easy)
- LCR 060. 前 K 个高频元素 (medium)
- LCR 061. 查找和最小的 K 对数字 (medium)
- 字典树
- LCR 062. 实现 Trie (前缀树) (medium)
- LCR 063. 单词替换 (medium)
- LCR 064. 实现一个魔法字典 (medium)
- LCR 065. 单词的压缩编码 (medium)
- LCR 066. 键值映射 (medium)
- LCR 067. 数组中两个数的最大异或值 (medium)
- 二分查找
- LCR 068. 搜索插入位置 (easy)
- LCR 069. 山脉数组的峰顶索引 (easy)
- LCR 070. 有序数组中的单一元素 (medium)
- LCR 071. 按权重随机选择 (medium)
- LCR 072. x 的平方根 (easy)
- LCR 073. 爱吃香蕉的狒狒 (medium)
- 数组排序
- LCR 074. 合并区间 (medium)
- LCR 075. 数组的相对排序 (easy)
- LCR 076. 数组中的第 K 个最大元素 (medium)
- LCR 077. 排序链表 (medium)
- LCR 078. 合并 K 个升序链表 (hard)
- 回溯
- LCR 079. 子集 (medium)
- LCR 080. 组合 (medium)
- LCR 081. 组合总和 (medium)
- LCR 082. 组合总和 II (medium) 需要先排序后面回溯中剪枝
- LCR 083. 全排列 (medium)
- LCR 084. 全排列 II (medium) 需要先排序后面回溯中剪枝
- LCR 085. 括号生成 (medium)
- LCR 086. 分割回文串 (medium) dp+bk
- LCR 087. 复原 IP 地址 (medium)
- 动态规划
- LCR 088. 使用最小花费爬楼梯 (easy)
- LCR 089. 打家劫舍 (medium)
- LCR 090. 打家劫舍 II (medium)
- LCR 091. 粉刷房子 (medium)
- LCR 092. 将字符串翻转到单调递增 (medium)
- LCR 093. 最长的斐波那契子序列的长度 (medium)
- LCR 094. 分割回文串 II (hard)
- LCR 095. 最长公共子序列 (medium)
- LCR 096. 交错字符串 (medium)
- LCR 097. 不同的子序列 (hard)
- LCR 098. 不同路径 (medium)
- LCR 099. 最小路径和 (medium)
- LCR 100. 三角形最小路径和 (medium)
- LCR 101. 分割等和子集 (easy) 一半背包问题(第二个循环倒序)
- LCR 102. 目标和 (medium) 一半背包问题(第二个循环倒序)
- LCR 103. 零钱兑换 (medium) 背包(第二个循环顺序)
- LCR 104. 组合总和 Ⅳ (medium) I~III 回溯,IV 动态规划
- 深度优先搜索(DFS),广度优先搜索(BFS),并查集(UnionFind),图(graph)
- LCR 105. 岛屿的最大面积 (medium) bfs, dfs
- LCR 106. 判断二分图 (medium) bfs, dfs
- LCR 107. 01 矩阵 (medium) bfs, dp
- LCR 108. 单词接龙 (hard) bfs, bfs+graph
- LCR 109. 打开转盘锁 (medium) bfs
- LCR 110. 所有可能的路径 (medium) bk
- LCR 111. 除法求值 (medium) bfs, uf
- LCR 112. 矩阵中的最长递增路径 (hard) dfs
- LCR 113. 课程表 II (medium) graph(g+ind)+bfs
- LCR 114. 火星词典 (hard) graph(g+ind)+bfs
- LCR 115. 序列重建 (medium) graph(g+ind)+bfs
- LCR 116. 省份数量 (medium) uf, dfs
- LCR 117. 相似字符串组 (hard) uf, bfs
- LCR 118. 冗余连接 (medium) uf
- LCR 119. 最长连续序列 (medium) uf, hash, sort...
展开/折叠
- 20240101.1599. 经营摩天轮的最大利润 (medium) 贪心
- 20240102.466. 统计重复个数 (hard) dp
- 20240103.2487. 从链表中移除节点 (medium) 递归 recursion
- 20240104.2397. 被列覆盖的最多行数 (medium) 位运算
- 20240105.1944. 队列中可以看到的人数 (hard) 倒推,单调不增栈
- 20240106.2807. 在链表中插入最大公约数 (medium) 简单模拟
- 20240107.383. 赎金信 (easy)
- 20240108.447. 回旋镖的数量 (medium) 哈希表
- 20240109.2707. 字符串中的额外字符 (medium) dfs,递归
- 20240110.2696. 删除子串后的字符串最小长度 (easy) stack
- 20240111.2645. 构造有效字符串的最少插入数 (medium) 贪心。后者大于前者,则俩字母属于不同abc;注意x从1开始因为如果有字符则至少有一个abc
- 20240112.2085. 统计出现过一次的公共字符串 (easy) 哈希表
- 20240113.2182. 构造限制重复的字符串 (medium) 贪心+双指针
- 20240114.83. 删除排序链表中的重复元素 (easy) 链表,遍历
- 20240115.82. 删除排序链表中的重复元素 II (medium) 链表,遍历
- 20240116.2719. 统计整数数目 (hard) dfs
- 20240117.2744. 最大字符串配对数目 (easy) 二维数组
- 20240118.2171. 拿出最少数目的魔法豆 (medium) 排序 + 枚举 + 数学
- 20240119.2809. 使数组和小于等于 x 的最少时间 (hard) 贪心 + 1d DP or 2d DP
- 20240120.2788. 按分隔符拆分字符串 (easy) 简单遍历
- 20240121.410. 分割数组的最大值 (hard) dp+presum 二分
- 20240122.670. 最大交换 (medium) 贪心
- 20240123.2765. 最长交替子数组 (easy) O(n) O(1)
- 20240124.2865. 美丽塔 I (medium) 单调栈
- 20240125.2859. 计算 K 置位下标对应元素的和 (easy) 二进制
- 20240126.2846. 边权重均等查询 (hard) 图+层序遍历+LCA(Lowest Common Ancestor)
- 20240127.2861. 最大合金数 (medium) 二分
- 20240128.365. 水壶问题 (medium) xy最大公约数被z整除
- 20240129.514. 自由之路 (hard) dp
- 20240130.2808. 使循环数组所有元素相等的最少秒数 (medium) 病毒扩散,最大最小值,哈希表
- 20240131.2670. 找出不同元素数目差数组 (easy) unordered_set
展开/折叠
- 20240201.LCP 24. 数字游戏 (hard) 优先队列(大小根堆),找中位数 https://leetcode.cn/problems/5TxKeK/solutions/2627384/python3javacgo-yi-ti-yi-jie-you-xian-dui-b6jd
- 20240202.1686. 石子游戏 VI (medium) 贪心
- 20240203.1690. 石子游戏 VII (medium) dfs -> 记忆优化memo存 -> 递归i倒序j顺序 -> 递推式变一维。逐渐优化
- 20240204.292. Nim 游戏 (easy) n%4!=0
- 20240205.1696. 跳跃游戏 VI (medium) 双端队列
- 20240206.LCP 30. 魔塔游戏 (medium) 贪心
- 20240207.2641. 二叉树的堂兄弟节点 II (medium) 层序遍历,双端队列
- 20240208.993. 二叉树的堂兄弟节点 (easy) dfs
- 20240209.236. 二叉树的最近公共祖先 (medium) dfs
- 20240210.94. 二叉树的中序遍历 (easy) 中序遍历
- 20240211.144. 二叉树的前序遍历 (easy) 前序遍历
- 20240212.145. 二叉树的后序遍历 (easy) 后序遍历
- 20240213.987. 二叉树的垂序遍历 (hard) 垂序遍历
- 20240214.102. 二叉树的层序遍历 (medium) 层序遍历
- 20240215.107. 二叉树的层序遍历 II (medium) 层序遍历 + reverse
- 20240216.103. 二叉树的锯齿形层序遍历 (medium) 层序遍历 + reverse
- 20240217.429. N 叉树的层序遍历 (medium) 层序遍历
- 20240218.589. N 叉树的前序遍历 (easy) 前序遍历
- 20240219.590. N 叉树的后序遍历 (easy) 后序遍历
- 20240220.105. 从前序与中序遍历序列构造二叉树 (medium) dfs
- 20240221.106. 从中序与后序遍历序列构造二叉树 (medium) dfs
- 20240222.889. 根据前序和后序遍历构造二叉树 (medium) dfs
- 20240223.2583. 二叉树中的第 K 大层和 (medium) 层序遍历+最小堆
- 20240224.2476. 二叉搜索树最近节点查询 (medium) 层序遍历+二分查找
- 20240225.235. 二叉搜索树的最近公共祖先 (medium)
- 20240226.938. 二叉搜索树的范围和 (easy) dfs
- 20240227.2867. 统计树中的合法路径数目 (hard) 树dp
- 20240228.2673. 使二叉树所有路径值相等的最小代价 (medium) 倒着来
- 20240229.2581. 统计可能的树根数目 (hard) 换根dp, dfs
展开/折叠
- 20240301.2369. 检查数组是否存在有效划分 (medium) dp
- 20240302.2368. 受限条件下可到达节点的数目 (medium) dfs, 图
- 20240303.225. 用队列实现栈 (easy)
- 20240304.232. 用栈实现队列 (easy) 2 stacks
- 20240305.1976. 到达目的地的方案数 (medium) 图,小顶堆,bfs
- 20240306.2917. 找出数组中的 K-or 值 (easy) simulation
- 20240307.2575. 找出字符串的可整除数组 (medium) 递推,数学,前缀和,dp
- 20240308.2834. 找出美丽数组的最小和 (medium) 数学
- 20240309.2386. 找出数组的第 K 大和 (hard) 小顶堆,全排列
- 20240310.299. 猜数字游戏 (medium) 简单模拟,分2类
- 20240311.2129. 将标题首字母大写 (easy) l,r指针
- 20240312.1261. 在受污染的二叉树中查找元素 (medium) bfs
- 20240313.2864. 最大二进制奇数 (easy) 贪心
- 20240314.2789. 合并后数组中的最大元素 (medium) 从右到左,大鱼吃小鱼
- 20240315.2312. 卖木头块 (hard) 2d dp
- 20240316.2684. 矩阵中移动的最大次数 (medium) 2d dp
- 20240317.310. 最小高度树 (medium) bfs, deg=1叶子结点开始
- 20240318.303. 区域和检索 - 数组不可变 (easy) 前缀和
- 20240319.1793. 好子数组的最大分数 (hard) 中间划分开,贪心
- 20240320.1969. 数组元素的最小非零乘积 (medium) 数学贪心+快速幂(参考50pow(x,n))
- 20240321.2671. 频率跟踪器 (medium) 双哈希表
- 20240322.2617. 网格图中最少访问的格子数 (hard) hard双优先队列
- 20240323.2549. 统计桌面上的不同数字 (easy) 脑静急转弯
- 20240324.518. 零钱兑换 (medium) dp
- 20240325.518. 零钱兑换 II (medium) dp
- 20240326.2642. 设计可以求最短路径的图类 (hard) Dijkstra + 最小堆,bfs,dfs,图,最短路径,邻接表
- 20240327.2580. 统计将重叠区间合并成组的方案数 (medium) 合并m个大区间,2^m
- 20240328.1997. 访问完所有房间的第一天 (medium) 前缀和,递推公式
- 20240329.2908. 元素和最小的山形三元组 I (easy) 前后缀和
- 20240330.2952. 需要添加的硬币的最小数量 (medium) 贪心
- 20240331.331. 验证二叉树的前序序列化 (medium) 倒序遍历,替换
展开/折叠
- 20240401.2810. 故障键盘 (easy) simulation
- 20240402.894. 所有可能的真二叉树 (medium) recursion
- 20240403.1379. 找出克隆二叉树中的相同节点 (easy) Conditional (ternary) operator
- 20240404.2192. 有向无环图中一个节点的所有祖先 (medium) dfs
- 20240405.1026. 节点与其祖先之间的最大差值 (medium) bfs
- 20240406.1483. 树节点的第 K 个祖先 (hard) 存储
- 20240407.1600. 王位继承顺序 (medium) 多叉树dfs,注意传参用引用
- 20240408.2009. 使数组连续的最少操作数 (hard) n-(r-l+1)
- 20240409.2529. 正整数和负整数的最大计数 (easy) traversal
- 20240410.1702. 修改后的最大二进制字符串 (medium) 智力题,10→01表示1全部右移,00→10最后一位变0前面全1
- 20240411.1766. 互质树 (hard) 妙啊!50范围内找互质数
- 20240412.2923. 找到冠军 I (easy) 入度0
- 20240413.2924. 找到冠军 II (medium) 入度为0看看是不是只有一个
- 20240414.705. 设计哈希集合 (easy)
- 20240415.706. 设计哈希映射 (easy)
- 20240416.924. 尽量减少恶意软件的传播 (hard) dfs, union_find
- 20240417.928. 尽量减少恶意软件的传播 II (hard) dfs, union_find
- 20240418.2007. 从双倍数组中还原原数组 (medium)
- 20240419.1883. 准时抵达会议现场的最小跳过休息次数 (hard) 2d dp
- 20240420.39. 组合总和 (medium) backtracking
- 20240421.216. 组合总和 III (medium) backtracking
- 20240422.377. 组合总和 IV (medium) dp
- 20240423.1052. 爱生气的书店老板 (medium) sliding window
- 20240424.2385. 感染二叉树需要的总时间 (medium) dfs, bfs
- 20240425.2739. 总行驶距离 (easy) recursion, simulation
- 20240426.1146. 快照数组 (medium) 主程序 读取数据程序
- 20240427.2639. 查询网格图中每一列的宽度 (easy) simulation
- 20240428.1017. 负二进制转换 (medium) math
- 20240429.1329. 将矩阵按对角线排序 (medium) sort
- 20240430.2798. 满足目标工作时长的员工数目 (easy) traversal
展开/折叠
- 20240501.2462. 雇佣 K 位工人的总代价 (medium) priority_queue
- 20240502.857. 雇佣 K 名工人的最低成本 (hard) priority_queue 大顶堆
- 20240503.1491. 去掉最低工资和最高工资后的工资平均值 (easy) sort
- 20240504.1235. 规划兼职工作 (hard) dp, sort, binary_search
- 20240505.1652. 拆炸弹 (easy) simulation
- 20240506.741. 摘樱桃 (hard) 3d dp, 2 people, remove duplicates
- 20240507.1463. 摘樱桃II (hard) 3d dp, 2 people, remove duplicates, simulation, dfs
- 20240508.2079. 给植物浇水 (medium) simulation
- 20240509.2105. 给植物浇水II (medium) simulation
- 20240510.2960. 统计已测试设备 (easy) simulation
- 20240511.2391. 收集垃圾的最少总时间 (medium) iteration
- 20240512.1553. 吃掉 N 个橘子的最少天数 (hard) recursion, memorization
- 20240513.994. 腐烂的橘子 (medium) bfs
- 20240514.2244. 完成所有任务需要的最少轮数 (medium) classified discussion
- 20240515.2589. 完成所有任务的最少时间 (hard) sort, traverse
- 20240516.1953. 你可以工作的最大周数 (medium) math, 鸽巢原理
- 20240517.826. 安排工作以达到最大收益 (medium) sort, 贪心
- 20240518.2644. 找出可整除性得分最大的整数 (easy) 暴力枚举,排序优化,数学边界优化
- 20240519.1535. 找出数组游戏的赢家 (medium) 一次遍历即可
- 20240520.1542. 找出最长的超赞子字符串 (hard) 位运算,前缀和,状态压缩,哈希表,异或
- 20240521.2769. 找出最大的可达成数字 (easy) 简单数学
- 20240522.2225. 找出输掉零场或一场比赛的玩家 (medium) map
- 20240523.2831. 找出最长等值子数组 (medium) map
- 20240524.1673. 找出最具竞争力的子序列 (medium) monotone stack (small to large)
- 20240525.2903. 找出满足差值条件的下标 I (easy) 前缀,依次遍历
- 20240526.1738. 找出第 K 大的异或坐标值 (medium) 二位前缀和,快速选择算法
- 20240527.2028. 找出缺失的观测数据 (medium) 简单分配
- 20240528.2951. 找出峰值 (easy) 简单遍历
- 20240529.2981. 找出出现至少三次的最长特殊子字符串 I (medium) 降序排序
- 20240530.2982. 找出出现至少三次的最长特殊子字符串 II (medium) 降序排序
- 20240531.2965. 找出缺失和重复的数字 (easy) 简单遍历
展开/折叠
- 20240601.2928. 给小朋友们分糖果 I (easy) 简单2次遍历
- 20240602.575. 分糖果 (easy) set
- 20240603.1103. 分糖果 II (easy) 模拟,暴力
- 20240604.3067. 在带权树网络中统计可连接服务器对数目 (medium) 树,枚举,dfs,只看左边和 * 当前
- 20240605.3072. 将元素分配到两个数组中 II (hard) 2个树状数组,二分查找
- 20240606.2938. 区分黑球与白球 (medium) 贪心,模拟
- 20240607.3038. 相同分数的最大操作数目 I (easy) 模拟