国产亚洲精品福利在线无卡一,国产精久久一区二区三区,亚洲精品无码国模,精品久久久久久无码专区不卡

當(dāng)前位置: 首頁 > news >正文

網(wǎng)站平臺建設(shè)咨詢合同好用的磁力搜索引擎

網(wǎng)站平臺建設(shè)咨詢合同,好用的磁力搜索引擎,新疆建設(shè)學(xué)院網(wǎng)站,網(wǎng)站建設(shè) 簽約信息【算法學(xué)習(xí)】—n皇后問題(回溯法) 1. 什么是回溯法? 相信"迷宮"是許多人兒時的回憶,大家小時候一定都玩過迷宮游戲。我們從不用別人教,都知道走迷宮的策略是: 當(dāng)遇到一個岔路口,會有以下兩種情況&#xf…

【算法學(xué)習(xí)】—n皇后問題(回溯法)

1. 什么是回溯法?

相信"迷宮"是許多人兒時的回憶,大家小時候一定都玩過迷宮游戲。我們從不用別人教,都知道走迷宮的策略是:

當(dāng)遇到一個岔路口,會有以下兩種情況:

存在沒走過的路。此時可以任意選一條沒走過的路深入,只要記住我們所走過的路徑即可。

倘若下次再來到這個路口,便不再沿著走過的路徑繼續(xù)深入,而是沿著沒走過的路徑深入下去;

所有路都已經(jīng)走過。如果所有岔路口都已經(jīng)遍歷,則回退至上一個最近的岔路口。

當(dāng)遇到死胡同,便回退到剛才距離最近的岔路口。

不斷前進(jìn)并重復(fù)該過程,直到找到終點(diǎn)或回退到起點(diǎn)位置。

其實(shí),這就是回溯法:一個基于深度優(yōu)先搜索和約束函數(shù)的問題求解方法。

(1)、n皇后問題

在這里插入圖片描述

在這里插入圖片描述

📢 非遞歸求解n皇后問題

#include <math.h>
#include <stdio.h>
#include <stdlib.h>#define N 4int q[N + 1]; // 存儲皇后的列號int check(int j)
{ // 檢查第i個皇后的位置是否合法int i;for (i = 1; i < j; i++){if (q[i] == q[j] || abs(i - j) == abs(q[i] - q[j])){ // 判斷是否在同一斜線上return 0;}}return 1;
}void queen()
{ //int i;for (i = 1; i <= N; i++){q[i] = 0;}int answer = 0; // 方案數(shù)int j = 1;      // 表示正在擺放第j個皇后while (j >= 1){q[j] = q[j] + 1; // 讓第j個皇后向后一列擺放while (q[j] <= N && !check(j)){                    // 判斷第j個皇后的位置是否合法q[j] = q[j] + 1; // 不合法就往后一個位置擺放}if (q[j] <= N){ // 表示第j個皇后的找到一個合法的位置if (j == N){ // 找到了一組皇后的解answer = answer + 1;printf("放案%d:", answer);for (i = 1; i <= N; i++){printf("%d", q[i]);}printf("\n");}else{ // 繼續(xù)擺放下一個皇后j = j + 1;}}else{ // 表示第j個皇后找不到一個合法的位置q[j] = 0;  // 還原第j個皇后的位置j = j - 1; // 回溯}}
}
int main()
{queen();return 0;
}

📢 遞歸求解n皇后問題

#include <math.h>
#include <stdio.h>
#include <stdlib.h>#define N 4int answer=0;int q[N + 1]; // 存儲皇后的列號int check(int j)
{ // 檢查第i個皇后的位置是否合法int i;for (i = 1; i < j; i++){if (q[i] == q[j] || abs(i - j) == abs(q[i] - q[j])){ // 判斷是否在同一斜線上return 0;}}return 1;
}void queen(int j){int i;for(i=1;i<=N;i++){q[j]=i;
if(check(j)){// 當(dāng)擺放的皇后位置為合法時if(j==N){//找到了N皇后的一組解answer=answer+1;printf("方案%d:",answer);for(i=1;i<=N;i++){printf("%d",q[i]);}printf("\n");}else{queen(j+1);//遞歸擺放下一個位置}
}}
}int main()
{queen(1);return 0;
}

在這里插入圖片描述

http://m.aloenet.com.cn/news/33768.html

相關(guān)文章:

  • 網(wǎng)站開發(fā)申請百度推廣查詢
  • 做中學(xué)網(wǎng)站現(xiàn)在做網(wǎng)絡(luò)推廣好做嗎
  • 如何自建網(wǎng)站百度識圖識別
  • 網(wǎng)站建設(shè)公司運(yùn)營經(jīng)驗(yàn)徐州seo網(wǎng)站推廣
  • 網(wǎng)站設(shè)計(jì)需求說明書企業(yè)網(wǎng)站大全
  • 網(wǎng)站留言系統(tǒng)編寫代碼站長工具 seo查詢
  • 物理網(wǎng)絡(luò)設(shè)計(jì)是什么寧波seo網(wǎng)絡(luò)推廣推薦
  • 網(wǎng)絡(luò)推廣銷售怎么做seo文章生成器
  • 茂名優(yōu)化網(wǎng)站建設(shè)優(yōu)化seo廠家
  • 網(wǎng)站建設(shè)應(yīng)當(dāng)注意韓國今日特大新聞
  • 網(wǎng)站建設(shè) 化工網(wǎng)絡(luò)推廣的話術(shù)怎么說
  • 網(wǎng)站分站的實(shí)現(xiàn)方法微博推廣方式
  • 上海網(wǎng)站建設(shè)聚眾網(wǎng)絡(luò)杭州seo網(wǎng)站排名
  • 把網(wǎng)站傳到服務(wù)器上怎么做友情鏈接怎么交換
  • 有哪些網(wǎng)站可以做視頻百度一下免費(fèi)下載安裝
  • 類似百科式的網(wǎng)站建設(shè)app推廣平臺
  • asp網(wǎng)站助手北京網(wǎng)站優(yōu)化步
  • 免費(fèi)制圖網(wǎng)站關(guān)鍵詞seo公司推薦
  • 中國做的電腦系統(tǒng)下載網(wǎng)站免費(fèi)大數(shù)據(jù)網(wǎng)站
  • wordpress怎么修改文字白楊seo教程
  • 甘肅省城鄉(xiāng)與住房建設(shè)廳網(wǎng)站怎么網(wǎng)站推廣
  • 徐州網(wǎng)站建設(shè)方案推廣網(wǎng)址查詢注冊信息查詢
  • 用新域名做網(wǎng)站排名快嗎上海外貿(mào)seo
  • 怎么模仿別人做網(wǎng)站臺州專業(yè)關(guān)鍵詞優(yōu)化
  • 公司官網(wǎng)網(wǎng)站如何建立朋友圈的廣告推廣怎么弄
  • 做網(wǎng)站用js的好處seo的中文含義是
  • 丹陽網(wǎng)站建設(shè)服務(wù)網(wǎng)絡(luò)銷售是什么
  • 網(wǎng)站的做網(wǎng)站公司哪家好鄭州百度推廣代運(yùn)營
  • 星空影視文化傳媒制作公司網(wǎng)站seo綜合診斷
  • 日本男女做受網(wǎng)站公司專業(yè)網(wǎng)站建設(shè)