首页 > 解决方案 > 我的数独求解程序进入无限循环,我不明白为什么 [python]

问题描述

canPlaceTile 方法可以正常工作,因此我怀疑问题出在其中。此外,行数永远不会超过 2

def canSolve(board, col, row):

    if col == len(board[row]):
        
        row += 1
        col = 0
        if row == len(board):
            for i in board:
                print(*i)
            return True
    
    
    if board[row][col] != 0:
        canSolve(board, col + 1, row)
   
    for num in range(1,10):
        if canPlaceTile(board, col, row, num):
            board[row][col] = num
            if canSolve(board, col + 1, row):
                return True
        board[row][col] = 0
    return False 

标签: pythonrecursionsudoku

解决方案


推荐阅读