Алгоритм возврата количества решений из сетки судоку - PullRequest
1 голос
/ 09 марта 2019

Я пытаюсь реализовать библиотеку судоку. Я сделал генератор, и теперь я делаю решатель, и одна из функций заключается в проверке уникальности сетки (возвращает количество доступных решений, более 1 - нет уникального решения). Я застрял в этой функции рекурсии, и я не могу вернуть число, просто напечатайте сетки ...

public static void checkSolutionsNum (Grid grid_) {

    Grid grid = new Grid(grid_); //Makes copy of the the grid .
    int size = grid.getSize(); //Gets the size of the grid.

    Cell cell = grid.getNextEmptyCell();

    if (cell == null) { //Grid is full.
        System.out.println(grid);
    }


    else {
        for (int num = 1 ; num <= size ; num++) {
            cell.setValue(num);
            if (Checker.isAvailableNumberInCell(cell,grid)){
                checkSolutionsNum(grid)
            }
        }
    }
}

Это текущий алгоритм, который у меня есть. Я хочу, чтобы он возвращал ряд доступных решений, а не печатал их.

...