LeetCode 543. 二叉树的直径 543. 二叉树的直径解题思路后序递归计算每个节点的左右子树最大深度之和作为经过该节点的路径长度,用全局变量维护最大值,同时向上返回较大子树深度加一 2026-02-08 LeetCode #树 #深度优先搜索 #二叉树
LeetCode 55. 跳跃游戏 55. 跳跃游戏解题思路“从后往前”思考 最后一个位置就是终点,问题转换为 倒数第二个位置能否到达终点? 从倒数第二个位置开始检查,逐步向前递推 如果最后目标位置变为0,那么从位置0到最后一个位置是可达的 2026-02-08 LeetCode #数组 #贪心 #动态规划
LeetCode 62. 不同路径 62. 不同路径解题思路 初始化,dp数组的第一行和第一列都为1,因为只能向右或向下移动 状态转移方程:dp[i][j] = dp[i - 1][j] + dp[i][j - 1],表示到达当前格子的路径数等于从上方格子和左方格子来的路径数之和 2026-02-08 LeetCode #动态规划 #数学 #组合数学
LeetCode 64. 最小路径和 64. 最小路径和解题思路 初始化,dp数组的第一行和第一列依此累加 状态转移方程:dp[i][j] = Math.min(dp[i - 1][j], dp[i][j - 1]) + grid[i][j],表示到达当前格子的最小路径和等于从上方格子和左方格子来的最小路径和之和加上当前格子的值 2026-02-08 LeetCode #数组 #动态规划 #矩阵
LeetCode 739. 每日温度 739. 每日温度解题思路使用单调栈(单调递减栈)来存储数组下标,栈中的下标对应的温度是递减的(从栈底到栈顶) 当前遍历的温度如果大于栈顶温度,说明找到了距离栈顶温度最近的下一个更高温度,此时就可以计算出距离栈顶温度最近的下一个更高温度出现的天数,并将结果存储在结果数组中。 如果当前温度不大于栈顶温度,则将当前温度的索引入栈,继续遍历下一个温度,保持栈的单调递减性质。 2026-02-08 LeetCode #数组 #栈 #单调栈