算法之贪心思想

贪心算法是一种追求局部最优解的策略,它在每个步骤中选择当前看来最好的解决方案。这种方法虽然不能确保找到全局最优解,但在很多情况下可以得到接近最优的解,避免了全面枚举的耗时。文章探讨了贪心算法的优点,如效率高,但也指出其局限性,例如不能解决最大解和最小解问题,以及仅能求解可行解的范围。并通过找零钱问题为例,生动地展示了贪心算法在实际生活中的应用。
摘要由CSDN通过智能技术生成

这个贪心的行为在算法中也成为了一种指导思想,也就是说贪心算法所作出的选择在当时的环境下是最好的,说深一点就是它只是某种

意义上的局部最优解,但不一定是全局最优解,此时往往接近于最优解。

 

一: 优点

     前面也说了,贪心只是求的当前环境下的最优解,而不是追究整体的最优解,所以贪心就避免了为求的整体最优解而枚举各种方案所

耗费的时间。

 

二: 问题

     ① 不能保证贪心所得出的解是整体最优的。

     ② 不能用来求最大解和最小解问题。

     ③ 只能求满足某些约束条件的可行解的范围。

 

三: 案例

      其实说到贪心,基本上都会提到“背包问题”,这里我就举一个“找零钱的问题“,对的,找零钱问题是我们生活中一个活生生的贪心算法

的例子,比如我买了“康师傅来一桶方便面”,给了10两银子,方便面3.8两,那么收银mm该找我6.2两,现实中mm不自觉的就会用到贪心的行

为给我找最少张币,总不能我给mm一张,mm给我十几张,那样mm会心疼的。

此时mm提供的方案就是:5元1张,1元1张,2角1张。

复制代码
 1 using System;
2 using System.Collections.Generic;
3 using System.Linq;
4 using System.Text;
5
6 namespace Tanxin
7 {
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值