python - 我的数独求解程序进入无限循环,我不明白为什么 [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
解决方案
推荐阅读
- javascript - 如何从输入标签中正确获取值?
- azure-devops - 确保不能再使用旧的任务组版本
- java - 响应正文中的 Spring Batch 作业执行状态
- c# - 如何阅读 Word VSTO 中的当前文档?
- c++ - 模板化一个虚函数,管理来自单个类的不同类属性
- reactjs - 收到错误“操作必须是普通对象。使用自定义中间件进行异步操作。” 使用 AXIOS 时在 React Native 中
- iis - IIS 日志在一台服务器与另一台服务器上有更多信息
- fabricjs - SVG 到 backgroundImage 和 overlayImage
- angular - 嵌入式模板上的任何指令均未使用属性绑定 matHeaderRowDef
- r - 从单个图像中的单个数据帧绘制许多线图