亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > C++ > 正文

C語言基于回溯算法解決八皇后問題的方法

2020-05-23 13:27:07
字體:
來源:轉載
供稿:網友

本文實例講述了C語言基于回溯算法解決八皇后問題的方法。分享給大家供大家參考,具體如下:

問題描述:

八皇后問題,是一個古老而著名的問題,是回溯算法的典型案例:在8X8格的國際象棋棋盤上擺放八個皇后,使其不能互相攻擊,即任意兩個皇后都不能處于同一行、同一列或同一斜線上,問有多少種擺法。

問題求解:

采用回溯算法,即從第一行開始,依次探查可以放置皇后的位置,若找到,則放置皇后,開始探查下一行;若該行沒有位置可以放置皇后,則回溯至上一行,清除該行放置皇后的信息,從該行原本放置皇后的下一個位置開始探查可以放置皇后的位置。求所有解時,每找到一組解,就清除這一組解最后一個皇后的位置信息,開始探查該行另外一個可以放置皇后的位置,依次回溯求解。

存儲結構:

一維數組:col[8]:存放第i列有無皇后的標記信息
一維數組:left[15]:存放每一條左斜線上的有無皇后的標記信息
一維數組:right[15]:存放每一條右直線上有無皇后的標記信息
一維數組:Q[8]:存放第i行的皇后的列下標

代碼實現:

#include<stdio.h>#define N 8int col[N] = { 0 };int right[2 * N - 1] = { 0 };int left[2 * N - 1] = { 0 };int Q[N];int cnt = 0;void Print(){  int i;  for (i = 0; i < N; i++)  {    for (int j = 0; j < N; j++)    {      if (Q[i] == j)        printf("■");      else        printf("□");    }    printf("/n");  }  printf("==========================/n");  cnt++;}void Queen(int i){  int j;  for (j = 0; j < N; j++)  {    if ((!col[j]) && (!left[i + j]) && (!right[7 + i - j]))    {      Q[i] = j;//放皇后      col[j] = 1;      left[i + j] = 1;      right[N - 1 + i - j] = 1;//已有皇后的標記      if (i < N - 1)      {        Queen(i + 1);      }      else      {        Print();      }      col[j] = 0;      right[N - 1 + i - j] = 0;      left[i + j] = 0;//清除標記,查找下一組解    }  }}int main(void){  Queen(0);  printf("%d", cnt);  getchar();  return 0;}

運行結果:

一共92組解,前面結果略去。。

C語言,回溯算法,八皇后問題

