LeetCode第三十七題-實現數獨

Sudoku Solver

問題簡介:給定一個大小9*9的二維數組,輸入部分數字,其它字符用’.‘代替,要求完成剩餘數字的計算即字符’.‘處

數獨的要求:

1.每個數字1-9必須在每行中恰好出現一次

2.每個數字1-9必須在每列中恰好出現一次

3.數字1-9中的每一個必須在網格的9個3×3子框中的每一箇中恰好出現一次

舉例:

輸入:

[

[“5”,“3”,".",".",“7”,".",".",".","."],

[“6”,".",".",“1”,“9”,“5”,".",".","."],

[".",“9”,“8”,".",".",".",".",“6”,"."],

[“8”,".",".",".",“6”,".",".",".",“3”],

[“4”,".",".",“8”,".",“3”,".",".",“1”],

[“7”,".",".",".",“2”,".",".",".",“6”],

[".",“6”,".",".",".",".",“2”,“8”,"."],

[".",".",".",“4”,“1”,“9”,".",".",“5”],

[".",".",".",".",“8”,".",".",“7”,“9”]

]

即:

LeetCode第三十七題-實現數獨


結果:填充未完成的部分,即紅色數字位置

LeetCode第三十七題-實現數獨


解法一:

利用遞歸的思路,逐個填充原字符’.'處的數字,當填充每個數字時進行判斷,判斷填充的數字是否有效,直到遞歸所有字符

LeetCode第三十七題-實現數獨


LeetCode第三十七題-實現數獨


小白刷題之路,請多指教— — 要麼大器晚成,要麼石沉大海

LeetCode第三十七題-實現數獨


分享到:


相關文章: