算法设计与分析:贪心算法思想的应用

第1关:删除数字问题

任务描述
本关任务:掌握贪心算法的算法思想,并能利用贪心算法的算法思想解决删除数字问题。

给定n个纯数字组成的数字串,删除其中k(k<n)个数字后,剩下的数字按原来的秩序组成一个新的正整数,确定删除方案,使得剩下的数字组成的新的正整数最大。

相关知识
为了完成本关任务,你需要掌握:1.贪心算法的基本概念,2.贪心算法的基本思路步骤,3.删除数字问题求解思路。

贪心算法的基本概念
贪心算法又称之为贪婪算法,指的是在求解问题时,总是选择当前最好结果的方案,而不从整体考虑最优解法。贪心算法的两个基本要素分别是贪心选择和最优子结构。

贪心选择:求解问题的整体最优解可以通过一系列的局部最优的选择来实现,即贪心选择。
最优子结构:一个问题的最优解包含其子问题的最优解,称此问题具备最优子结构性质。
贪心算法的基本概念如下:

贪心算法是一种着眼局部的简单而适应范围有限的优化策略。
贪心算法在求解最优化问题时,从初始阶段开始,每一个阶段总是做一个使局部最优的贪心选择,不断把将问题转化为规模更小的子问题。也就是说贪心算法并不从整体最优考虑,每一阶段所做出的选择只是着眼于局部最优的选择。这样处理,对有些问题来说也能得到最优解,但也并不总是这样。
贪心选择性质:所谓贪心选择性质是指所求问题的整体最优解可以通过一系列局部最优的选择,即贪心选择来达到。这是一问题可用贪心算法求解的前提,也是贪心算法与动态规划算法的主要区别。
对于一个具体问题,要确定它是否具有贪心选择性质,必须证明每一步所作的贪心选择最终能达到问题的整体最优。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Ssaty.

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值