我有以下回溯代码:
private void generate(int startIndex) {
if (startIndex == arr.length) {
System.out.println(Arrays.deepToString(arr));
return;
}
for (int i = 1; i <= 3; i++) {
arr[startIndex] = i;
generate(startIndex + 1);
}
}
生成并打印给定长度(arr.length)和给定数字(i的范围)的所有数组变体。但是,我试图使用回溯来解决Sudoku,所以我想生成一个2D数组。我将如何实现这种行为?