亚洲中字慕日产2020,大陆极品少妇内射AAAAAA,无码av大香线蕉伊人久久,久久精品国产亚洲av麻豆网站

資訊專欄INFORMATION COLUMN

LeetCode36.有效的數(shù)獨 JavaScript

elva / 721人閱讀

摘要:上圖是一個部分填充的有效的數(shù)獨。數(shù)獨部分空格內(nèi)已填入了數(shù)字,空白格用表示。但由于位于左上角的宮內(nèi)有兩個存在因此這個數(shù)獨是無效的。說明一個有效的數(shù)獨部分已被填充不一定是可解的。只需要根據(jù)以上規(guī)則,驗證已經(jīng)填入的數(shù)字是否有效即可。

判斷一個 9x9的數(shù)獨是否有效。只需要根據(jù)以下規(guī)則,驗證已經(jīng)填入的數(shù)字是否有效即可。

數(shù)字 1-9 在每一行只能出現(xiàn)一次。

數(shù)字 1-9 在每一列只能出現(xiàn)一次。

數(shù)字 1-9 在每一個以粗實線分隔的 3x3 宮內(nèi)只能出現(xiàn)一次。

上圖是一個部分填充的有效的數(shù)獨。

數(shù)獨部分空格內(nèi)已填入了數(shù)字,空白格用 "." 表示。

示例 1:
輸入:

[
  ["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"]
]

輸出: true

示例 2:
輸入:

[
  ["8","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"]
]

輸出: false
解釋: 除了第一行的第一個數(shù)字從 5 改為 8 以外,空格內(nèi)其他數(shù)字均與 示例1 相同。

 但由于位于左上角的` 3x3` 宮內(nèi)有兩個 `8` 存在, 因此這個數(shù)獨是無效的。

說明:
一個有效的數(shù)獨(部分已被填充)不一定是可解的。
只需要根據(jù)以上規(guī)則,驗證已經(jīng)填入的數(shù)字是否有效即可。
給定數(shù)獨序列只包含數(shù)字 1-9 和字符 "."
給定數(shù)獨永遠是 9x9 形式的。

答案參考:

/**
 * @param {character[][]} board
 * @return {boolean}
 */

var isValidSudoku = function(board) {
//   檢查每一行
  for (let arr of board) {            
    let row = []
    for (let c of arr) {
      if (c !== ".") row.push(c);
    }
    let set = new Set(row)
    if (set.size !== row.length) return false;
  }
  
//   檢查每一列
  for (let i = 0; i < 9; i++) {
    let col = []
    board.map( arr => {
      if (arr[i] !== ".") col.push(arr[i])
    })
    let set = new Set(col)
    if (set.size !== col.length) return false;
  }
  
//   檢查每個小方塊
  for (let x = 0; x < 9; x += 3) {
    for (let y = 0; y < 9; y += 3) {
      let box = []
      for (let a = x; a < 3 + x; a ++) {
        for (let b = y; b < 3 + y; b ++) {
          if (board[a][b] !== ".") box.push(board[a][b])
        }
      }
      let set = new Set(box)
      if (set.size !== box.length) return false
    }
  }
  
  return true
};

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://www.ezyhdfw.cn/yun/101781.html

相關(guān)文章

  • LeetCode】數(shù)組初級算法-有效數(shù)獨

    摘要:題目描述有效的數(shù)獨判斷一個的數(shù)獨是否有效。上圖是一個部分填充的有效的數(shù)獨。數(shù)獨部分空格內(nèi)已填入了數(shù)字,空白格用表示。說明一個有效的數(shù)獨部分已被填充不一定是可解的。只需要根據(jù)以上規(guī)則,驗證已經(jīng)填入的數(shù)字是否有效即可。 題目描述 有效的數(shù)獨判斷一個 9x9 的數(shù)獨是否有效。只需要根據(jù)以下規(guī)則,驗證已經(jīng)填入的數(shù)字是否有效即可。 數(shù)字 1-9 在每一行只能出現(xiàn)一次。數(shù)字 1-9 在每一列只能出...

    wyk1184 評論0 收藏0
  • leetcode36 Valid Sudoku 查看數(shù)獨是否合法

    摘要:如果重復(fù)則不合法,否則極為合法。在這里我們使用數(shù)組代替作為存儲行列和小正方形的值得數(shù)據(jù)結(jié)構(gòu)。我存儲這所有的行列小正方形的情況,并判斷當前值是否重復(fù)。外循環(huán)則代表對下一行,下一列和下一個小正方形的遍歷。 題目要求 Determine if a Sudoku is valid, according to: Sudoku Puzzles - The Rules. The Sudoku boa...

    wing324 評論0 收藏0
  • leetcode 36 Valid Sudoku

    摘要:要求我們判斷已經(jīng)填入的數(shù)字是否滿足數(shù)獨的規(guī)則。即滿足每一行每一列每一個粗線宮內(nèi)的數(shù)字均含,不重復(fù)。沒有數(shù)字的格子用字符表示。通過兩層循環(huán)可以方便的檢查每一行和每一列有沒有重復(fù)數(shù)字。對于每個,作為縱坐標,作為橫坐標。 題目詳情 Determine if a Sudoku is valid, according to: Sudoku Puzzles - The Rules.The Sudo...

    entner 評論0 收藏0
  • 6-9月技術(shù)文章匯總

    摘要:分布式的管理和當我在談?wù)摷軜?gòu)時我在談啥狀態(tài)碼詳解無狀態(tài)協(xié)議和請求支持哪些方法分層協(xié)議棧有哪些數(shù)據(jù)結(jié)構(gòu)運用場景說說你常用的命令為什么要有包裝類面向?qū)ο蟮奶卣魇巧妒巧队惺裁春锰幭到y(tǒng)設(shè)計工程在線診斷系統(tǒng)設(shè)計與實現(xiàn)索引背后的數(shù)據(jù)結(jié)構(gòu)及算法原理軟技能 HTTP 【HTTP】分布式session的管理 【HTTP】Cookie和Session 【HTTP】當我在談?wù)揜estFul架構(gòu)時我在談啥?...

    miya 評論0 收藏0
  • TypeScript實現(xiàn)數(shù)組相關(guān)簡單算法

    摘要:本文只是簡單理解算法,并不會深入的討論。大部分來自數(shù)組部分。如果數(shù)組中每個元素都不相同,則返回。示例輸入輸出加給定一個由整數(shù)組成的非空數(shù)組所表示的非負整數(shù),在該數(shù)的基礎(chǔ)上加一。盡量減少操作次數(shù)。 算法(algorithm),在數(shù)學(xué)(算學(xué))和計算機科學(xué)之中,為任何良定義的具體計算步驟的一個序列,常用于計算、數(shù)據(jù)處理和自動推理。精確而言,算法是一個表示為有限長列表的有效方法。算法應(yīng)包含清晰...

    cloud 評論0 收藏0

發(fā)表評論

0條評論

elva

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<