直观法
基础摒除法
唯一解法
唯余解法
区块摒除法
单元摒除法
余数测试法
基础摒除法
基础摒除法就是利用1 ~ 9 的数字在每一行、每一列、每一个九宫格都只能出现一次的规则进行解题的方法。基础摒除法可以分为行摒除、列摒除、九宫格摒除。
实际寻找解的过程为:
寻找九宫格摒除解:找到了某数在某一个九宫格可填入的位置只余一个的情形;意即找到了 该数在该九宫格中的填入位置。
寻找列摒除解:找到了某数在某列可填入的位置只余一个的情形;意即找到了该数在该列中的填入位置。
寻找行摒除解:找到了某数在某行可填入的位置只余一个的情形;意即找到了该数在该行中的填入位置。
利用基础摒除法解题的过程就是依次从数字1 ~ 9 在行、列、九宫格寻找能放入该数唯一的一个位置。需要综合用到行摒除、列摒除、九宫格摒除的方法。
看能用基础摒除法确定B2、C8、E7、F6、I5的数字吗? 题目如下:可以直接导入数独博士进行练习 **29***** ******8*5 *58***7** 1*9*3**** ****78*** **6****3* 94**5***1 *****7**9 68***35** | |
A9=9,则A行其它格排除9 G1=9,第1列排除数字9 D3=9,第3列排除数字9 见下图 | |
由基础摒除法,第A1所在的九宫格内9只有一个唯一的位置,即确定B2=9。 | |
A4=9,则4列其它格排除9 G1=9,第G行排除数字9 H9=9,第H行排除数字9 见下图 | |
由基础摒除法,第G4所在的九宫格内9只有一个唯一的位置,即确定I5=9。 | |
A4=9,则4列其它格排除9 D3=9,第D行排除数字9 I5=9,第5列排除数字9 见下图 | |
由基础摒除法,第D4所在的九宫格内9只有一个唯一的位置,即确定F6=9。 | |
A4=9,则A行其它格排除9 B2=9,第B行排除数字9 H9=9,第9列排除数字9 见下图 | |
由基础摒除法,第A7所在的九宫格内9只有一个唯一的位置,即确定C8=9。 | |
C8=9,则8列其它格排除9 D3=9,第D行排除数字9 F6=9,第F行排除数字9 H9=9,第9列排除数字9 见下图 | |
由基础摒除法,第D7所在的九宫格内9只有一个唯一的位置,即确定 |
当某行已填数字的宫格达到8个,那么该行剩余宫格能填的数字就只剩下那个还没出现过的数字了。成为行唯一解.
当某列已填数字的宫格达到8个,那么该列剩余宫格能填的数字就只剩下那个还没出现过的数字了。成为列唯一解.
当某九宫格已填数字的宫格达到8个,那么该九宫格剩余宫格能填的数字就只剩下那个还没出现过的数字了。成为九宫格唯一解.
A行已经添入8个数字,A行只有数字3没有出现过,所以A9=3,这是行唯一解 | |
第1列已经添入8个数字,第1列只有数字5没有出现过,所以E1=5,这是列唯一解 | |
在A8所在九宫格区域已经添入8个数字,只有数字9没有出现过,所以A8=9,这是九宫格唯一解 |
唯余解法就是某宫格可以添入的数已经排除了8个,那么这个宫格的数字就只能添入那个没有出现的数字.
唯余解法道理非常简单,但在实际使用是比较困难,要注意识别.
A5=? 其实这就是唯余解法的原理,很简单吧. 但是实际使用时就不会容易发现了. | |
能使用唯余解法确定B7的值吗? | |
能确定E9,A9,B9,C9的值吗? 本题题目(可以直接导入数独博士进行练习) ********* *531*8*7* 8**4**9** 96**1*5*7 ********* **4**5**3 **67****5 4**8****1 *7*3****6 | |
由区块摒除法可以得出E9=9.在区块摒除法没有举这个例子,这里补充. | |
由唯余解法,C9=2 | |
同样,可得出B9=4,A9=8. |
区块摒除法是基础摒除法的提升方法,是直观法中使用频率最高的方法之一.
所谓区块,就是将行分成3个三个相连的小方块构成,列也是分成3个三个相连的小方块构成.九宫格同样被看成由3个三个相连的小方块构成,如下面示意图:
假如(G1~G3)黄色区域区块其中之一是数字9. | |
则,(H4~H6)蓝色区域可能含有数字9, 否则(I4~I6)绿色区域含有数字9. | |
假定我们已确定(G1~G3)黄色区域区块其中之一是数字9, (H4~H6)蓝色区域含有数字9, 则:在(I7~I9)绿色区域一定含有数字9. 如果再通过其它方法确定(I7~I9)绿色区域中某两个宫格不能为数字9,则就能确定数字9在(I7~I9)区块的具体位置. | |
下面举一些例子 | |
能使用区块摒除法确定F6的数字吗? 本题题目(可以直接导入数独博士进行练习) ***81**** 2**37**** 81*****4* **1****72 *******63 *73*6**** **92**6** 4****6**9 *****17** | |
D2=2,则E1~E3蓝色区块,或F1~F2绿色区块必包含数字2. | |
又有B1=2,利用列摒除法,E1,F1不能为数字1.有F2,F3已填有数字,所以,E2~E3蓝色区块必有数字2 | |
由上面得出黄色区块,蓝色区块包含数字2,这是典型的区块摒除法,得到绿色区块必包含数字2 | |
又G4=2,F5已添入数字,所以F6=2 |
单元摒除法
单元摒除法是比较基本的排除方法,下面举例解释
能确定A8的数字吗? 本题题目(可以直接导入数独博士进行练习) 8***92*** 5***3**6* *1*****9* *8**7**** **9****82 **5*2**4* 6*35**4** ***1****7 *****79** | |
由D5=7,得出D8<>7, H9=7,得出G8,H8,I8<>7 显然A8=7 |
余数测试法
所谓余数测试法就是在某行或列,九宫格所填数字比较多,剩余2个或3个时,在剩余宫格添入值进行测试的解题方法.
本题题目(可以直接导入数独博士进行练习) *32****7* 1*****2 *9***** 8***245** *513***** **7****31 ******74* ***5*6*** 3***8***6 在B行,C行剩余未填的数字只有两三个了,这时可以使用余数测试法进行解题. | |
我们看B行,B3可能添入的数为5或者6,我们从5开始测试. | |
我们在B3添入5进行测试,得到左图,没有得出出错的推断,所以B3=5可能是正确的判断,如果能判断出B3<>6,则才能肯定B3=5. 所以下面我们还需要用B3=6进行测试 | |
在B3添入6,推出B8=5. 观察C行,C7,C8,C9必含有数字5. 证明B3=6是错误的.从而 |