会员
周边
新闻
博问
闪存
众包
赞助商
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
puff-pig
博客园
首页
新随笔
联系
订阅
管理
2025年6月26日
贪心算法part5
摘要: 贪心算法part5 56. 合并区间 - 力扣(LeetCode) 跟昨天做的题类似 注意一些小细节 /** 时间复杂度 : O(NlogN) 排序需要O(NlogN) 空间复杂度 : O(logN) java 的内置排序是快速排序 需要 O(logN)空间 */ class Solution {
阅读全文
posted @ 2025-06-26 17:50 泡芙猪
阅读(4)
评论(0)
推荐(0)
2025年6月25日
贪心算法part4
摘要: 贪心算法part4 452. 用最少数量的箭引爆气球 - 力扣(LeetCode) 意外的简单 我的思路: 首先将单个气球边界按右升序排序; 然后开始打气球,如果下个气球左边界在右边界之内,就一定能被上个气球涵盖; 如果涵盖,再重复打下一个气球,直到打不到 打不到了,开始新的打气球过程 class
阅读全文
posted @ 2025-06-25 22:48 泡芙猪
阅读(14)
评论(0)
推荐(0)
2025年6月24日
贪心算法part3
摘要: 贪心算法part3 134. 加油站 - 力扣(LeetCode) 总体思路: 如果gas[i]总和 > cost[i]总和, 不可能跑完, 直接返回-1 贪心: 新增一个rest数组, 计算当前的gas[i] - cost[i]总和, 如果总和小于0, 那么更新答案下标为i + 1 局部最优: 当
阅读全文
posted @ 2025-06-24 20:31 泡芙猪
阅读(17)
评论(0)
推荐(0)
2025年6月21日
贪心算法part2
摘要: 贪心算法part2 122. 买卖股票的最佳时机 II - 力扣(LeetCode) 画折线图,发现收集全部的上升曲线,就可以取得最大利润 贪心的想法是分解利润 比如第0天买入,第3天卖出,那么利润就是prices[3] - prices[0] 分解后就是(prices[3] - prices[2]
阅读全文
posted @ 2025-06-21 21:51 泡芙猪
阅读(10)
评论(0)
推荐(0)
2025年6月19日
贪心算法part1
摘要: 贪心算法part1 理论基础 什么是贪心? 贪心的本质是选择每一阶段的最优解,从而达到全局最优 举例:有一堆钞票,可以拿走十张,如何达到最大金额?每次拿走最大的钞票 什么时候用贪心? 贪心算法没有固定套路,一般数学证明有以下两种方法 数学归纳法 反证法 最好用的策略是举反例 贪心有时就是常识性的推导
阅读全文
posted @ 2025-06-19 15:19 泡芙猪
阅读(26)
评论(0)
推荐(0)
2025年6月18日
回溯算法part4
摘要: 回溯算法part4 491. 非递减子序列 - 力扣(LeetCode) 如图所示,两个注意点 同一父节点下本层不可重复使用(for循环中) path中所取元素不能小于最后一个元素 所以之前的去重逻辑是 if(i > startIndex && nums[i] == nums[i - 1]){bre
阅读全文
posted @ 2025-06-18 22:25 泡芙猪
阅读(3)
评论(0)
推荐(0)
2025年6月17日
回溯算法part3
摘要: 回溯算法part3 93. 复原 IP 地址 - 力扣(LeetCode) 这题真的很难,要考虑的方面太多了 从回溯函数的三要素入手: 参数: Java中有StringBuilder,可以提升效率,所以 参数一:元字符串的sb格式 参数二:startIndex 参数三:这个我没想出来,就是逗点的数量
阅读全文
posted @ 2025-06-17 16:33 泡芙猪
阅读(17)
评论(0)
推荐(0)
2025年6月16日
回溯算法part2
摘要: 回溯算法part2 39. 组合总和 - 力扣(LeetCode) 本题中,回溯函数参数会使用startIndex,那么,这个参数应该何时有何时无呢? 如果是一个集合来求组合的话,就需要startIndex,例如:77.组合 (opens new window),216.组合总和III (opens
阅读全文
posted @ 2025-06-16 20:32 泡芙猪
阅读(6)
评论(0)
推荐(0)
2025年6月14日
回溯算法part1
摘要: 回溯算法part1 理论基础 为什么要用回溯法: 那么既然回溯法并不高效为什么还要用它呢? 因为没得选,一些问题能暴力搜出来就不错了,撑死了再剪枝一下,还没有更高效的解法。 回溯法解决的问题: 组合问题 切割问题 子集问题 排列问题 棋盘问题 如何理解: 回溯法解决的所有问题都可以抽象成树形结构(N
阅读全文
posted @ 2025-06-14 20:53 泡芙猪
阅读(22)
评论(0)
推荐(0)
2025年6月13日
二叉树part8
摘要: 二叉树part8 669. 修剪二叉搜索树 - 力扣(LeetCode) 本题难在理解修剪的代码逻辑,我没理解😢 class Solution { public TreeNode trimBST(TreeNode root, int low, int high) { if(root == null
阅读全文
posted @ 2025-06-13 21:54 泡芙猪
阅读(13)
评论(0)
推荐(0)
下一页
公告