贪心算法(1)活动安排问题

本文详细介绍了贪心算法在解决活动选择问题中的应用,包括策略分析和Select算法的实现。通过归纳证明了贪心算法选择结束时间最早活动的策略能够找到最优解,从而确保了算法的正确性。
摘要由CSDN通过智能技术生成

贪心法证明:按步骤归纳活动选择
按规模归纳装在问题
交换论证最小延迟调度
得不到最优解的处理:找零钱的阐述化分析

活动选择问题:
限制:两个活动的进行时间不能重叠
策略1:开始早的优先(不是最优),将活动按照开始时间排序,挑选最优
在这里插入图片描述
很明显最优解是活动2和活动3,但活动1的执行时间太长,最优解成立活动1

策略2:占时间少的优先( 不是最优),计算活动占用时间,从小到大排序,挑选最优
在这里插入图片描述
活动2的执行时间最短,但选择活动2,活动1和活动3都无法选择

策略3:结束早的优先( 最优),将活动按结束时间从小到大排序,挑选最优
Select算法
输入:活动集S、活动开始时间s(i)、活动结束时间f(i),i=1,2,3…,n,f(1)<f(2)<…<f(n)
输出:A⊆S,A是被选中的活动集

  1. n←length(S)
  2. A←{1}
  3. j ←1
  4. for i←2 to n
  5.  if s(i) > f(i)
    
  • 0
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值