摘要: 贪心算法part1 理论基础 什么是贪心? 贪心的本质是选择每一阶段的最优解,从而达到全局最优 举例:有一堆钞票,可以拿走十张,如何达到最大金额?每次拿走最大的钞票 什么时候用贪心? 贪心算法没有固定套路,一般数学证明有以下两种方法 数学归纳法 反证法 最好用的策略是举反例 贪心有时就是常识性的推导 阅读全文
posted @ 2025-06-19 15:19 泡芙猪 阅读(0) 评论(0) 推荐(0)
摘要: 回溯算法part4 491. 非递减子序列 - 力扣(LeetCode) 如图所示,两个注意点 同一父节点下本层不可重复使用(for循环中) path中所取元素不能小于最后一个元素 所以之前的去重逻辑是 if(i > startIndex && nums[i] == nums[i - 1]){bre 阅读全文
posted @ 2025-06-18 22:25 泡芙猪 阅读(1) 评论(0) 推荐(0)
摘要: 回溯算法part3 93. 复原 IP 地址 - 力扣(LeetCode) 这题真的很难,要考虑的方面太多了 从回溯函数的三要素入手: 参数: Java中有StringBuilder,可以提升效率,所以 参数一:元字符串的sb格式 参数二:startIndex 参数三:这个我没想出来,就是逗点的数量 阅读全文
posted @ 2025-06-17 16:33 泡芙猪 阅读(1) 评论(0) 推荐(0)
摘要: 回溯算法part2 39. 组合总和 - 力扣(LeetCode) 本题中,回溯函数参数会使用startIndex,那么,这个参数应该何时有何时无呢? 如果是一个集合来求组合的话,就需要startIndex,例如:77.组合 (opens new window),216.组合总和III (opens 阅读全文
posted @ 2025-06-16 20:32 泡芙猪 阅读(1) 评论(0) 推荐(0)
摘要: 回溯算法part1 理论基础 为什么要用回溯法: 那么既然回溯法并不高效为什么还要用它呢? 因为没得选,一些问题能暴力搜出来就不错了,撑死了再剪枝一下,还没有更高效的解法。 回溯法解决的问题: 组合问题 切割问题 子集问题 排列问题 棋盘问题 如何理解: 回溯法解决的所有问题都可以抽象成树形结构(N 阅读全文
posted @ 2025-06-14 20:53 泡芙猪 阅读(2) 评论(0) 推荐(0)
摘要: 二叉树part8 669. 修剪二叉搜索树 - 力扣(LeetCode) 本题难在理解修剪的代码逻辑,我没理解😢 class Solution { public TreeNode trimBST(TreeNode root, int low, int high) { if(root == null 阅读全文
posted @ 2025-06-13 21:54 泡芙猪 阅读(1) 评论(0) 推荐(0)
摘要: 二叉树part7 235. 二叉搜索树的最近公共祖先 - 力扣(LeetCode) BST的性质让其做题很容易有思路 原话:而递归遍历顺序,本题就不涉及到 前中后序了(这里没有中节点的处理逻辑,遍历顺序无所谓了)。 class Solution { public TreeNode lowestCom 阅读全文
posted @ 2025-06-12 15:42 泡芙猪 阅读(2) 评论(0) 推荐(0)
摘要: 二叉树part6 530. 二叉搜索树的最小绝对差 - 力扣(LeetCode) 因为二叉搜索树BST中序遍历是升序序列,所以利用这个性质 class Solution { int diff = Integer.MAX_VALUE; TreeNode pre = null; public int g 阅读全文
posted @ 2025-06-11 16:43 泡芙猪 阅读(2) 评论(0) 推荐(0)
摘要: 二叉树part5 654. 最大二叉树 - 力扣(LeetCode) 从中序和后序遍历构造二叉树,以及本题,这类构造树的题目,都是用前序遍历,因为先构造节点,再递归构造左子树和右子树 终止条件,注意一个叶子节点,如果为叶子节点,直接返回就可以 class Solution { public Tree 阅读全文
posted @ 2025-06-10 18:22 泡芙猪 阅读(4) 评论(0) 推荐(0)
摘要: 二叉树part4 513. 找树左下角的值 - 力扣(LeetCode) 一眼层序遍历,最后一层的头val就是res class Solution { public int findBottomLeftValue(TreeNode root) { int res = 0; Queue<TreeNod 阅读全文
posted @ 2025-06-09 21:52 泡芙猪 阅读(3) 评论(0) 推荐(0)