(一)从现金找零理解什么是贪心思想
在以前移动支付不是很普及的时代,找零几乎天天伴随着我们的生活。假设你去商店买东西,需花费11元,而你是个小富翁,口袋里只有百元毛爷爷。售货员找零应该怎么找呢?找89张1元多好,都说不能把鸡蛋放在同一个篮子里嘛-.-。开个玩笑,售货员会先找一张50元,然后是一张20元,10元,5元,最后是4张1元,搞定。那为什么不找89张1元呢,那多费劲啊,找费劲,拿也费劲,虽说钱不嫌多,但也扛不住这么拿把。所以通常我们都是从面值相对大的开始找起,而这种找零思路就是贪心思想的一个体现。
(二)贪心算法的基本要素
(1)贪心选择性质
从上面的问题我们可以看出,贪心算法并不从整体最优上加以考虑,我们做的每一步只是某种意义上的局部最优选择,而这种策略依然能得到整体的最优解。那么我们怎么判断这种策略能100%的得到整体的最优解,换句话说,怎么样有可能用到贪心算法呢。这就要看贪心选择的一个重要要素了:贪心选择性质。
贪心选择性质是这样定义的:所求的问题可以通过一系列局部最优的选择(即贪心选择)来达到。
要想证明一个问题有贪心选择性质,可以考虑按照一下步骤执行。
(1)考虑证明一个问题的整体最优解有可修改性,如果具有可修改性的话,这个问题就有了贪心选择开始的条件。<