Java 实现:给定总价,列出不同单价商品的所有符合组合!
以下是一个简单的 Java 程序示例,用于解决给定一组不同单价的商品和总价,列出所有符合的商品组合的问题: ```java import java.util.ArrayList; import java.util.List; public class CombinationsOfProducts { public static void main(String[] args) { double[] prices = {10.5, 20.0, 15.5, 8.0, 12.5}; double totalPrice = 50.0; findCombinations(prices, totalPrice); } public static void findCombinations(double[] prices, double totalPrice) { List<List<Double>> combinations = new ArrayList<>(); findCombinationsHelper(prices, 0, new ArrayList<>(), totalPrice, combinations); for (List<Double> combination : combinations) { System.out.println(combination); } } public static void findCombinationsHelper(double[] prices, int index, List<Double> currentCombination, double remainingPrice, List<List<Double>> combinations) { if (remainingPrice == 0) { combinations.add(new ArrayList<>(currentCombination)); return; } if (remainingPrice < 0 || index == prices.length) { return; } currentCombination.add(prices[index]); findCombinationsHelper(prices, index + 1, currentCombination, remainingPrice - prices[index], combinations); currentCombination.remove(currentCombination.size() - 1); findCombinationsHelper(prices, index + 1, currentCombination, remainingPrice, combinations); } } ``` 这个程序使用递归的方式来找出所有可能的商品组合。对于较大的商品数量和总价,可能会产生大量的组合,导致性能问题。在实际应用中,可能需要根据具体情况进行优化或采用其他算法。 ######[AI写代码神器 | 432点数解答 | 2024-09-03 11:49:30]
- Java 实现复制粘贴功能:打造简易文本复制粘贴程序(GPT | 1497点数解答 | 2024-08-25 09:40:33)429
- 深入解析格雷码生成算法:递归求解与代码实现(DeepSeek | 443点数解答 | 2026-01-05 12:21:49)69
- 深入探究:n 位格雷码中编号 k 二进制串的求解算法与实现(DeepSeek | 726点数解答 | 2026-01-13 12:31:37)68
- 用Python处理商品销售数据:替换类别、合并类目并输出前5行(百度文心 | 486点数解答 | 2024-08-23 09:14:21)324
- 解决数据库“dm.jdbc.driver.dmexception: 数据溢出”问题的全步骤指南(阿里通义 | 598点数解答 | 2024-10-15 15:48:38)330
- 达梦数据库数据溢出问题排查及多维度解决方法(阿里通义 | 403点数解答 | 2024-10-15 15:48:41)1218
- 车载系统 UML 类图设计:涵盖 Car、Engine、娱乐系统等的完整类定义与关系解析 (字节豆包 | 760点数解答 | 2024-08-15 22:51:04)329
- Python 实现球类:精准计算半径、表面积与体积,附输入验证与异常处理!(阿里通义 | 261点数解答 | 2024-11-28 21:19:39)371
- 解惑:为何deposit函数printf无&,另一函数却有?代码奥秘大揭秘! (字节豆包 | 132点数解答 | 2024-08-08 15:53:07)285
- Shell脚本:用户密码验证、目录文件操作全流程实现及注意要点(字节豆包 | 466点数解答 | 2025-06-06 11:02:00)179
- 礼盒多级排序:总价→最贵→最便宜→编号的 Python 实现与详解(阿里通义 | 1000点数解答 | 2026-03-16 12:13:21)26
- 修复代码错误:解决 Python 格式化字符串引发的 ValueError 问题(字节豆包 | 187点数解答 | 2024-10-16 15:53:08)373