我得到了一个带有数字的int数组,我需要在2d数组中列出所有组合。
例如,如果im给定一个(1,2)
的整数数组,则组合为
(0,1) (1,0) (1,2) (0,2) (1,1)
我需要将它们放在二维数组中,例如:
(0,1)
(1,0)
(1,2)
,依此类推。 为什么我的代码不起作用?有什么建议吗?
public static int[][] getCombinations(int[] choices) {
int size = choices.length;
int combos = 0;
int[][] options = new int [size][combos];
if (size == 1) {
options[combos][0] = 1;
}else {
for (int j = 0; j < size; j++) {
choices[j] = j -1;
getCombinations(choices);
choices[j] = j+1;
}
}
return options;
}