- 4
- 0
- 约2.27千字
- 约 11页
- 2017-11-30 发布于江西
- 举报
递归与算法算法专题
递归与回溯算法专题 主要内容 回溯法的基本思想 回溯法的常用方法 应用举例 得分得分得十分 是非得失发的十分飞 回溯常用方法 主要解法与思想 问题分析: 第一步 定义问题的解空间 这个问题解空间就是8个皇后在棋盘中的位置. 第二步 定义解空间的结构 可以使用8*8的数组,但由于任意两个皇后都不能在同行,我们可以用数组下标表示 行,数组的值来表示皇后放的列,故可以简化为一个一维数组x[9]。 第三步 以深度优先的方式搜索解空间,并在搜索过程使用剪枝函数来剪枝 根据条件:x[i] == x[k]判断处于同一列 abs(k-i) == abs(x[k]-x[i]判断是否处于同一斜线 解析代码如下: POJ1321棋盘问题 POJ1321棋盘问题 即简化的八皇后问题 题目详情请看下载网页 * * ACM 组 吴国龙 一.基本思想: 从问题的某一种可能出发, 搜索从这种情况出发所能达到的 所有可 能, 当这一条路走到 尽头 的时候, 再倒回出发点, 从另一个可能出发, 继续搜索. 这种不断 回溯 寻找解的方法, 称作 回溯法 . 二.一般步骤 1.定义一个解空间,它包含问题的解。? 2.利用适于搜索的方法组织解空间。 3.利用深度优先法搜索解空间。 4.利用限界函数避免移动到不可能产生解的子空间。 回溯法基本思想与步骤 1.递归回溯法 void RBacktrack (int k) { for(每个x[k],使得x[k]∈T(x[0],x[1]…x[k-1]) (Bk(x[0],x[1]…x[k]))) { if((x[0],x[1]…x[k])是一个可行解) 输出x[0],x[1]…x[k]; else RBacktrack(k+1); } } 2.迭代回溯法 void IBacktrack (int n) { int k; while(k=0) { if(还有尚未检测的x[k]∈T(x[0],x[1]…x[k-1])(Bk(x[0],x[1]…x[k]))) { if((x[0],x[1]…x[k])是一个可行解) 输出x[0],x[1]…x[k]; k++; } else k--; } } 在8×8格的棋盘上放置彼此不受攻击的8个皇后。按照国际象棋的规则,皇后可以攻击与之处在同一行或同一列或同一斜线上的棋子。8后问题等价于在8×8格的棋盘上放置8个皇后,任何2个皇后不放在同一行或同一列或同一斜线上,哪么一共有多少种解法呢?? 1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8 Q Q Q Q Q Q Q Q 1 2 3 4 5 6 7 8 应用举例 8-皇后问题 #includeiostream #includecmath using namespace std; int x[9]; int sum=1; void print(){ //输出当前可能的解 //cout第sum种可能解是:endl; for(int i = 1; i = 8; i++) cout x[i] ; cout endl; sum++; } bool canPlace(int k){ //剪枝函数---检查当前列能否放置皇后 for(int i = 1; i k; i++){ if(x[i] == x[k] || abs(k-i) == abs(x[k]-x[i])) //判断处于同一列或同一斜线 return false; } return true; } void queen(int i){ //回溯尝试皇后位置,i为行数 if(i 8){ print();
您可能关注的文档
- 路测数据分析处理思路指导.doc
- 路演演出节目形式推荐.ppt
- 跳上成跪撑、起立跳下接前滚翻 wang.doc
- 路面设计毕业论文.doc
- 路测基础培训文档.doc
- 跨文化交际能力问卷调查二稿.doc
- 车工指导书.doc
- 车工考试试卷客观题答案.doc
- 车灯线光源的计算模型.doc
- 车工考试试卷客观题.doc
- 广东省广州省实验中学教育集团2025-2026学年八年级上学期期中考试物理试题(解析版).docx
- 广东省广州大学附属中学2025-2026学年八年级上学期奥班期中物理试题(解析版).docx
- 广东省广州市第八十六中学2025-2026学年八年级上学期期中物理试题(含答案).docx
- 广东省广州市第八十九中学2025-2026学年八年级上学期期中考试物理试题(解析版).docx
- 广东省广州市第二中学2025-2026学年八年级上学期期中考试物理试题(含答案).docx
- 广东省广州市第八十六中学2025-2026学年八年级上学期期中物理试题(解析版).docx
- 广东省广州市第八十九中学2025-2026学年八年级上学期期中考试物理试题(含答案).docx
- 广东省广州市第二中学2025-2026学年八年级上学期期中考试物理试题(解析版).docx
- 2026《中国人寿上海分公司营销员培训体系优化研究》18000字.docx
- 《生物探究性实验教学》中小学教师资格模拟试题.docx
最近下载
- 12S10管道支架、吊架建筑工程规范图集.pdf VIP
- 铸造工艺学(课本).pdf VIP
- 部编版二年级下册语文全册《写字表》生字字帖.pdf VIP
- 数学六年级上册100道口算题大全(全册各类齐全18份).doc VIP
- 八年级物理寒假提升精品讲义第01讲 力(预习)(原卷版).pdf VIP
- 波谱分析法课件.ppt VIP
- 数学分析第五版(上册)华东师大习题答案解析.docx
- 运筹学基础及应用-第1章-线性规划及单纯形法(胡运权版).ppt VIP
- 八年级物理寒假提升精品讲义第01讲 力(预习)(解析版).docx VIP
- 11S405-4 建筑给水塑料管道安装通用详图国标 建筑图集 汇编 .docx VIP
原创力文档

文档评论(0)