随笔分类 -  算法 / 贪心

摘要:738.单调递增的数字 题目链接:738. 单调递增的数字 - 力扣(LeetCode) 思路 将数字转换成字符数组形式,然后从后向前遍历,当遇到当前这个数大于后一个数的时候,这个数减一,他的后一个数赋为9,这也是贪心策略。 在代码实现上,可以设置一个start变量来记录需要变为 9 的起始位置。 阅读全文
posted @ 2023-03-09 22:40 颜欢兮 阅读(33) 评论(0) 推荐(0)
摘要:435. 无重叠区间 题目链接:435. 无重叠区间 - 力扣(LeetCode) 思路 这道题首先进行排序,使得相邻的区间紧挨在一起。按左边界或者右边界都可以。 其次定义一个变量result记录重叠的数目,当确定区间有重叠时,result++,同时取这两个区间右边界的最小的一个即可。 代码 按右边 阅读全文
posted @ 2023-03-08 19:29 颜欢兮 阅读(46) 评论(0) 推荐(0)
摘要:860.柠檬水找零 题目链接:860. 柠檬水找零 - 力扣(LeetCode) 思路 这道题有如下三种情况: 情况一:账单是5,直接收下。 情况二:账单是10,消耗一个5,增加一个10 情况三:账单是20,优先消耗一个10和一个5,如果不够,再消耗三个5 所以局部最优:遇到账单20,优先消耗美元1 阅读全文
posted @ 2023-03-07 19:12 颜欢兮 阅读(34) 评论(0) 推荐(0)
摘要:1005.K次取反后最大化的数组和 题目链接:1005. K 次取反后最大化的数组和 - 力扣(LeetCode) 思路 贪心思路,局部最优:让绝对值大的负数变为正数,当前数值达到最大,整体最优:整个数组和达到最大。 当数组中的负数全部取反后,K仍然大于0时,这时又是一个贪心:局部最优:只找数值最小 阅读全文
posted @ 2023-03-07 15:50 颜欢兮 阅读(14) 评论(0) 推荐(0)
摘要:把利润分解为每天为单位的维度,而不是从0天到第3天整体去考虑!122.买卖股票的最佳时机II 题目链接:122. 买卖股票的最佳时机 II - 力扣(LeetCode) 思路 这道题使用贪心算法思路为:把利润分解为每天为单位的维度,而不是从0天到第3天整体去考虑! 将数据画成折现图 根据图中可以很明 阅读全文
posted @ 2023-03-04 14:44 颜欢兮 阅读(36) 评论(0) 推荐(0)
摘要:455.分发饼干 题目链接:455. 分发饼干 - 力扣(LeetCode) 思路 这里的局部最优就是大饼干喂给胃口大的,充分利用饼干尺寸喂饱一个,全局最优就是喂饱尽可能多的小孩。 也可以换一个思路,小饼干先喂饱小胃口。 代码 1 class Solution { 2 // 思路1:优先考虑饼干,小 阅读全文
posted @ 2023-03-04 00:19 颜欢兮 阅读(30) 评论(0) 推荐(0)