贪心算法总结

第一套题主要用贪心算法来解决问题,贪心算法简单来说就是从局部最优解,进而求得整体最优解,其中难点就是选择贪心标准,贪心标准的选择选的巧妙问题就会变的很简单,比如第一题搬桌子的题,就是把房间转化为对应的走廊号,问题就简化了很多。

贪心算法的题目有的可以很简单的看出来,常见典型的题有,背包问题,最优装载问题,活动安排问题(例如Problem E,就是安排节目顺序),还有钓鱼问题(真的很难=_=||)。

例如Problem R是典型的装载问题,其实一开始就是跟着感觉写代码,把所有情况模拟出来就行了,把每个盒子都填满就行了呗,写完之后感觉太low了,没什么技术含量,就去看看网上大牛写的,没想到,我这种方法就是贪心,贪心标准就是把盒子填满,其实贪心顾名思义,就是每次都贪心求得问题最优解,那么到最后就是最优解。

有的题目很难看出是贪心题目,或者贪心标准很难去选择,这时候就需要,将问题转化,例如Problem L,就是将点转化为坐标上的线段,进而转化成类似活动的安排问题,还有

Problem F,虽然题目看起来是两个问题,第一问花的纸币数最少,第二问花的纸币数最多,其实第二个问题换一种表述方式就是,剩的纸币最少,这样两个问题成了纸币最少的问题,只需要同一个贪心标准就可以了。

总之贪心标准的选择是重点与难点,问题的转化能力需要多多看一些经典例题,并汲取其中巧妙的思想才可以。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值