编程之美_004硬币找零,递归算法
2013-01-09 10:07
204 查看
// 硬币找零 递归算法 public class Test_001 { // 硬币的类型 private static int[] money = { 10, 5, 2, 1 }; // 每个硬币对应的数量 private static int[] tote = new int[money.length]; public static void main(String[] args) { int myMoney = 129; findMoney(myMoney, 0); System.out.println("需要找的硬币总数:" + myMoney); for (int i = 0, length = money.length; i < length; i++) { if (tote[i] != 0) { System.out.println("硬币面值:" + money[i] + "\t数量:" + tote[i]); } } } /** * 找硬币 * @param number 需要找的硬币数 * @param index 比较硬币的下标索引 */ private static void findMoney(int number, int index) { if (number > 0) { if (number >= money[index]) { tote[index]++; findMoney(number - money[index], index); } else { findMoney(number, ++index); } } } }
输出结果:
需要找的硬币总数:129
硬币面值:10 数量:12
硬币面值:5 数量:1
硬币面值:2 数量:2
相关文章推荐
- 每日编程系列——硬币找零
- 硬币找零问题,力求解决一些一切可能的办法,硬币的最小数量,有多少每个硬币的
- leetcode-322硬币找零
- NYOJ 995硬币找零
- 硬币找零问题
- 一个射击运动员打靶,靶一共有10环,连开10枪打中90环的可能性有多少种?请用递归算法编程实现。
- 硬币找零 完全背包
- 【动态规划】之硬币找零问题(难度:1星)
- 硬币找零问题 - 动态规划
- 人民币找零 vs 硬币问题 贪心 vs 动态规划
- 贪心算法解硬币找零问题
- nyoj 硬币找零
- [LeetCode] 518. Coin Change 2 硬币找零 2
- 硬币找零(贪心算法)
- NYOJ995 硬币找零(完全背包)
- 动态规划入门之硬币找零问题
- ayit 21811 硬币找零
- 硬币找零-记忆化搜索(DP动态规划)
- 一、Java并发编程基础篇(004)脏读
- nyist 硬币找零(完全背包)