会员登录 立即注册

搜索

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

[复制链接]
崎山小鹿 发表于 2024-10-9 20:11:09 | 显示全部楼层 |阅读模式
崎山小鹿
2024-10-9 20:11:09 1786 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私信
以墨运商,以商助墨。

查看:1786 | 回复:0

  • 墨家小镇文化与经济

    文化建设: 墨家十要 旗帜: 八卦 双鱼戏水 经济建设: 麦田、 甘蔗田

    阅读:96|2024-12-20
  • 墨者的面具

    仿照三星堆的面具做头像

    阅读:102|2024-12-19
  • 从出生地前往墨家小镇集合

    装饰一下出生地 现在有路标了,通过路标让会员找到我们的村庄,一路要非常小心不

    阅读:207|2024-12-18
  • 墨家盾牌和武器

    盾牌上有墨家的标志,武器上也有墨家的特色

    阅读:212|2024-12-17
  • 安全的保险箱

    每个人都一个自己的箱子,只有自己能开启。且死亡不掉落! 对着一个上方没有红石导

    阅读:217|2024-12-17
  • 我的世界之墨家旗帜

    如何在我的世界里创建独特的旗帜呢? 将图片生成像素画 https://chuiliu.github.io/d

    阅读:279|2024-12-16
  • 给服务器增加组件

    给服务器增加组件,例如:墨家旗帜 租赁服务器如何使用mod? 答:目前我的世界纯净

    阅读:336|2024-12-15
  • 用手机玩墨山游侠

    用手机玩墨山游侠 电脑版怎么和手机版玩家一起联机? 答:更新后电脑版新增基岩版,

    阅读:345|2024-12-15
  • 墨山游侠服务器开启

    在网易上开启创服之旅 服务器号:25744989 我们先用游戏版本:1.12.2 来测试,看

    阅读:463|2024-12-14
  • 构建我们墨者自己的,侠客世界

    各位好,整理了一下大家的意见。同步一下信息。 1.制作一个墨家元素的游戏。 2.先依托

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

手机APP

官方微博

官方微信

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