贪心算法——C++实现经典案例——初级

贪心算法——C++实现经典案例——初级最简单的钱币找零问题 这个问题在我们的日常生活中很普遍 假设 1 元 2 元 5 元 10 元 20 元 50 元 100 元的纸币分别有 c0 c1 c2 c3 c4 c5 c6 张 现在要用这些钱来支付 K 元 至少要用多少张纸币 用贪心算法的思想 很显然 每一步尽可能用面值大的纸币即可 在日常生活中我们自然而然也是这么做的 在程序中已经事先将 Value 按照从小到大的顺序排好 贪心分析 贪心算

最简单的钱币找零问题这个问题在我们的日常生活中很普遍。假设1元、2元、5元、10元、20元、50元、100元的纸币分别有c0, c1, c2, c3, c4, c5, c6张。现在要用这些钱来支付K元,至少要用多少张纸币?用贪心算法的思想,很显然,每一步尽可能用面值大的纸币即可。在日常生活中我们自然而然也是这么做的。在程序中已经事先将Value按照从小到大的顺序排好。



贪心分析:贪心算法是指在对问题求解时,总是做出在当前看来是最好的选择

当前最好的选择,首先肯定是使用面值最大的钱,比如总共要130元,则第一步肯定是选择100元面值的,第二步选择20元面值的,第三步选择10元面值的。



C++实现:

<
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/231527.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号