会员登录 立即注册

搜索

从数据集中挑出10个和为435的数

[复制链接]
崎山小鹿 发表于 2024-10-9 20:11:09 | 显示全部楼层 |阅读模式
崎山小鹿
2024-10-9 20:11:09 12459 0 看全部
接到一个客户的需求,类似这样的:从数据集中挑出10个和为435的数,要求用JAVA实现,只输出一组结果代码如下:
import java.util.ArrayList;
import java.util.List;

public class Main {
    public static List<Integer> findCombination(int[] nums, int i, int m) {
        List<Integer> result = new ArrayList<>();
        backtrack(nums, i, m, 0, new ArrayList<>(), result);
        return result;
    }

    private static void backtrack(int[] nums, int i, int m, int start, List<Integer> tempList, List<Integer> result) {
        if (tempList.size() == i) {
            if(sum(tempList) == m) result.addAll(tempList);
            return;
        }

        for (int j = start; j < nums.length && result.size()==0; j++) {
            tempList.add(nums[j]);
            backtrack(nums, i, m, j + 1, tempList, result);
            tempList.remove(tempList.size() - 1);
        }
    }

    private static int sum(List<Integer> list) {
        int sum = 0;
        for (int num : list) {
            sum += num;
        }
        return sum;
    }

    public static void main(String[] args) {
        int[] dataset = {26, 83, 13, 79, 51, 61, 8, 89, 69, 52, 46, 57, 21, 54, 55, 97, 82, 2, 8, 21, 10, 82, 50, 97, 81, 40, 59, 24, 61, 36, 76, 43, 40, 92, 49, 30, 61, 27, 93, 89, 34, 35, 1, 40, 70, 42, 25, 1, 99, 53, 1, 90, 70, 84, 79, 40, 80, 14, 67, 25, 70, 44, 59, 71, 89, 81, 29, 22, 1, 82, 38, 80, 59, 41, 86, 61, 88, 32, 82, 33};
        int i = 10;
        int m = 435;
        List<Integer> result = findCombination(dataset, i, m);
        System.out.println(result);
    }
}



输出:
[26, 83, 13, 79, 51, 61, 8, 89, 24, 1]
天不生墨翟,万古如长夜!以墨运商,以商助墨。金双石科技长期招聘科技研发人才!微信:qishanxiaolu   电话:15876572365   公司:深圳市金双石科技有限公司
回复

使用道具 举报

  • 您可能感兴趣
您需要登录后才可以回帖 登录 | 立即注册 |

本版积分规则 返回列表

管理员给TA私信
以墨运商,以商助墨。

查看:12459 | 回复:0

  • 墨山游侠-惊变100天末日堡垒

    您的五星好评是我们持续更新和修复bug的动力!别忘订阅我们! 墨山游侠-末日堡垒 僵

    阅读:281|2025-09-01
  • 墨山游侠之奇异方块

    这种方块很奇怪,无法挖掘,无法摧毁,无法站立,但是可以用活塞推动。 这种方块

    阅读:357|2025-08-28
  • 墨山游侠-更好的聊天记录

    大家有没有想过把以前的聊天记录全部导出? 在 Minecraft 基岩版,原生机制并不会长期

    阅读:404|2025-08-25
  • 墨山空岛生存

    一树一箱开启你的空岛生存冒险吧,有墨山飞行靴-武器库的加持效果更好,如果找到NPC了

    阅读:392|2025-08-20
  • 墨山游侠-抓熊剑(熊孩子休走)

    今天给大家介绍墨山抓熊剑 家又被烧啦,让你试试这把抓熊剑 看你往哪里跑 挖是挖不

    阅读:442|2025-08-16
  • 墨山成就系统核心

    墨山成就核心包括墨山成就系统,墨山NPC以及任务系统,墨山财富系统。其中财富系统要

    阅读:434|2025-08-14
  • 墨山飞行靴-武器库

    墨山飞行靴-武器库是从墨山游侠工具合集中提取优质武器合集,包括盔甲和武器。 去掉了

    阅读:422|2025-08-14
  • 墨山游侠-嘉峪关

    根据嘉峪关的结构在我的世界里建了一座城,对城墙做了加厚。

    阅读:421|2025-08-11
  • 墨山游侠-网络游戏

    2025-07-31 11:29:0 终于成功的申请到了网易的网络游戏开发服务器 基岩版网络游戏是

    阅读:543|2025-08-06
  • 墨山游侠-墨子巨像

    2024年12月13日,一群墨学爱好者决定通过游戏来宣传墨学,我的世界无疑是一款最灵活开

    阅读:521|2025-08-03
金双石科技,软件开发20年,技术行业领先,您的满意,就是我们的目标,认真负责,开拓进取,让成品物超所值
关于我们
公司简介
发展历程
联系我们
本站站务
友情链接
新手指南
内容审核
商家合作
广告合作
商家入驻
新闻合作

手机APP

官方微博

官方微信

联系电话:15876572365 地址:深圳市宝安区西乡街道宝民二路宝民花园 ( 粤ICP备2021100124号-1 ) 邮箱:qishanxiaolu@qq.com
QQ|Powered by Discuz! X3.5 © 2001-2025 Discuz! Team.
快速回复 返回顶部 返回列表