Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/397.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 按照一些规则计算4个列表中所有可能的元素组合_Java_List - Fatal编程技术网

Java 按照一些规则计算4个列表中所有可能的元素组合

Java 按照一些规则计算4个列表中所有可能的元素组合,java,list,Java,List,我有4个列表,都由相同的数据类型(字符串)组成。每个元素都是唯一的。例如: 清单1有3个元素 清单2有5个元素 清单3有6个元素 清单4有8个元素 我需要从列表1中选择1个元素,从列表2中选择2个元素,从列表3中选择3个元素,从列表4中选择4个元素的所有可能组合。 因此,一个可能的结果是: 清单1[1] 列表2[1]+列表2[3] 列表3[0]+列表3[2]+列表3[4] List4[0]+List4[1]+List4[3]+List4[5] 我需要按照规则创建所有可能的组合,从列表1中选择1个

我有4个列表,都由相同的数据类型(字符串)组成。每个元素都是唯一的。例如:

清单1有3个元素

清单2有5个元素

清单3有6个元素

清单4有8个元素

我需要从列表1中选择1个元素,从列表2中选择2个元素,从列表3中选择3个元素,从列表4中选择4个元素的所有可能组合。 因此,一个可能的结果是:

清单1[1]

列表2[1]+列表2[3]

列表3[0]+列表3[2]+列表3[4]

List4[0]+List4[1]+List4[3]+List4[5]

我需要按照规则创建所有可能的组合,从列表1中选择1个元素,从列表2中选择2个元素,等等


我找到了几种解决这个问题的方法,但我想知道什么是最优化的方式来获得我需要的?我的观点是,我想用尽可能少的时间来计算所有可能的选择。

“我找到了解决此问题的几种方法”请选择一种对您来说最有希望的方法,并在编辑您的问题时提供其说明。这取决于顺序吗?{A,B}与{B,A}相同吗?“创建所有可能的组合”是什么意思?你需要打印它们吗?你只需要知道有多少个组合就可以了吗?@flkes当然它必须是独立的。这不是关于排序,而是关于从唯一列表中选择元素。@Gendarme实际上我想将它们存储到一个列表中,因为在找到它们之后,我需要处理它们。一个可能的解决方案是随机选择元素的方式,如果不符合规则或此组合已经存在,则丢弃组合“我找到了解决这个问题的几种方法”请选择一种对你来说最有希望的方法,并在编辑你的问题时提供它的描述。这取决于顺序吗?即,{A,B}与{B,A}相同吗?什么是“创建所有可能的组合”“什么意思?你需要打印它们吗?你只需要知道有多少个组合就可以了吗?@flkes当然它必须是独立的。这不是关于排序,而是关于从唯一列表中选择元素。@Gendarme实际上我想将它们存储到一个列表中,因为在找到它们之后,我需要处理它们。一个可能的解决方案是随机选择元素的方式,如果不符合规则或此组合已经存在,则丢弃组合