今天解的題目是第三十六題Valid Sudoku 解題目的做法是分別檢查數獨的列、行以及每個 3x3 的子方格是否有重複數字,首先在檢查列的部分,逐一遍歷每一列並使用一個集合記錄出現過的數字,如果遇到已經存在的數字就直接回傳 False,空格符號 '.' 則會被略過;接著在檢查行的部分,邏輯完全相同,只是外層固定欄位,內層迴圈遍歷每一列,確保每一行中也沒有重複的數字;最後在檢查 3x3 子方格時,先定義九個子方格的左上角起始座標,然後針對每個子方格展開 3x3 的範圍進行檢查,同樣利用集合來判斷是否有數字重複出現,如果任何一列、一行或一個子方格違反規則就立刻回傳 False,而如果所有檢查都沒有問題則回傳 True,表示該數獨棋盤是有效的。