#includeusingnamespacestd;intLineNum[9];//第i列的皇后要放的行位置(只用其中的列號1到8)bo">
人工智能實驗二-八皇后問題

人工智能實驗二-八皇后問題

ID:38614079

大?。?4.50 KB

頁數(shù):7頁

時間:2019-06-16

人工智能實驗二-八皇后問題_第1頁
人工智能實驗二-八皇后問題_第2頁
人工智能實驗二-八皇后問題_第3頁
人工智能實驗二-八皇后問題_第4頁
人工智能實驗二-八皇后問題_第5頁
資源描述:

《人工智能實驗二-八皇后問題》由會員上傳分享,免費在線閱讀,更多相關內(nèi)容在教育資源-天天文庫

1、【實驗名稱】人工智能實驗二:八皇后問題實驗代碼:#include#includeusingnamespacestd;intLineNum[9];//第i列的皇后要放的行位置(只用其中的列號1到8)boola[9];//a[i]為1表示第i行上尚未放皇后boolb[15];//b[i]為1表示第i條斜對角線上尚未放皇后(斜對角線指的是"/"狀對角線,該對角線上各點的行列號之和i+j為一個常數(shù))boolc[15];//c[i]為1表示第i條反斜對角線上尚未放皇后(反斜對角線指的是""狀對角線,該對

2、角線上各點的行列號之差i-j為一個常數(shù))。intcount=0;//計數(shù)器,用于計算方法總數(shù)classQueen{inti;//成員變量,列號public:Queen(intx)//構造函數(shù){i=x;}voidsolve(int);//成員函數(shù)};voidQueen::solve(inti)//成員函數(shù)的實現(xiàn){intj;for(j=1;j<9;j++)//遍歷行{if(a[j]&&b[i+j-2]&&c[i-j+7])//用于判斷并實現(xiàn):如果在第j行的第i列上放置皇后安全的話,則將一枚皇后放置到那兒。{LineNum[i]=j;//記

3、錄皇后位置a[j]=false;b[i+j-2]=false;c[i-j+7]=false;solve(i+1);//遞歸調(diào)用solvea[j]=true;b[i+j-2]=true;c[i-j+7]=true;}}if(i>8)//擺放皇后之后,若i=8即已放滿時則遞歸出口;否則通過solve(i+1);進行遞歸調(diào)用。{count++;cout<<"第"<

4、secout<<"*";}cout<

5、ueen.solve(1);//第1列開始的連續(xù)8列上均放上皇后cout<<"一共有"<

當前文檔最多預覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當前文檔最多預覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學公式或PPT動畫的文件,查看預覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權歸屬用戶,天天文庫負責整理代發(fā)布。如果您對本文檔版權有爭議請及時聯(lián)系客服。
3. 下載前請仔細閱讀文檔內(nèi)容,確認文檔內(nèi)容符合您的需求后進行下載,若出現(xiàn)內(nèi)容與標題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。