文件名称:sudokupy:使用正向传播的Python中的快速Sudoku求解器
文件大小:8KB
文件格式:ZIP
更新时间:2024-03-26 00:24:22
Python
使用正向传播的Python中的快速Sudoku求解器 这是用Python编写的快速Sudoku求解器。 它受解决约束满足问题(CSP)的算法的启发。 本质上,它是专门用于Sudoku的硬编码CSP求解器。 变量的分配顺序由最小剩余值启发式(MRV)确定。 这样可以确保快速缩小搜索空间,并且快速失败。 如果设置了值,那么将从共享相同约束的所有相邻像元中删除该值。 如果一个单元格中没有剩余的允许值,则该分配无效(除非它是最后一个单元格)。 此方法有两个很酷的好处: 首先是,如果可以不用猜测就能解决难题,则算法将遵循此路线。 这是MRV启发式方法的结果。 其次,我们不必检查是否满足约束条件。 因为分配值从共享相同约束的每个像元的允许值中删除,所以不可能分配一个无效值,除非难题一开始是无效的。 用法示例 hardest_puzzle = "800000000003600000070090
【文件预览】:
sudokupy-master
----sudoku.py(8KB)
----example.py(335B)
----__pycache__()
--------sudoku.cpython-39.pyc(8KB)
----README.md(3KB)