算法设计方法之贪心算法

贪心算法

介绍

贪心算法是算法设计的一种方法。期盼通过每个阶段的局部最优选择,从而达到全局的最优。但结果不一定是最优的。

基础案例

场景一

零钱兑换

现有硬币 1 元、2 元、5 元,需要用最少的硬币数量凑够 11 元。

利用贪心算法实现,优先考虑最好的结果就是面值为 5 元的硬币,11 = 5 + 5 + 1,一共使用了三枚硬币。

现有硬币 1 元、3 元、4 元,需要用最少的硬币数量凑够 5 元。

利用贪心算法实现,优先考虑最好的结果就是面值为 4 元的硬币,6 = 4 + 1 + 1,一共用了三枚硬币,虽然结果是对的,但是并不是最优的,因为用两枚 3 元硬币才是最优。

原文链接:菜园前端

你可能感兴趣的:(算法,贪心算法,javascript,前端)