软件算法贪婪法

软件算法贪婪法贪婪法是一种不追求最优解,只希望得到较为满意解的方法

贪婪法一般可以快速得到满意的解,因为它省去了为找最优解要穷尽所有可能而必须耗费的大量时间

贪婪法常以当前情况为基础作最优选择,而不考虑各种可能的整体情况,所以贪婪法不要回溯

例如平时购物找钱时,为使找回的零钱的硬币数最少,不考虑找零钱的所有各种发表方案,而是从最大面值的币种开始,按递减的顺序考虑各币种,先尽量用大面值的币种,当不足大面值币种的金额时才去考虑下一种较小面值的币种

这就是在使用贪婪法

这种方法在这里总是最优,是因为银行对其发行的硬币种类和硬币面值的巧妙安排

如只有面值分别为1、5和11单位的硬币,而希望找回总额为15单位的硬币

按贪婪算法,应找1个11单位面值的硬币和4个1单位面值的硬币,共找回5个硬币

但最优的解应是3个5单位面值的硬币

以上内容由大学时代综合整理自互联网,实际情况请以官方资料为准。

相关