У меня возникли проблемы с попыткой сгенерировать все возможные комбинации сетки n * n. В приведенном ниже коде показано, как я буду это делать, используя вложенные циклы и сетку 2 * 2. Однако, если бы я захотел сделать то же самое, скажем, для сетки 6*6, было бы слишком утомительно составлять такой обширный список циклов.
Может ли кто-нибудь помочь мне преобразовать метод bruteSolve() в рекурсивный метод, чтобы я мог выбирать размер сетки?
Заранее спасибо :) Это была проблема, с которой я застрял целую вечность :(
static ArrayList<Integer> numbers;
static int n;
static int [] [] grid;
static int count;
public static void main (String [] args){
n = 2;
grid = new int [n] [n] ;
bruteSolve(n);
}
public static void bruteSolve(int n){
for (int i=1; i<n+1; i++){
grid [0][0] = i;
for (int j=1; j<n+1; j++){
grid [0][1] = j;
for (int k=1; k<n+1; k++){
grid [1][0] = k;
for (int l=1; l<n+1; l++){
grid [1][1] = l;
System.out.println(Arrays.deepToString(grid));
}
}
}
}
}