[問題] 程式碼看不懂...
上網看解數獨程式的程式碼(含教學)
http://oddest.nc.hcc.edu.tw/su304.htm
加上行號可編譯版本:http://gist.github.com/121369
裡面的第66行到88行 tryAns()函數
int tryAns()
{
// 測試求解
int sp=getNextBlank(-1) ;// 取得第一個空白的位置開始填入數字
do
{
sudoku[sp]++ ; // 將本位置數字加 1
if(sudoku[sp]>9) // 如果本位置的數字已大於 9 時則回到上一個位置繼續測試
{
sudoku[sp]= 0 ;
sp= pop() ;
}
else
{
/** 如果同行、列、九宮格都沒有相同的數字,則到下一個空白處繼續
當然,如果發現有相同的數字時,就需把原位置的數字加 1(所以本處什麼都不做)**/
if(check(sp)==0)
{
push(sp) ;
sp= getNextBlank(sp) ;
}
}
}while(sp>=0 && sp<81);
}
看了半天還是好難體會他的意思
請問有人看得懂嗎@@
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.113.91.19
推
06/01 21:06, , 1F
06/01 21:06, 1F
→
06/01 21:07, , 2F
06/01 21:07, 2F
→
06/01 21:09, , 3F
06/01 21:09, 3F
→
06/01 21:09, , 4F
06/01 21:09, 4F
→
06/01 21:10, , 5F
06/01 21:10, 5F
→
06/01 21:10, , 6F
06/01 21:10, 6F
→
06/01 21:11, , 7F
06/01 21:11, 7F
→
06/01 21:16, , 8F
06/01 21:16, 8F
→
06/01 21:17, , 9F
06/01 21:17, 9F
→
06/01 22:25, , 10F
06/01 22:25, 10F
→
06/02 04:12, , 11F
06/02 04:12, 11F
→
06/02 04:13, , 12F
06/02 04:13, 12F
推
06/02 11:21, , 13F
06/02 11:21, 13F
→
06/02 11:22, , 14F
06/02 11:22, 14F
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章