欢迎来到天天文库
浏览记录
ID:59310598
大小:12.50 KB
页数:2页
时间:2020-09-05
《非递归的回溯解八皇后问题.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、非递归的解回溯解八皇后问题#include#includeusingnamespacestd;intnum=0;voidshow(intn,int*col){cout<<"No."<<++num<2、=col[n]3、4、int(fabs(col[i]-col[n]))==n-i)return1;return0;}voidqueen(intn,intcol[]){int*a=newint[n+1];a[1]=1;for(inti=1;;){for(;a[i]<=n&&i<=n;){col[i]=a[i];if(!attack(i,col)){i++;a[i]=1;continue;}a[i]++;}if(i>n){show(n,col);a[--i]++;}if(a[i]>n)a[--i]++;if(i==0)return;5、}}intmain(){intn;cin>>n;int*col=newint[n+1];queen(n,col);return0;}
2、=col[n]
3、
4、int(fabs(col[i]-col[n]))==n-i)return1;return0;}voidqueen(intn,intcol[]){int*a=newint[n+1];a[1]=1;for(inti=1;;){for(;a[i]<=n&&i<=n;){col[i]=a[i];if(!attack(i,col)){i++;a[i]=1;continue;}a[i]++;}if(i>n){show(n,col);a[--i]++;}if(a[i]>n)a[--i]++;if(i==0)return;
5、}}intmain(){intn;cin>>n;int*col=newint[n+1];queen(n,col);return0;}
此文档下载收益归作者所有