贪心算法(人民币、分糖果)

【0】目录

一、贪心算法存于生活中
1.1人民币支付问题
1.1.1算法思想
1.1.2程序实现
1.1.3程序结果
1、举个实例
二、分糖果 leetcode455
2.1举个实例
2.2贪心规律
2.3算法思路
2.4程序实现
2.5程序结果

一、贪心算法存于生活中

1、人民币支付问题
现在去超市买东西,结账时,要求支付一定金额的现金,那么,按照生活常识,我们肯定会选择尽可能少的拿出钱的张数去满足支付金额,比如说:应付628元,这时候,我的钱包里有足够多的以下面额的钱:100,50,20,10,5,2,1,那么,我肯定会拿出6张100块的,1张20的,1张5块的,1张2块的,最后再拿出1张1块的,6*100+20+5+2+1 = 628;那么我用10张就可以愉快的完成支付了,正常情况下,绝对不会拿628张1块的去支付或者其它。
那么,将这种思想体现在编程上,就是我们所称的贪心算法
贪心算法:遵循某种规律,不断贪心的选取当前最优策略的算法设计方法。
就上面的例子,体现在编程中如下:

猜你喜欢

转载自blog.csdn.net/dai_wen/article/details/81631704
今日推荐