我的項目實戰(數獨)

我的項目實戰

項目地址:https://github.com/kddll/sodukugit


做業地址github

https://edu.cnblogs.com/campus/fzu/SoftwareEngineering2015/homework/859算法

Documents

  • 項目需求編程

    利用程序隨機構造出N個已解答的數獨棋盤 。
    編程語言:C++
    編程IDE:推薦使用Visual Studio 2017
    源代碼管理平臺:Github數組

  • 解題思路:
    剛開始作這道題的時候,徹底不知道該怎麼下手,百度上大都使用回溯法來作,由於沒什麼思路,因此,我就用回溯法和隨機排列的方法來解決,可是由於算法比較很差,因此目前只寫出了一個解。
    思路是:創建一個二維數組,肯定第一個數組的值,而後第一行利用隨機排列,從第二行開始搜索符合條件的結果。搜索過程:寫一個判斷函數,參數爲數組下標。1.i,j處是否能夠存數據(下標大於9就不符合題目要求了)2.判斷同一行,同一列,一個小的九宮格是否有出現相同的數字,若是有,則不能填入,沒有就能夠填入。數據結構

主要代碼


編程語言

測試


函數

效能分析
設定n爲200

主要時間仍是花費在查找正確解上!!



總結:
此次做業主要是在代碼上話的時間比較多,由於本身代碼能力比較弱,因此在百度上查找了許多代碼,進行借鑑,數據結構學的很差,有一些代碼還不怎麼看的懂。關於此次實踐,個人代碼只能找出一個準確結果,往後有解決辦法,會繼續改進的!測試

相關文章
相關標籤/搜索