图像缩略图

快速数独解算器

版本1.0.0.0(1.68KB)由 迈克尔·克莱德
快速找到数独难题的所有可能解决方案金宝搏官方网站

5.4K下载

更新2006年12月28日

无执照

数独-快速找到所有可能的解决方案的数独难题金宝搏官方网站

用法:Mout=数独(M)

M=初始数独矩阵,空项为零
Mout=存在唯一解时作为9x9矩阵的解,或存在N个解时作为9x9xN矩阵的解金宝搏官方网站

笔记:
(1) 该算法采用递归,但尽可能多地在每个递归级别上使用straighforward确定性推理,以提高总体速度。
(2) 当函数搜索所有可能的解决方案时,为该函数提供一个空的或过于稀疏的输入矩阵会产生更长的计算时间。金宝搏官方网站
(3) 如果输入拼图没有有效的解决方案,则会生成“无解决方案”错误。
(4) 已测试但无保修,使用风险自负。
(5) 迈克尔·克莱德,2006年12月

示例:

%在几分之一秒内找到此难题的唯一解决方案:
M=[0 0 8 0 9 0 5 0 0;0 0 1 0 7 0 4 0;0 0 4 0 3 0 6 0;
0 1 0 0 0 6 0 0 7;0 9 0 0 0 3 0 0 0;0 2 0 0 5 0 0 6 0;
0 5 0 0 4 0 0 2 0;0 0 0 8 0 0 0 3 0;6 0 0 1 0 0 0 4 0];
数独(M)

%在几秒钟内找到此难题的100种可能解决方案:金宝搏官方网站
M=[0 0 8 0 9 0 5 0;0 0 1 0 7 0 0 0;0 0 4 0 3 0 6 0;
0 1 0 0 0 0 0 0 7;0 9 0 0 0 3 0 0 0;0 2 0 0 5 0 0 6 0;
0 5 0 0 4 0 0 2 0;0 0 0 8 0 0 0 3 0;0 0 0 1 0 0 0 4 0];
抽搐;M=数独(M);toc;尺寸(米,3)

引用为

迈克尔·克莱德(2021年)。快速数独解算器(//www.tatmou.com/matlabcentral/fileexchange/13324-fast-sudoku-solver),MATLAB中央文件交换。恢复.

MATLAB版本兼容性
使用R14SP3创建
与任何版本兼容
平台兼容性
窗户 马科斯 Linux

社区寻宝

在MATLAB Central中查找宝藏,了解社区如何帮助您!

开始打猎吧!