久久国产亚洲欧美日韩精品,国产精品一区在线麻豆,国产拍揄自揄精品视频网站,欧美日本一区二区三区免费,无码福利视频,亚洲无码视频喷水,亚洲三级色,亚洲狠狠婷婷综合久久久久

數(shù)獨(dú)實(shí)驗(yàn)報(bào)告

2020-10-10 報(bào)告

  Sudoku 數(shù)獨(dú)實(shí)驗(yàn)報(bào)告

  一、 算法描述

  求解Sudoku讓人最容易想到的方法是窮舉每個(gè)方格可能的值,如果符合條件,則得到解,不符合條件則進(jìn)行回溯。通過(guò)遞歸的方法,顯然可以得到數(shù)獨(dú)的解。

  我想到的簡(jiǎn)單的遞歸方法,是每一行從左到右,試驗(yàn)每一個(gè)方格可能的數(shù)字,進(jìn)行遞歸。這種方法看似非常麻煩,實(shí)際上對(duì)于一般的數(shù)獨(dú)題,速度是非常快的,思想比較簡(jiǎn)單,寫(xiě)出來(lái)的代碼也非常簡(jiǎn)單、易懂。

  算法1:簡(jiǎn)單遞歸方法

  從第一個(gè)格開(kāi)始,從1到9試驗(yàn),是否滿足行、列、九宮格互不相同的條件。若滿足條件,則填入該數(shù)字,再試驗(yàn)下一個(gè)格。當(dāng)一個(gè)格子出現(xiàn)沒(méi)有數(shù)字能填的情況時(shí),說(shuō)明已經(jīng)填的數(shù)字有誤,回溯,再進(jìn)行遞歸。

  算法2:優(yōu)化的遞歸算法

  先遍歷所有格子,統(tǒng)計(jì)每種格子可能出現(xiàn)數(shù)字的個(gè)數(shù)。每次挑選可能出現(xiàn)數(shù)字個(gè)數(shù)最少的格子來(lái)進(jìn)行遞歸。

  設(shè)置三維數(shù)組poss[i][j][k]來(lái)存儲(chǔ)可能出現(xiàn)數(shù)字的信息。poss[i][j][0]記錄i行j列的格子可能出現(xiàn)數(shù)字的個(gè)數(shù),poss[i][j][k](1<=k<=9) 若poss[i][j][k]=1,表示k可能在(i,j)格出現(xiàn)。若poss[i][j][k]=0,表示k不可能在(i,j)格中出現(xiàn)。每次找poss[i][j][0]最小的格子,來(lái)進(jìn)行下一個(gè)遞歸。

  算法3:生成數(shù)獨(dú)棋盤(pán)的算法

  我最開(kāi)始的想法是窮舉法,隨機(jī)生成滿足行各不相同的9行,再判斷9宮格、每列是否符合要求,符合條件時(shí),隨機(jī)生成停止。然而,這種算法的當(dāng)然時(shí)間復(fù)雜度顯然是過(guò)高。第99一步的隨機(jī)生成的次數(shù)是9*9/P9=9608。隨機(jī)生成一組棋盤(pán)耗時(shí)就非常大。后來(lái),我從求解的個(gè)數(shù)的程序獲得啟發(fā)。算法二對(duì)于1000多組解的數(shù)獨(dú)棋盤(pán),解起來(lái)也很快。隨機(jī)生成填9個(gè)方格,再用算法一的方法解出來(lái),取第一組正確的解作為棋盤(pán)即可生成填好的棋盤(pán)。再把一定數(shù)量的格子的數(shù)字隨機(jī)刪除,計(jì)算解的個(gè)數(shù)。如果解唯一,就得到了棋盤(pán)。

  二、數(shù)據(jù)結(jié)構(gòu)

  這三種算法的數(shù)據(jù)結(jié)構(gòu)不是非常復(fù)雜,只是普通的數(shù)組。

  算法一:數(shù)組a[i][j]

  算法二:數(shù)組a[i][j]和poss[i][j][k]

  算法三:數(shù)組a[i][j]和poss[i][j][k]

  三、時(shí)間效率分析

  算法1:這種算法在tsinsen系統(tǒng)上只用了15ms得到全部答案。

  雖然這種算法在tsinsen系統(tǒng)的'測(cè)試中有很好的表現(xiàn),但是我試了試在幾道骨灰級(jí)難度的題,發(fā)現(xiàn)這種算法可能會(huì)用到10秒以上的時(shí)間,并且測(cè)試數(shù)據(jù)不同,時(shí)間差異非常大。

  我認(rèn)為,這種算法的漏洞在于,如果開(kāi)始的格子可能出現(xiàn)的數(shù)字非常多,遞歸樹(shù)開(kāi)始的枝會(huì)非常多。并且,我們一般做數(shù)獨(dú)題,都會(huì)先挑可能出現(xiàn)數(shù)字個(gè)數(shù)最少的格子來(lái)填,充分利用了已知條件。然而,這種算法只按格子的行列順序來(lái)試驗(yàn),顯然非常傻。于是,我想出了第二種算法。

  算法2:這種算法耗時(shí)長(zhǎng)。

  非常令人失望的是,雖然它能在短時(shí)間內(nèi)解出骨灰級(jí)題目,但是,和上一個(gè)算法相比,對(duì)于簡(jiǎn)單的題目,它比較耗時(shí)。在tsinsen系統(tǒng)中測(cè)試的時(shí)間是91ms。它的缺陷在于,每次遞歸都必須更新(i,j)格子所在的行、列、九宮格所有的元素。每次要求20個(gè)數(shù)的poss[i][j][]。回溯同樣要更新。并且求poss[i][j][]的函數(shù)時(shí)間復(fù)雜度是O(n)。每一步所耗時(shí)間比上一種算法多很多。但是,總的試驗(yàn)的步數(shù)能顯著減少。 所以,這種算法適用于數(shù)獨(dú)解題的動(dòng)畫(huà)演示和解極難題目。

  四、程序結(jié)構(gòu)

  五、運(yùn)行結(jié)果

  六、總結(jié)和反思

  后來(lái)老師提高了難度,要求程序能求出多解數(shù)獨(dú)題的解的個(gè)數(shù)。幾千個(gè)解的數(shù)據(jù)都能迅速得出答案,但是幾萬(wàn)個(gè)解的數(shù)據(jù),需要很長(zhǎng)時(shí)間,更別提幾百萬(wàn)的數(shù)據(jù)。這兩種遞歸的算法都有問(wèn)題,優(yōu)化的空間也有限,需要更強(qiáng)大、高效的算法。

  這次Project讓我不斷思考,改進(jìn)了最初的算法。編程是確實(shí)是一個(gè)克服困難、不斷改進(jìn)與超越的過(guò)程。總有新的數(shù)據(jù)擺在面前,把原來(lái)的算法打擊得很慘,激勵(lì)著我們研究更加先進(jìn)的算法。

