最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

JS實(shí)現(xiàn)判斷有效的數(shù)獨(dú)算法示例

 更新時(shí)間:2019年02月25日 12:00:53   作者:gqj.cn  
這篇文章主要介紹了JS實(shí)現(xiàn)判斷有效的數(shù)獨(dú)算法,結(jié)合實(shí)例形式分析了javascript數(shù)獨(dú)判斷的原理及相關(guān)算法實(shí)現(xiàn)、使用操作技巧,需要的朋友可以參考下

本文實(shí)例講述了JS實(shí)現(xiàn)判斷有效的數(shù)獨(dú)算法。分享給大家供大家參考,具體如下:

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

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

數(shù)獨(dú)部分空格內(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

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

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

說明:

1.一個(gè)有效的數(shù)獨(dú)(部分已被填充)不一定是可解的。
2.只需要根據(jù)以上規(guī)則,驗(yàn)證已經(jīng)填入的數(shù)字是否有效即可。
3.給定數(shù)獨(dú)序列只包含數(shù)字 1-9 和字符 ‘.' 。
4.給定數(shù)獨(dú)永遠(yuǎn)是 9x9 形式的。

<script>
var isValidSudoku = function(board) {
 const boxes = [{}, {}, {}, {}, {}, {}, {}, {}, {}];
 const cols = [{}, {}, {}, {}, {}, {}, {}, {}, {}];
 const rows = [{}, {}, {}, {}, {}, {}, {}, {}, {}];
 let test = [{}, {}, {}, {}, {}, {}, {}, {}, {}];
 for (let i = 0; i < 9; i++) {
  for (let j = 0; j < 9; j++) {
   const digit = board[i][j];
   if (digit !== '.') {
    const k = Math.floor(j / 3) + (Math.floor(i / 3) * 3);
    if (boxes[k][digit] || cols[j][digit] || rows[i][digit]) {
     return false;
    }
    boxes[k][digit] = cols[j][digit] = rows[i][digit] = true;
   }
  }
 }
 return true;
};
const board = [
 ["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"]
]
console.log(isValidSudoku(board))
</script>

使用在線HTML/CSS/JavaScript代碼運(yùn)行工具http://tools.jb51.net/code/HtmlJsRun測(cè)試上述代碼,可得如下運(yùn)行結(jié)果:

更多關(guān)于JavaScript相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《JavaScript數(shù)學(xué)運(yùn)算用法總結(jié)》、《JavaScript數(shù)據(jù)結(jié)構(gòu)與算法技巧總結(jié)》、《JavaScript數(shù)組操作技巧總結(jié)》、《JavaScript排序算法總結(jié)》、《JavaScript遍歷算法與技巧總結(jié)》、《JavaScript查找算法技巧總結(jié)》及《JavaScript錯(cuò)誤與調(diào)試技巧總結(jié)

希望本文所述對(duì)大家JavaScript程序設(shè)計(jì)有所幫助。

相關(guān)文章

  • JavaScript原生xmlHttp與jquery的ajax方法json數(shù)據(jù)格式實(shí)例

    JavaScript原生xmlHttp與jquery的ajax方法json數(shù)據(jù)格式實(shí)例

    這篇文章主要介紹了JavaScript原生xmlHttp與jquery的ajax方法json數(shù)據(jù)格式實(shí)例的相關(guān)資料,需要的朋友可以參考下
    2015-12-12
  • js函數(shù)參數(shù)設(shè)置默認(rèn)值的一種變通實(shí)現(xiàn)方法

    js函數(shù)參數(shù)設(shè)置默認(rèn)值的一種變通實(shí)現(xiàn)方法

    js函數(shù)中有個(gè)儲(chǔ)存參數(shù)的數(shù)組arguments,因此js版支持參數(shù)默認(rèn)值的函數(shù)可以通過另外一種變通的方法實(shí)現(xiàn)
    2014-05-05
  • 微信小程序拍照和攝像功能實(shí)現(xiàn)方法示例

    微信小程序拍照和攝像功能實(shí)現(xiàn)方法示例

    這篇文章主要介紹了微信小程序拍照和攝像功能實(shí)現(xiàn)方法,結(jié)合實(shí)例形式分析了微信小程序拍照與攝影功能的原理、相關(guān)實(shí)現(xiàn)技巧與注意事項(xiàng),需要的朋友可以參考下
    2019-02-02
  • 淺析java線程中斷的辦法

    淺析java線程中斷的辦法

    這篇文章給大家分享了java線程中斷的辦法以及相關(guān)知識(shí)點(diǎn)內(nèi)容,有需要的朋友們可以學(xué)習(xí)參考下。
    2018-07-07
  • JS中用EL表達(dá)式獲取上下文參數(shù)值的方法

    JS中用EL表達(dá)式獲取上下文參數(shù)值的方法

    下面小編就為大家分享一篇JS中用EL表達(dá)式獲取上下文參數(shù)值的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2018-03-03
  • Javascript類型轉(zhuǎn)換詳解

    Javascript類型轉(zhuǎn)換詳解

    這篇文章主要為大家介紹了Javascript類型轉(zhuǎn)換,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-01-01
  • 簡(jiǎn)單使用webpack打包文件的實(shí)現(xiàn)

    簡(jiǎn)單使用webpack打包文件的實(shí)現(xiàn)

    這篇文章主要介紹了簡(jiǎn)單使用webpack打包文件的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-10-10
  • Electron實(shí)現(xiàn)右鍵保存圖片到本地功能

    Electron實(shí)現(xiàn)右鍵保存圖片到本地功能

    Electron是開發(fā)跨平臺(tái)pc客戶端的利器,最近在使用它時(shí)遇到一個(gè)需要右鍵保存頁面中圖片的功能,Electron雖使用了Chromium內(nèi)核但卻無法直接使用系統(tǒng)右鍵,需要自定義右鍵菜單,然后添加圖片保存功能,以下是我的使用方法,需要的朋友可以參考下
    2024-07-07
  • JavaScript生成福利彩票雙色球號(hào)碼

    JavaScript生成福利彩票雙色球號(hào)碼

    無聊用javascript寫了個(gè)隨機(jī)產(chǎn)生福利彩票雙色球7個(gè)數(shù)字的號(hào)碼其中紅色球不會(huì)重復(fù),喜歡的可以下來看看,有意見的可以說說
    2015-05-05
  • 詳解webpack 最簡(jiǎn)打包結(jié)果分析

    詳解webpack 最簡(jiǎn)打包結(jié)果分析

    這篇文章主要介紹了詳解webpack 最簡(jiǎn)打包結(jié)果分析,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2019-02-02

最新評(píng)論

新巴尔虎左旗| 文登市| 仁怀市| 疏勒县| 商城县| 塘沽区| 乳山市| 思茅市| 都安| 杭锦旗| 莆田市| 海口市| 甘孜县| 台中县| 富阳市| 衡南县| 尉犁县| 广河县| 墨竹工卡县| 阿鲁科尔沁旗| 汝南县| 黄梅县| 和田市| 潮安县| 靖安县| 岳普湖县| 琼中| 英德市| 鄂伦春自治旗| 陈巴尔虎旗| 金沙县| 宁德市| 肇庆市| 南开区| 泗阳县| 茌平县| 屏边| 聊城市| 响水县| 屏南县| 乃东县|