我的问题是这样的:我在一个数组中有 n 个数字,每个数字都有一个最大值 m,我想通过单独递增它们直到达到最大值来迭代这些数字的每个排列。
一个例子:
[0,0,0,0]
Integer @ index 0 has a max value of 5
Integer @ index 1 has a max value of 3
Integer @ index 2 has a max value of 4
Integer @ index 3 has a max value of 6
Output:
[0,0,0,1]
[0,0,0,2]
[0,0,0,3]
.
.
.
[0,1,1,0]
[0,1,1,1]
[0,1,1,2]
[0,1,1,3]
.
.
.
[5,0,2,1]
[5,0,2,2]
etc.
Python有带有product函数的itertools,这可以解决我的问题,但看起来Java没有类似的东西。递归似乎是可行的方法,但我可以找出前进的方向。
有谁知道如何实现上述输出?提前致谢 :-)
MYYA
相关分类