宮排除法是標準數獨中最常用的算法,即通過宮以外的行(或列)中已經出現的數字對這個宮的若干空格進行排除,當最終在宮中只剩下唯一空格沒有被某個數字排除時,這個唯一空格中的值就是該數字。
一個數字出現的次數越多,這個數字對沒有出現該數字的宮的排除效果就越好,得出唯一解的概率也越大。
我們試一下應用宮排除法,在如圖1所示的例題中找出數字8的全部位置。

第一宮、第二宮、第六宮、第八宮、第九宮中,數字8已經作為提示數出現,只需要找出第三宮、第四宮、第五宮、第七宮中數字8的位置。
第1步:如圖2,應用宮排除法,第三宮的R2C7=8。
第2步:如圖2,應用宮排除法,第七宮的R9C1=8。

第3步:如圖3,應用宮排除法,第四宮的R6C2=8。

第4步:如圖4,應用宮排除法,第五宮的R4C5=8。

如果一個數字在某一行(列)中沒有出現,但是該行(列)穿過的宮中出現了該數字,這種情況下多應用行(列)排除法。
實際的解題過程中,行(列)排除法的應用條件比宮排除法更難被發現,需要細心地觀察。
應用行(列)排除法時,要盡量選擇空格較少的行(列)進行觀察,盡量選擇出現次數較多的數字進行排除,然后再觀察該行中空格所在的列(行)以及該行(列)穿過的宮。
我們試一下,應用行排除法,在如圖5所示的例題中找出第四行中數字7的位置。

因為第六宮中R6C8=7,所以R4C(7,8,9)≠7;
因為第一列中R8C1=7,所以R4C1≠7;
因為第三列中R2C3=7,所以R4C3≠7;
因為第四列中R1C4=7,所以R4C4≠7。
綜合以上情況,應用行排除法,第四行中R4C6=7。
再試一下應用列排除法,在如圖6所示的例題中找出第一列中數字1的位置。……