




已阅读5页,还剩2页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
实 验 报 告实验名称 n皇后问题 课程名称 计算机算法设计与分析 专业班级: 学生姓名:学 号: 成 绩:指导老师: 实验日期:一、 实验内容要求在一个n*n的棋盘上放置n个皇后,使得它们彼此不受攻击。一个皇后可以攻击与之处在同一行或同一列或同一斜线上的任何其他棋子。二、 实验基本思想 典型深度优先遍历,假设某一行为当前状态,不断检查该行所有的位置是否能放一个皇后,检索的状态有两种: (1)先从首位开始检查,如果不能放置,接着检查该行第二个位置,依次检查下去,直到在该行找到一个可以放置一个皇后的地方,然后保存当前状态,转到下一行重复上述方法的检索。 (2)如果检查了该行所有的位置均不能放置一个皇后,说明上一行皇后放置的位置无法让所有的皇后找到自己合适的位置,因此就要回溯到上一行,重新检查该皇后位置后面的位置。三、 算法设计 问题的解可表示为x1:n, 表示皇后i放在棋盘的第i行的第xi列。 a)xixj ,ij :不允许将任何两个皇后放在同一列上; b)|j-i|xj-xi| :不允许两个皇后位于同一条斜线上。问题的解空间的形式为:要找出”四皇后”问题的解,最可靠的方法就是把各种情况全部检核一遍,将符合条件A的解找出来。但这样做,你要有相当耐心才行,这是很费时的。采用回溯算法进行求解,在搜索的过程中,将不满足条件要求的分支树减去,可以有效的降低算法的时间复杂性。n后问题的算法描述如下:剪枝函数:bool Ok(int t) int i; for(int i=0;i=n)cout第sum个方案:n;for(int i=1;i=n;i+) for(int j=1;j=n;j+) if(j=xi) cout1; else cout0; coutendl; sum+; else for(int i=0;in;i+) xt=i; if(Ok(t) Backtrack(t+1); 四、 实验结果五、实验代码 #includeusing namespace std;int *x;/当前解int n;/皇后的个数N int sum=1;bool Ok(int t)/检查参数所指示的这一行皇后放置方案是否满足要求 int i; for(int i=0;i=n)cout第sum个方案:n;for(int i=1;i=n;i+) for(int j=1;j=n;j+) if(j=xi) cout1; else cout0; coutendl; sum+; else for(int i=0;in;i+) xt=i; if(Ok(t) Backtrack(t+1); void main()coutn; x=(int *)malloc(sizeof(int)*n); Backtrack(0); cout一共的方案数为:sum-1n;system(pause);六、实验心得通过本次实验的学习,让我了解到了用回溯法可以搜索问题的所有解。它是一个既带有系统性又带有跳跃性的搜索算法,是按照深度优先策略,从根节点出发搜索解空间树。算法搜索至某一节点时,利用判断函数先判断该节点内是否包含问题的解,如果不包含则直接跳过,节省时间。相关的判断函数要根据实际问题来编写,此比较适合求解组合数较大的问题。总的来说,这次实验不仅让我基本掌握递归的思想,而且进一步提高了自己的自学能力
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 汽车行业行政年终总结报告
- 教师用餐补充协议书7篇
- 《腊八粥》沈从文课件
- 公司生产安全培训总结课件
- 《老人与海》书评课件
- 分包安全用电协议模板6篇
- 山西2025年招标采购从业人员考试(招标采购专业实务初级)试题库及答案
- 羚萌直播运营工作总结
- 铁路安全管控条例解读
- 电影拍摄著作权合同5篇
- 水利水电三检表全 (一)
- 《高铁信号连锁设备》课件-(一) 平面布置图的识读
- 志愿者招募与管理优化路径-全面剖析
- 塔拉韦斯特弗《你当像鸟飞往你的山》中英互译
- 产品质量管理及控制作业指导书
- 前端工作总结答辩
- 公积金提取申请书
- 全国2024年10月自学考试财务报表分析(一)试题和答案
- 教师网络安全专项培训
- 「见新机·聚增长」2025哔哩哔哩手机PC行业白皮书
- 公司博士后工作站管理制度(5篇)
评论
0/150
提交评论