10 2023 档案

摘要:题目 70. 爬楼梯 简单 相关标签 记忆化搜索 数学 动态规划 假设你正在爬楼梯。需要 n 阶你才能到达楼顶。 每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢? 示例 1: 输入:n = 2 输出:2 解释:有两种方法可以爬到楼顶。 1. 1 阶 + 1 阶 2. 2 阶 示 阅读全文
posted @ 2023-10-31 10:00 lenyan~ 阅读(50) 评论(0) 推荐(0) 编辑
摘要:题目 509. 斐波那契数 简单 相关标签 递归 记忆化搜索 数学 动态规划 斐波那契数 (通常用 F(n) 表示)形成的序列称为 斐波那契数列 。该数列由 0 和 1 开始,后面的每一项数字都是前面两项数字的和。也就是: F(0) = 0,F(1) = 1 F(n) = F(n - 1) + F( 阅读全文
posted @ 2023-10-31 08:00 lenyan~ 阅读(13) 评论(0) 推荐(0) 编辑
摘要:题目 968. 监控二叉树 困难 相关标签 树 深度优先搜索 动态规划 二叉树 给定一个二叉树,我们在树的节点上安装摄像头。 节点上的每个摄影头都可以监视其父对象、自身及其直接子对象。 计算监控树的所有节点所需的最小摄像头数量。 示例 1: 输入:[0,0,null,0,0] 输出:1 解释:如图所 阅读全文
posted @ 2023-10-30 09:00 lenyan~ 阅读(15) 评论(0) 推荐(0) 编辑
摘要:题目 738. 单调递增的数字 中等 相关标签 贪心 数学 当且仅当每个相邻位数上的数字 x 和 y 满足 x <= y 时,我们称这个整数是单调递增的。 给定一个整数 n ,返回 小于或等于 n 的最大数字,且数字呈 单调递增 。 示例 1: 输入: n = 10 输出: 9 示例 2: 输入: 阅读全文
posted @ 2023-10-30 08:00 lenyan~ 阅读(19) 评论(0) 推荐(0) 编辑
摘要:题目 56. 合并区间 中等 相关标签 数组 排序 以数组 intervals 表示若干个区间的集合,其中单个区间为 intervals[i] = [starti, endi] 。请你合并所有重叠的区间,并返回 一个不重叠的区间数组,该数组需恰好覆盖输入中的所有区间 。 示例 1: 输入:inter 阅读全文
posted @ 2023-10-29 09:00 lenyan~ 阅读(20) 评论(0) 推荐(0) 编辑
摘要:题目 763. 划分字母区间 中等 相关标签 贪心 哈希表 双指针 字符串 给你一个字符串 s 。我们要把这个字符串划分为尽可能多的片段,同一字母最多出现在一个片段中。 注意,划分结果需要满足:将所有划分结果按顺序连接,得到的字符串仍然是 s 。 返回一个表示每个字符串片段的长度的列表。 示例 1: 阅读全文
posted @ 2023-10-29 08:00 lenyan~ 阅读(6) 评论(0) 推荐(0) 编辑
摘要:题目 通关【算法赛】https://www.lanqiao.cn/problems/5889/learning/?contest_id=145 问题描述 小蓝最近迷上了一款电玩游戏“蓝桥争霸”。这款游戏由很多关卡和副本组成,每一关可以抽象为一个节点,整个游戏的关卡可以抽象为一棵树形图,每一关会有一道 阅读全文
posted @ 2023-10-28 14:00 lenyan~ 阅读(21) 评论(0) 推荐(0) 编辑
摘要:题目 摆玩具【算法赛】https://www.lanqiao.cn/problems/5888/learning/?contest_id=145 问题描述 小蓝是一个热爱收集玩具的小伙子,他拥有 n 个不同的玩具。 这天,他把 n 个玩具按照高度顺序从矮到高摆放在了窗台上,然后,他希望将这些玩具分成 阅读全文
posted @ 2023-10-28 09:00 lenyan~ 阅读(25) 评论(0) 推荐(0) 编辑
摘要:题目 铺地板https://www.lanqiao.cn/problems/5887/learning/?contest_id=145 问题描述 小蓝家要装修了,小蓝爸爸买来了很多块(你可以理解为数量无限)2×32×3 规格的地砖,小蓝家的地板是 n×m 规格的,小蓝想问你,能否用这些 2×32×3 阅读全文
posted @ 2023-10-28 08:00 lenyan~ 阅读(64) 评论(0) 推荐(0) 编辑
摘要:题目 435. 无重叠区间 中等 相关标签 贪心 数组 动态规划 排序 给定一个区间的集合 intervals ,其中 intervals[i] = [starti, endi] 。返回 需要移除区间的最小数量,使剩余区间互不重叠 。 示例 1: 输入: intervals = [[1,2],[2, 阅读全文
posted @ 2023-10-27 15:00 lenyan~ 阅读(22) 评论(0) 推荐(0) 编辑
摘要:题目 452. 用最少数量的箭引爆气球 中等 相关标签 贪心 数组 排序 有一些球形气球贴在一堵用 XY 平面表示的墙面上。墙面上的气球记录在整数数组 points ,其中points[i] = [xstart, xend] 表示水平直径在 xstart 和 xend之间的气球。你不知道气球的确切 阅读全文
posted @ 2023-10-27 09:00 lenyan~ 阅读(29) 评论(0) 推荐(0) 编辑
摘要:题目 406. 根据身高重建队列 中等 相关标签 贪心 树状数组 线段树 数组 排序 假设有打乱顺序的一群人站成一个队列,数组 people 表示队列中一些人的属性(不一定按顺序)。每个 people[i] = [hi, ki] 表示第 i 个人的身高为 hi ,前面 正好 有 ki 个身高大于或等 阅读全文
posted @ 2023-10-27 08:00 lenyan~ 阅读(22) 评论(0) 推荐(0) 编辑
摘要:题目 860. 柠檬水找零 简单 相关标签 贪心 数组 在柠檬水摊上,每一杯柠檬水的售价为 5 美元。顾客排队购买你的产品,(按账单 bills 支付的顺序)一次购买一杯。 每位顾客只买一杯柠檬水,然后向你付 5 美元、10 美元或 20 美元。你必须给每个顾客正确找零,也就是说净交易是每位顾客向你 阅读全文
posted @ 2023-10-26 09:00 lenyan~ 阅读(15) 评论(0) 推荐(0) 编辑
摘要:题目 135. 分发糖果 困难 相关标签 贪心 数组 n 个孩子站成一排。给你一个整数数组 ratings 表示每个孩子的评分。 你需要按照以下要求,给这些孩子分发糖果: 每个孩子至少分配到 1 个糖果。相邻两个孩子评分更高的孩子会获得更多的糖果。 请你给每个孩子分发糖果,计算并返回需要准备的 最少 阅读全文
posted @ 2023-10-26 08:00 lenyan~ 阅读(76) 评论(0) 推荐(0) 编辑
摘要:题目 134. 加油站 中等 相关标签 贪心 数组 在一条环路上有 n 个加油站,其中第 i 个加油站有汽油 gas[i] 升。 你有一辆油箱容量无限的的汽车,从第 i 个加油站开往第 i+1 个加油站需要消耗汽油 cost[i] 升。你从其中的一个加油站出发,开始时油箱为空。 给定两个整数数组 g 阅读全文
posted @ 2023-10-25 09:00 lenyan~ 阅读(42) 评论(0) 推荐(0) 编辑
摘要:题目 1005. K 次取反后最大化的数组和 简单 相关标签 贪心 数组 排序 给你一个整数数组 nums 和一个整数 k ,按以下方法修改该数组: 选择某个下标 i 并将 nums[i] 替换为 -nums[i] 。 重复这个过程恰好 k 次。可以多次选择同一个下标 i 。 以这种方式修改数组后, 阅读全文
posted @ 2023-10-25 08:00 lenyan~ 阅读(9) 评论(0) 推荐(0) 编辑
摘要:题目 45. 跳跃游戏 II 中等 相关标签 贪心 数组 动态规划 给定一个长度为 n 的 0 索引整数数组 nums。初始位置为 nums[0]。 每个元素 nums[i] 表示从索引 i 向前跳转的最大长度。换句话说,如果你在 nums[i] 处,你可以跳转到任意 nums[i + j] 处: 阅读全文
posted @ 2023-10-24 09:00 lenyan~ 阅读(38) 评论(0) 推荐(0) 编辑
摘要:题目 55. 跳跃游戏 中等 相关标签 贪心 数组 动态规划 给你一个非负整数数组 nums ,你最初位于数组的 第一个下标 。数组中的每个元素代表你在该位置可以跳跃的最大长度。 判断你是否能够到达最后一个下标,如果可以,返回 true ;否则,返回 false 。 示例 1: 输入:nums = 阅读全文
posted @ 2023-10-24 08:00 lenyan~ 阅读(23) 评论(0) 推荐(0) 编辑
摘要:题目 121. 买卖股票的最佳时机 简单 相关标签 数组 动态规划 给定一个数组 prices ,它的第 i 个元素 prices[i] 表示一支给定股票第 i 天的价格。 你只能选择 某一天 买入这只股票,并选择在 未来的某一个不同的日子 卖出该股票。设计一个算法来计算你所能获取的最大利润。 返回 阅读全文
posted @ 2023-10-23 09:00 lenyan~ 阅读(19) 评论(0) 推荐(0) 编辑
摘要:题目 122. 买卖股票的最佳时机 II 中等 相关标签 给你一个整数数组 prices ,其中 prices[i] 表示某支股票第 i 天的价格。 在每一天,你可以决定是否购买和/或出售股票。你在任何时候 最多 只能持有 一股 股票。你也可以先购买,然后在 同一天 出售。 返回 你能获得的 最大  阅读全文
posted @ 2023-10-23 08:00 lenyan~ 阅读(4) 评论(0) 推荐(0) 编辑
摘要:题目 53. 最大子数组和 中等 相关标签 数组 分治 动态规划 给你一个整数数组 nums ,请你找出一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。 子数组 是数组中的一个连续部分。 示例 1: 输入:nums = [-2,1,-3,4,-1,2,1,-5,4] 输出:6 解 阅读全文
posted @ 2023-10-22 15:00 lenyan~ 阅读(3) 评论(0) 推荐(0) 编辑
摘要:题目 376. 摆动序列 中等 相关标签 贪心 数组 动态规划 如果连续数字之间的差严格地在正数和负数之间交替,则数字序列称为 摆动序列 。第一个差(如果存在的话)可能是正数或负数。仅有一个元素或者含两个不等元素的序列也视作摆动序列。 例如, [1, 7, 4, 9, 2, 5] 是一个 摆动序列  阅读全文
posted @ 2023-10-22 09:00 lenyan~ 阅读(13) 评论(0) 推荐(0) 编辑
摘要:题目 455. 分发饼干 简单 相关标签 贪心 数组 双指针 排序 假设你是一位很棒的家长,想要给你的孩子们一些小饼干。但是,每个孩子最多只能给一块饼干。 对每个孩子 i,都有一个胃口值 g[i],这是能让孩子们满足胃口的饼干的最小尺寸;并且每块饼干 j,都有一个尺寸 s[j] 。如果 s[j] > 阅读全文
posted @ 2023-10-22 08:00 lenyan~ 阅读(35) 评论(0) 推荐(0) 编辑
摘要:题目 37. 解数独 困难 相关标签 数组 哈希表 回溯 矩阵 编写一个程序,通过填充空格来解决数独问题。 数独的解法需 遵循如下规则: 数字 1-9 在每一行只能出现一次。数字 1-9 在每一列只能出现一次。数字 1-9 在每一个以粗实线分隔的 3x3 宫内只能出现一次。(请参考示例图) 数独部分 阅读全文
posted @ 2023-10-21 10:00 lenyan~ 阅读(11) 评论(0) 推荐(0) 编辑
摘要:题目 51. N 皇后 困难 相关标签 数组 回溯 按照国际象棋的规则,皇后可以攻击与之处在同一行或同一列或同一斜线上的棋子。 n 皇后问题 研究的是如何将 n 个皇后放置在 n×n 的棋盘上,并且使皇后彼此之间不能相互攻击。 给你一个整数 n ,返回所有不同的 n 皇后问题 的解决方案。 每一种解 阅读全文
posted @ 2023-10-21 08:00 lenyan~ 阅读(11) 评论(0) 推荐(0) 编辑
摘要:题目 332. 重新安排行程 困难 相关标签 深度优先搜索 图 欧回路 给你一份航线列表 tickets ,其中 tickets[i] = [fromi, toi] 表示飞机出发和降落的机场地点。请你对该行程进行重新规划排序。 所有这些机票都属于一个从 JFK(肯尼迪国际机场)出发的先生,所以该行程 阅读全文
posted @ 2023-10-20 16:00 lenyan~ 阅读(11) 评论(0) 推荐(0) 编辑
摘要:题目 47. 全排列 II 中等 相关标签 数组 回溯 给定一个可包含重复数字的序列 nums ,按任意顺序 返回所有不重复的全排列。 示例 1: 输入:nums = [1,1,2] 输出: [[1,1,2], [1,2,1], [2,1,1]] 示例 2: 输入:nums = [1,2,3] 输出 阅读全文
posted @ 2023-10-20 09:00 lenyan~ 阅读(53) 评论(0) 推荐(0) 编辑
摘要:题目 46. 全排列 中等 相关标签 数组 回溯 给定一个不含重复数字的数组 nums ,返回其 所有可能的全排列 。你可以 按任意顺序 返回答案。 示例 1: 输入:nums = [1,2,3] 输出:[[1,2,3],[1,3,2],[2,1,3],[2,3,1],[3,1,2],[3,2,1] 阅读全文
posted @ 2023-10-20 08:00 lenyan~ 阅读(54) 评论(0) 推荐(0) 编辑
摘要:题目 491. 递增子序列 中等 相关标签 位运算 数组 哈希表 回溯 给你一个整数数组 nums ,找出并返回所有该数组中不同的递增子序列,递增子序列中 至少有两个元素 。你可以按 任意顺序 返回答案。 数组中可能含有重复元素,如出现两个整数相等,也可以视作递增序列的一种特殊情况。 示例 1: 输 阅读全文
posted @ 2023-10-19 15:00 lenyan~ 阅读(12) 评论(0) 推荐(0) 编辑
摘要:题目 90. 子集 II 中等 相关标签 位运算 数组 回溯 给你一个整数数组 nums ,其中可能包含重复元素,请你返回该数组所有可能的子集(幂集)。 解集 不能 包含重复的子集。返回的解集中,子集可以按 任意顺序 排列。 示例 1: 输入:nums = [1,2,2] 输出:[[],[1],[1 阅读全文
posted @ 2023-10-19 09:00 lenyan~ 阅读(16) 评论(0) 推荐(0) 编辑
摘要:题目 78. 子集 中等 (简单题O~O) 相关标签 位运算 数组 回溯 给你一个整数数组 nums ,数组中的元素 互不相同 。返回该数组所有可能的子集(幂集)。 解集 不能 包含重复的子集。你可以按 任意顺序 返回解集。 示例 1: 输入:nums = [1,2,3] 输出:[[],[1],[2 阅读全文
posted @ 2023-10-19 08:00 lenyan~ 阅读(8) 评论(0) 推荐(0) 编辑
摘要:题目 93. 复原 IP 地址 中等 相关标签 字符串 回溯 有效 IP 地址 正好由四个整数(每个整数位于 0 到 255 之间组成,且不能含有前导 0),整数之间用 '.' 分隔。 例如:"0.1.2.201" 和 "192.168.1.1" 是 有效 IP 地址,但是 "0.011.255.2 阅读全文
posted @ 2023-10-18 09:00 lenyan~ 阅读(21) 评论(0) 推荐(0) 编辑
摘要:题目 131. 分割回文串 中等 相关标签 字符串 动态规划 回溯 给你一个字符串 s,请你将 s 分割成一些子串,使每个子串都是 回文串 。返回 s 所有可能的分割方案。 回文串 是正着读和反着读都一样的字符串。 示例 1: 输入:s = "aab" 输出:[["a","a","b"],["aa" 阅读全文
posted @ 2023-10-18 08:00 lenyan~ 阅读(44) 评论(0) 推荐(0) 编辑
摘要:题目 40. 组合总和 II 中等 相关标签 数组 回溯 给定一个候选人编号的集合 candidates 和一个目标数 target ,找出 candidates 中所有可以使数字和为 target 的组合。 candidates 中的每个数字在每个组合中只能使用 一次 。 注意:解集不能包含重复的 阅读全文
posted @ 2023-10-18 08:00 lenyan~ 阅读(12) 评论(0) 推荐(0) 编辑
摘要:题目 39. 组合总和 中等 相关标签 数组 回溯 给你一个 无重复元素 的整数数组 candidates 和一个目标整数 target ,找出 candidates 中可以使数字和为目标数 target 的 所有 不同组合 ,并以列表形式返回。你可以按 任意顺序 返回这些组合。 candidate 阅读全文
posted @ 2023-10-17 09:00 lenyan~ 阅读(9) 评论(0) 推荐(0) 编辑
摘要:题目 17. 电话号码的字母组合 中等 相关标签 哈希表 字符串 回溯 给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合。答案可以按 任意顺序 返回。 给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。 示例 1: 输入:digits = "23" 输出:["ad 阅读全文
posted @ 2023-10-17 08:00 lenyan~ 阅读(33) 评论(0) 推荐(0) 编辑
摘要:题目 216. 组合总和 III 中等 相关标签 数组 回溯 找出所有相加之和为 n 的 k 个数的组合,且满足下列条件: 只使用数字1到9每个数字 最多使用一次 返回 所有可能的有效组合的列表 。该列表不能包含相同的组合两次,组合可以以任何顺序返回。 示例 1: 输入: k = 3, n = 7 阅读全文
posted @ 2023-10-16 09:00 lenyan~ 阅读(15) 评论(0) 推荐(0) 编辑
摘要:题目 77. 组合 中等 相关标签 回溯 给定两个整数 n 和 k,返回范围 [1, n] 中所有可能的 k 个数的组合。 你可以按 任何顺序 返回答案。 示例 1: 输入:n = 4, k = 2 输出: [ [2,4], [3,4], [2,3], [1,2], [1,3], [1,4], ] 阅读全文
posted @ 2023-10-16 08:00 lenyan~ 阅读(20) 评论(0) 推荐(0) 编辑
摘要:题目 分组【算法赛】 难度: 中等 问题描述 蓝桥小学要进行弹弹球游戏,二年级一班总共有 n 个同学,要求分成 k 个队伍,由于弹弹球游戏要求队员的身高差不能太大,小蓝是班长,他对这个事情正在发愁,他想问你,如何最小化每个组之间的身高极差。 具体的,假设分成了 k 个组,第 i 组最高的人身高是 H 阅读全文
posted @ 2023-10-15 15:00 lenyan~ 阅读(28) 评论(0) 推荐(0) 编辑
摘要:题目 数树数【算法赛】https://www.lanqiao.cn/problems/5128/learning/?contest_id=144 难度: 中等 问题描述 小蓝最近学了二叉树,他想到了一个问题。 给定一个层数为 n 的满二叉树,每个点编号规则如下: 具体来说,二叉树从上向下数第 p 层 阅读全文
posted @ 2023-10-15 09:00 lenyan~ 阅读(13) 评论(0) 推荐(0) 编辑
摘要:题目 538. 把二叉搜索树转换为累加树 中等 相关标签 树 深度优先搜索 二叉搜索树 二叉树 给出二叉 搜索 树的根节点,该树的节点值各不相同,请你将其转换为累加树(Greater Sum Tree),使每个节点 node 的新值等于原树中大于或等于 node.val 的值之和。 提醒一下,二叉搜 阅读全文
posted @ 2023-10-15 08:00 lenyan~ 阅读(2) 评论(0) 推荐(0) 编辑
摘要:题目 三带一【算法赛】https://www.lanqiao.cn/problems/5127/learning/?contest_id=144 问题描述 小蓝和小桥玩斗地主,小蓝只剩四张牌了,他想知道是否是“三带一”牌型。 所谓“三带一”牌型,即四张手牌中,有三张牌一样,另外一张不与其他牌相同,换 阅读全文
posted @ 2023-10-15 08:00 lenyan~ 阅读(36) 评论(0) 推荐(0) 编辑
摘要:题目 108. 将有序数组转换为二叉搜索树 简单 相关标签 树 二叉搜索树 数组 分治 二叉树 给你一个整数数组 nums ,其中元素已经按 升序 排列,请你将其转换为一棵 高度平衡 二叉搜索树。 高度平衡 二叉树是一棵满足「每个节点的左右两个子树的高度差的绝对值不超过 1 」的二叉树。 示例 1: 阅读全文
posted @ 2023-10-14 15:00 lenyan~ 阅读(13) 评论(0) 推荐(0) 编辑
摘要:题目 669. 修剪二叉搜索树 中等 相关标签 树 深度优先搜索 二叉搜索树 二叉树 给你二叉搜索树的根节点 root ,同时给定最小边界low 和最大边界 high。通过修剪二叉搜索树,使得所有节点的值在[low, high]中。修剪树 不应该 改变保留在树中的元素的相对结构 (即,如果没有被移除 阅读全文
posted @ 2023-10-14 08:00 lenyan~ 阅读(8) 评论(0) 推荐(0) 编辑
摘要:题目 450. 删除二叉搜索树中的节点 中等 相关标签 树 二叉搜索树 二叉树 给定一个二叉搜索树的根节点 root 和一个值 key,删除二叉搜索树中的 key 对应的节点,并保证二叉搜索树的性质不变。返回二叉搜索树(有可能被更新)的根节点的引用。 一般来说,删除节点可分为两个步骤: 首先找到需要 阅读全文
posted @ 2023-10-13 17:00 lenyan~ 阅读(4) 评论(0) 推荐(0) 编辑
摘要:题目 701. 二叉搜索树中的插入操作 中等 相关标签 树 二叉搜索树 二叉树 给定二叉搜索树(BST)的根节点 root 和要插入树中的值 value ,将值插入二叉搜索树。 返回插入后二叉搜索树的根节点。 输入数据 保证 ,新值和原始二叉搜索树中的任意节点值都不同。 注意,可能存在多种有效的插入 阅读全文
posted @ 2023-10-13 09:00 lenyan~ 阅读(3) 评论(0) 推荐(0) 编辑
摘要:题目 235. 二叉搜索树的最近公共祖先 中等 (简单) 相关标签 树 深度优先搜索 二叉搜索树 二叉树 给定一个二叉搜索树, 找到该树中两个指定节点的最近公共祖先。 百度百科中最近公共祖先的定义为:“对于有根树 T 的两个结点 p、q,最近公共祖先表示为一个结点 x,满足 x 是 p、q 的祖先且 阅读全文
posted @ 2023-10-13 08:00 lenyan~ 阅读(3) 评论(0) 推荐(0) 编辑
摘要:题目 236. 二叉树的最近公共祖先 中等 相关标签 树 深度优先搜索 二叉树 给定一个二叉树, 找到该树中两个指定节点的最近公共祖先。 百度百科中最近公共祖先的定义为:“对于有根树 T 的两个节点 p、q,最近公共祖先表示为一个节点 x,满足 x 是 p、q 的祖先且 x 的深度尽可能大(一个节点 阅读全文
posted @ 2023-10-12 17:00 lenyan~ 阅读(45) 评论(0) 推荐(0) 编辑
摘要:题目 501. 二叉搜索树中的众数 简单 相关标签 树 深度优先搜索 二叉搜索树 二叉树 给你一个含重复值的二叉搜索树(BST)的根节点 root ,找出并返回 BST 中的所有 众数(即,出现频率最高的元素)。 如果树中有不止一个众数,可以按 任意顺序 返回。 假定 BST 满足如下定义: 结点左 阅读全文
posted @ 2023-10-12 09:00 lenyan~ 阅读(14) 评论(0) 推荐(0) 编辑
摘要:题目 530. 二叉搜索树的最小绝对差 783. 二叉搜索树节点最小距离 简单 相关标签 树 深度优先搜索 二叉搜索树 二叉树 给你一个二叉搜索树的根节点 root ,返回 树中任意两不同节点值之间的最小差值 。 差值是一个正数,其数值等于两值之差的绝对值。 简单 相关标签 给你一个二叉搜索树的根节 阅读全文
posted @ 2023-10-12 08:00 lenyan~ 阅读(5) 评论(0) 推荐(0) 编辑
摘要:题目 98. 验证二叉搜索树 中等 相关标签 树 深度优先搜索 二叉搜索树 二叉树 给你一个二叉树的根节点 root ,判断其是否是一个有效的二叉搜索树。 有效 二叉搜索树定义如下: 节点的左子树只包含 小于 当前节点的数。节点的右子树只包含 大于 当前节点的数。所有左子树和右子树自身必须也是二叉搜 阅读全文
posted @ 2023-10-11 17:00 lenyan~ 阅读(7) 评论(0) 推荐(0) 编辑
摘要:题目 617. 合并二叉树 简单 相关标签 树 深度优先搜索 广度优先搜索 二叉树 给你两棵二叉树: root1 和 root2 。 想象一下,当你将其中一棵覆盖到另一棵之上时,两棵树上的一些节点将会重叠(而另一些不会)。你需要将这两棵树合并成一棵新二叉树。合并的规则是:如果两个节点重叠,那么将这两 阅读全文
posted @ 2023-10-11 08:00 lenyan~ 阅读(6) 评论(0) 推荐(0) 编辑
摘要:题目 700. 二叉搜索树中的搜索 简单 相关标签 树 二叉搜索树 二叉树 给定二叉搜索树(BST)的根节点 root 和一个整数值 val。 你需要在 BST 中找到节点值等于 val 的节点。 返回以该节点为根的子树。 如果节点不存在,则返回 null 。 示例 1: 输入:root = [4, 阅读全文
posted @ 2023-10-11 08:00 lenyan~ 阅读(2) 评论(0) 推荐(0) 编辑
摘要:题目 654. 最大二叉树 中等 相关标签 栈 树 数组 分治 二叉树 单调栈 给定一个不重复的整数数组 nums 。 最大二叉树 可以用下面的算法从 nums 递归地构建: 创建一个根节点,其值为 nums 中的最大值。递归地在最大值 左边 的 子数组前缀上 构建左子树。递归地在最大值 右边 的  阅读全文
posted @ 2023-10-10 12:00 lenyan~ 阅读(40) 评论(0) 推荐(0) 编辑
摘要:题目 113. 路径总和 II 中等 给你二叉树的根节点 root 和一个整数目标和 targetSum ,找出所有 从根节点到叶子节点 路径总和等于给定目标和的路径。 叶子节点 是指没有子节点的节点。 示例 1: 输入:root = [5,4,8,11,null,13,4,7,2,null,nul 阅读全文
posted @ 2023-10-10 09:00 lenyan~ 阅读(8) 评论(0) 推荐(0) 编辑
摘要:题目 112. 路径总和 简单 给你二叉树的根节点 root 和一个表示目标和的整数 targetSum 。判断该树中是否存在 根节点到叶子节点 的路径,这条路径上所有节点值相加等于目标和 targetSum 。如果存在,返回 true ;否则,返回 false 。 叶子节点 是指没有子节点的节点。 阅读全文
posted @ 2023-10-10 08:00 lenyan~ 阅读(19) 评论(0) 推荐(0) 编辑
摘要:题目 105. 从前序与中序遍历序列构造二叉树 中等 相关标签 树 数组 哈希表 分治 二叉树 给定两个整数数组 preorder 和 inorder ,其中 preorder 是二叉树的先序遍历, inorder 是同一棵树的中序遍历,请构造二叉树并返回其根节点。 示例 1: 输入: preord 阅读全文
posted @ 2023-10-10 08:00 lenyan~ 阅读(18) 评论(0) 推荐(0) 编辑
摘要:题目 106. 从中序与后序遍历序列构造二叉树 中等 相关标签 树 数组 哈希表 分治 二叉树 给定两个整数数组 inorder 和 postorder ,其中 inorder 是二叉树的中序遍历, postorder 是同一棵树的后序遍历,请你构造并返回这颗 二叉树 。 示例 1: 输入:inor 阅读全文
posted @ 2023-10-10 08:00 lenyan~ 阅读(12) 评论(0) 推荐(0) 编辑
摘要:题目 513. 找树左下角的值 中等 给定一个二叉树的 根节点 root,请找出该二叉树的 最底层 最左边 节点的值。 假设二叉树中至少有一个节点。 示例 1: 输入: root = [2,1,3] 输出: 1 示例 2: 输入: [1,2,3,4,null,5,6,null,null,7] 输出: 阅读全文
posted @ 2023-10-09 09:00 lenyan~ 阅读(5) 评论(0) 推荐(0) 编辑
摘要:题目 404. 左叶子之和 简单 给定二叉树的根节点 root ,返回所有左叶子之和。 示例 1: 输入: root = [3,9,20,null,null,15,7] 输出: 24 解释: 在这个二叉树中,有两个左叶子,分别是 9 和 15,所以返回 24 示例 2: 输入: root = [1] 阅读全文
posted @ 2023-10-09 08:00 lenyan~ 阅读(8) 评论(0) 推荐(0) 编辑
摘要:题目 257. 二叉树的所有路径 简单 给你一个二叉树的根节点 root ,按 任意顺序 ,返回所有从根节点到叶子节点的路径。 叶子节点 是指没有子节点的节点。 示例 1: 输入:root = [1,2,3,null,5] 输出:["1->2->5","1->3"] 示例 2: 输入:root = 阅读全文
posted @ 2023-10-08 15:00 lenyan~ 阅读(17) 评论(0) 推荐(0) 编辑
摘要:题目 110. 平衡二叉树 简单 给定一个二叉树,判断它是否是高度平衡的二叉树。 本题中,一棵高度平衡二叉树定义为: 一个二叉树每个节点 的左右两个子树的高度差的绝对值不超过 1 。 示例 1: 输入:root = [3,9,20,null,null,15,7] 输出:true 示例 2: 输入:r 阅读全文
posted @ 2023-10-08 08:00 lenyan~ 阅读(10) 评论(0) 推荐(0) 编辑
摘要:题目 572. 另一棵树的子树 简单 给你两棵二叉树 root 和 subRoot 。检验 root 中是否包含和 subRoot 具有相同结构和节点值的子树。如果存在,返回 true ;否则,返回 false 。 二叉树 tree 的一棵子树包括 tree 的某个节点和这个节点的所有后代节点。tr 阅读全文
posted @ 2023-10-07 17:00 lenyan~ 阅读(17) 评论(0) 推荐(0) 编辑
摘要:题目 100. 相同的树 简单 给你两棵二叉树的根节点 p 和 q ,编写一个函数来检验这两棵树是否相同。 如果两个树在结构上相同,并且节点具有相同的值,则认为它们是相同的。 示例 1: 输入:p = [1,2,3], q = [1,2,3] 输出:true 示例 2: 输入:p = [1,2], 阅读全文
posted @ 2023-10-07 09:00 lenyan~ 阅读(31) 评论(0) 推荐(0) 编辑
摘要:题目 101. 对称二叉树 简单 给你一个二叉树的根节点 root , 检查它是否轴对称。 示例 1: 输入:root = [1,2,2,3,4,4,3] 输出:true 示例 2: 输入:root = [1,2,2,null,3,null,3] 输出:false 提示: 树中节点数目在范围 [1, 阅读全文
posted @ 2023-10-07 08:00 lenyan~ 阅读(18) 评论(0) 推荐(0) 编辑
摘要:题目 226. 翻转二叉树 简单 给你一棵二叉树的根节点 root ,翻转这棵二叉树,并返回其根节点。 示例 1: 输入:root = [4,2,7,1,3,6,9] 输出:[4,7,2,9,6,3,1] 示例 2: 输入:root = [2,1,3] 输出:[2,3,1] 示例 3: 输入:roo 阅读全文
posted @ 2023-10-06 08:00 lenyan~ 阅读(20) 评论(0) 推荐(0) 编辑
摘要:题目 102. 二叉树的层序遍历 中等 给你二叉树的根节点 root ,返回其节点值的 层序遍历 。 (即逐层地,从左到右访问所有节点)。 示例 1: 输入:root = [3,9,20,null,null,15,7] 输出:[[3],[9,20],[15,7]] 示例 2: 输入:root = [ 阅读全文
posted @ 2023-10-05 08:00 lenyan~ 阅读(20) 评论(0) 推荐(0) 编辑
摘要:题目 347. 前 K 个高频元素 中等 相关标签 数组 哈希表 分治 桶排序 计数 快速选择 排序 堆(优先队列) 给你一个整数数组 nums 和一个整数 k ,请你返回其中出现频率前 k 高的元素。你可以按 任意顺序 返回答案。 示例 1: 输入: nums = [1,1,1,2,2,3], k 阅读全文
posted @ 2023-10-04 08:00 lenyan~ 阅读(60) 评论(0) 推荐(0) 编辑
摘要:题目 239. 滑动窗口最大值 困难 提示 队列 数组 滑动窗口 单调队列 堆(优先队列) 给你一个整数数组 nums,有一个大小为 k 的滑动窗口从数组的最左侧移动到数组的最右侧。你只可以看到在滑动窗口内的 k 个数字。滑动窗口每次只向右移动一位。 返回 滑动窗口中的最大值 。 示例 1: 输入: 阅读全文
posted @ 2023-10-03 08:00 lenyan~ 阅读(23) 评论(0) 推荐(0) 编辑
摘要:题目 150. 逆波兰表达式求值 中等 给你一个字符串数组 tokens ,表示一个根据 逆波兰表示法 表示的算术表达式。 请你计算该表达式。返回一个表示表达式值的整数。 注意: 有效的算符为 '+'、'-'、'*' 和 '/' 。每个操作数(运算对象)都可以是一个整数或者另一个表达式。两个整数之间 阅读全文
posted @ 2023-10-02 08:00 lenyan~ 阅读(18) 评论(0) 推荐(0) 编辑
摘要:题目 1047. 删除字符串中的所有相邻重复项 简单 给出由小写字母组成的字符串 S,重复项删除操作会选择两个相邻且相同的字母,并删除它们。 在 S 上反复执行重复项删除操作,直到无法继续删除。 在完成所有重复项删除操作后返回最终的字符串。答案保证唯一。 示例: 输入:"abbaca" 输出:"ca 阅读全文
posted @ 2023-10-01 08:00 lenyan~ 阅读(32) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示