(自用)贪心算法

贪心算法
(每一步都是最优,从而导致全局最优)

1.分发饼干 先遍历饼干,再去看胃口
2.摆动序列  (---------不理解----------)
3.最大子序和  当之前的和变成负数就应该清空。换句话说 允许下一个数是负数,但是加上这个负数之后不能让sum小于0
4.买卖股票的最佳时机2  这里把利润拆分成每一天的利润,如果i+1>i,那么就可以赚。所以最后就变成了求数组中升序的大小总和。
5.跳跃游戏  每次更新最大可覆盖范围,如果可以覆盖到终点就true
6.k次取反后的最大化数组和   两次排序 第一次排序从小到大,优先把负的很大的变正。如果k还有剩余,那就再排一次,把最小的那个数反转,(这里应该只需要排一次)
7.加油站  很有趣的一题,把消耗和补充统合成油箱的剩余量,从头开始遍历,一旦残余量为0,那么从i+1开始重新计算。
8.分糖果 要考虑左右两边的情况,那么就先从左到右遍历一遍,只考虑左边的情况。再从右往左一遍。
9.柠檬水找零 这题之前写过,分情况讨论即可,收20元时优先给10元和5元
10.根据身高重建队列 (----难-----) 这里出现了vector的插入操作和sort的自定义操作。先根据身高从高到低排,然后根据k来插入。
11.用最少的弓箭射爆气球 很妙,这里理解的难点是要不断更新重叠部分的右边界,以便于下一个气球来判断是否还可以一起射爆
12.无重叠区间 与上面这题类似
13-end 贪心先暂时学到着,相比起回溯,贪心因为没有固定章法,对我来说太难了。多练多练
 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值