文件名称:关于"数独--九宫格"的算法实现
文件大小:13KB
文件格式:CS
更新时间:2013-02-22 09:45:10
数独 数独算法 c#数独实现 c#算法 算法
数独顾名思义——每个数字只能出现一次。数独是一种源自18世纪末的瑞士,后在美国发展、并在日本得以发扬光大的数字谜题。数独盘面是个九宫,每一宫又分为九个小格。在这八十一格中给出一定的已知数字和解题条件,利用逻辑和推理,在其他的空格上填入1-9的数字。使1-9每个数字在每一行、每一列和每一宫中都只出现一次。 这种游戏全面考验做题者观察能力和推理能力,虽然玩法简单,但数字排列方式却千变万化,所以不少教育者认为数独是训练头脑的绝佳方式。 关于数独的算法有很多种,最基本的有基拙挖掘法,唯一解法,侯选数置换法.查了很多资料但都没有找到完整的算法实现.花了30块银子到当当网上买了<<编程之美>>找到其中的章节,看完之后大失所望.其中的算法实现藏头露尾,寥寥几行.让人看的云里雾里.连类定义都没有给全. 这里只好自己用基拙挖掘法实现了一个完整的算法,现共享之.其核心思想是循环在每个单元格尝试如果能找到合适的数则前进.如果找不到则进行回朔.下面是代码实现. 如有bug 请一定告之,呵呵.mail:bingbing200x@163.com