希望本文所述對大家C語言程序設計有所幫助。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产欧美日韩综合精品| 亚洲欧美国产va在线影院| 91影院在线免费观看视频| 日韩免费在线观看视频| 日韩电影免费观看在线观看| 国产在线精品一区免费香蕉| 亚洲欧美国产另类| 欧美老女人www| 日韩在线观看免费高清| 亚洲欧美成人精品| 成人国产精品免费视频| 成人女保姆的销魂服务| 欧美精品在线播放| 久久精品国产综合| 日韩精品在线观看一区二区| 久久人人爽人人爽人人片av高清| 亚洲综合中文字幕68页| 亚洲a一级视频| 欧美丰满少妇xxxxx做受| 色偷偷91综合久久噜噜| 日韩欧美aaa| 中文字幕无线精品亚洲乱码一区| 日韩免费精品视频| 亚洲视频一区二区| 国内精品视频在线| 91久久精品国产| 欧美中文字幕在线观看| 欧美大片在线影院| 国内揄拍国内精品| 大伊人狠狠躁夜夜躁av一区| 欧美激情va永久在线播放| 日韩有码视频在线| 日韩激情av在线免费观看| 日韩影视在线观看| 色青青草原桃花久久综合| 日本高清不卡在线| 精品久久久久久国产91| 欧美一级黑人aaaaaaa做受| 96精品久久久久中文字幕| 一区二区三区国产在线观看| 国产综合色香蕉精品| 久久精品国产久精国产思思| 一本色道久久综合狠狠躁篇的优点| 国产精品久久久久久影视| 性金发美女69hd大尺寸| 欧美一区二区三区精品电影| 国产精品羞羞答答| 成人天堂噜噜噜| 国产精品一区av| 亚洲无亚洲人成网站77777| 亚洲黄页视频免费观看| 国产精品一区电影| 国产成人极品视频| 亚洲а∨天堂久久精品喷水| 亚洲成人aaa| 国产精品第三页| 91超碰caoporn97人人| 久久久久九九九九| 成人中文字幕在线观看| 久久久免费观看视频| 自拍偷拍亚洲精品| 大荫蒂欧美视频另类xxxx| 国产一区二区三区在线观看视频| 亚洲性生活视频在线观看| 欧美日韩国产一区二区三区| 欧美丰满老妇厨房牲生活| 久久99热精品| 91精品国产自产91精品| 韩剧1988在线观看免费完整版| 欧美性猛交xxxx乱大交极品| 日本久久久久久| 最近2019中文字幕在线高清| 亚洲天堂av电影| 中文字幕精品视频| 国产一区二区黑人欧美xxxx| 欧美日韩成人精品| 国产在线日韩在线| 久久免费精品日本久久中文字幕| 亚洲精品久久久久久久久| 成人h片在线播放免费网站| 久久久91精品国产一区不卡| 国产精品h片在线播放| 色悠悠久久88| 国产噜噜噜噜噜久久久久久久久| 国产精品情侣自拍| 最近2019年日本中文免费字幕| 国产精品久久久久久久av大片| 久久久之久亚州精品露出| 国产日产欧美精品| 久久久免费观看| 亚洲精品成人网| 亚洲欧美国内爽妇网| 欧美专区中文字幕| 色yeye香蕉凹凸一区二区av| 成人写真视频福利网| 久久国产精品99国产精| 欧美国产精品va在线观看| 91欧美日韩一区| 成人中文字幕在线观看| 久久高清视频免费| 成人h视频在线观看播放| 欧美夜福利tv在线| 日韩极品精品视频免费观看| 国产综合香蕉五月婷在线| 91在线精品视频| 色婷婷久久av| 色综合久久中文字幕综合网小说| 亚洲人线精品午夜| 欧美日韩成人网| 91国产视频在线播放| 精品久久久久久中文字幕一区奶水| 欧美日韩中文在线观看| 欧美一级黄色网| 日韩av网址在线观看| 日韩网站免费观看| 亚洲视频欧洲视频| 欧美精品在线免费观看| 高跟丝袜欧美一区| 亚洲国产精品久久久久秋霞蜜臀| 91情侣偷在线精品国产| 97久久精品人人澡人人爽缅北| 一区二区三区久久精品| 亚洲综合国产精品| 一本久久综合亚洲鲁鲁| 日韩av最新在线| 96sao精品视频在线观看| 国产黑人绿帽在线第一区| 国产精品视频99| 黄色成人在线播放| 欧美在线观看网址综合| 国产精品吊钟奶在线| 精品美女永久免费视频| 不卡av电影院| 欧美第一页在线| 久久久国产影院| 中文字幕日韩欧美在线视频| 狠狠久久亚洲欧美专区| 美女久久久久久久久久久| 2019中文字幕在线观看| 久久91精品国产91久久久| 亚洲电影在线观看| 国产精品自拍网| 久久精品男人天堂| 欧美夫妻性视频| 日韩中文av在线| 国产成人精品视频在线观看| 668精品在线视频| 中文字幕免费精品一区| 久久在精品线影院精品国产| 亚洲美女视频网站| 久久精品人人爽| 亚洲一区亚洲二区亚洲三区| 91精品在线影院| 欧美性xxxx极品hd欧美风情| 欧美成人精品h版在线观看| 久久黄色av网站| 97视频在线播放| www.亚洲一区| 日韩av大片在线| 亚洲精品国产免费| 91嫩草在线视频| 欧美中文字幕在线视频| 久久精品久久精品亚洲人| 亚洲人午夜精品免费|