贪心问题总结

本文介绍了贪心算法解决的经典问题,包括线段覆盖、区间选点、区间覆盖等,并探讨了活动安排、背包问题、最优装载问题等多种贪心策略的应用场景及解题思路。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1) 区间贪心

一、线段覆盖

n个开区间(ai,bi),选择尽量多个区间,使得这些区间两两不相交

右端点排序(<)兼顾左端点(>),再从左到右遇到不相交的就选

二、区间选点

n个闭区间[ai,bi],选择尽量少的点,使得每个区间至少有一个点

右端点排序(<)兼顾左端点(>),每次选择可选区间的最后一个点

三、区间覆盖

数轴上有n个闭区间[ai,bi],选择尽量少的区间覆盖一条指定的线段[s,t]

左端点排序(<)兼顾右端点(<),每次选择从当前起点能覆盖到的最长的区间

2) 其他贪心问题

1:活动安排问题 这种问题可以用结束时间排序,然后不断拿后一次的开始时间比较,循环,最大利用时间

2,:背包问题 背包问题不能单纯的考虑一方面,重量或是价格,应用一个词“性价比”来装包,从性价比最高的开始,一直装到不能再装为止,如果能分割,那么可以最大利用空间!!

3:最优装载问题 这个和背包问题差不多,甚至还简单,就不说了。。

4:多次服务最优次序问题:这种类型还是比较简单的,首先排好序,然后两个窗口依次取,谁完成就取,从小的开始 (如ZJOI2007 午餐).

5:桌子移动问题:其实这个可以把桌子数除以二,然后可以把数组值为零,依次输入数据,从谁那通过就加一,依次累加即可。。

转载于:https://www.cnblogs.com/Kv-Stalin/p/9215115.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值