【數(shù)獨(dú)實(shí)驗(yàn)報(bào)告范文】相關(guān)文章:

實(shí)驗(yàn)報(bào)告范文01-20

實(shí)驗(yàn)報(bào)告范文(15篇)01-20

實(shí)驗(yàn)報(bào)告范文15篇01-20

實(shí)驗(yàn)報(bào)告范文(集錦15篇)01-20

倉(cāng)儲(chǔ)實(shí)踐實(shí)驗(yàn)報(bào)告01-13

《血染的實(shí)驗(yàn)報(bào)告》讀后感01-20

民間文學(xué)課題實(shí)驗(yàn)報(bào)告01-20

整十?dāng)?shù)加減整十?dāng)?shù)評(píng)課稿01-18

《血染的實(shí)驗(yàn)報(bào)告》讀后感3篇01-20

獨(dú)店中學(xué)開(kāi)學(xué)典禮校長(zhǎng)講話稿01-07

電氣實(shí)驗(yàn)報(bào)告參考 實(shí)驗(yàn)報(bào)告
主站蜘蛛池模板: 人人爱天天做夜夜爽| 9久久伊人精品综合| 美女被狂躁www在线观看| 欧美一级大片在线观看| 国产欧美一区二区三区视频在线观看| 四虎亚洲精品| 亚洲色大成网站www国产| 丝袜亚洲综合| 99re视频在线| 欧美特黄一级大黄录像| 国产美女精品一区二区| 99精品视频九九精品| 国产亚洲精品在天天在线麻豆| 色视频国产| 97国产精品视频自在拍| 欧美黄网在线| 666精品国产精品亚洲| 99视频有精品视频免费观看| 日韩a在线观看免费观看| 国产精品观看视频免费完整版| 99国产在线视频| 欧美午夜精品| 激情综合网址| 久久久久久久蜜桃| 青青青国产在线播放| 久久精品这里只有国产中文精品| 午夜国产精品视频黄| 成人年鲁鲁在线观看视频| 欧美一级片在线| 国产综合在线观看视频| 久久中文字幕不卡一二区| 国产95在线 | 国产精品国产三级国产专业不 | 亚洲精品成人7777在线观看| 免费在线看黄网址| 亚洲国产一成久久精品国产成人综合| 无码中文字幕精品推荐| 国产日本视频91| 国产区免费精品视频| 日本精品中文字幕在线不卡 | 玖玖精品视频在线观看| 日韩国产一区二区三区无码| 九九热视频精品在线| 亚洲第一视频网站| 中文字幕日韩欧美| 国产精品午夜福利麻豆| 亚洲无码视频图片| 国产香蕉在线视频| 欧美日本二区| 欧美成在线视频| 成人福利一区二区视频在线| 免费观看欧美性一级| 国产亚洲精| 国产对白刺激真实精品91| 毛片免费视频| 国产精品乱偷免费视频| 国产精品视频导航| 国产超薄肉色丝袜网站| 久久人午夜亚洲精品无码区| 99在线视频网站| 亚洲第一av网站| 欧美激情第一区| 欧美19综合中文字幕| 日韩福利在线观看| 狠狠色噜噜狠狠狠狠奇米777| 99精品热视频这里只有精品7 | 日本人妻一区二区三区不卡影院 | 精品乱码久久久久久久| 色国产视频| 日本精品αv中文字幕| 国产一二视频| 免费观看无遮挡www的小视频| AV天堂资源福利在线观看| 欧美笫一页| 99视频免费观看| 亚洲国产精品久久久久秋霞影院| 国产偷倩视频| 欧美日韩一区二区三区四区在线观看 | 乱系列中文字幕在线视频| 五月天香蕉视频国产亚| 国产一区二区网站| 青青热久免费精品视频6|