求骑士巡游问题 回溯法初始坐标(3.1)和(3.3)的路程图 跪求各位大佬。

骑士巡游_c++吧_百度贴吧
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&签到排名:今日本吧第个签到,本吧因你更精彩,明天继续来努力!
本吧签到人数:0成为超级会员,使用一键签到本月漏签0次!成为超级会员,赠送8张补签卡连续签到:天&&累计签到:天超级会员单次开通12个月以上,赠送连续签到卡3张
关注:272,573贴子:
骑士巡游收藏
快试试吧,可以对自己使用挽尊卡咯~◆◆
有一句看不懂
题目
编写程序求解骑士巡游问题:在n行n列的棋盘上(如n=5),假设一位骑士(按象棋中“马走日”的行走法)从初始坐标位置(x1,y1)出发,要遍访(巡游)棋盘中的每一个位置一次。请编一个程序,为骑士求解巡游“路线图”(或告诉骑士,从某位置出发时,无法遍访整个棋盘&—&问题无解)。
&&&&当n=5时,意味着要在5行5列的棋盘的25个“点”处,按骑士行走规则,依次将1至25这25个“棋子”(数码)分别摆放到棋盘上(摆满25个位置则成功,否则失败问题无解)。
&&&&例如,当n=5且初始坐标位置定为(1,1)&—&即最左上角的那个点时,如下是一种巡游“路线图”。程序执行后的输出结果为:
(x1,y1)?&=&&(1=&5,&1=&5)&:&1&1
&&&1&&&6&&15&&10&&21
&&14&&&9&&20&&&5&&16
&&19&&&2&&&7&&22&&11
&&&8&&13&&24&&17&&&4
&&25&&18&&&3&&12&&23
提示:&
(1)“棋盘”可用二维数组B表示。
&(2)编制一个具有如下原型的递归函数solve,用于完成任务:从(i,j)点出发,做第k至第n*n(即n的平方)次的移动&—&将k直到n的平方这些数码按规则分别摆放到棋盘即数组B中,若成功则通过引用参数ok返回true,否则返回false。
&&void&solve(int&i,&int&j,&int&k,&bool&&ok);
(3)编制主函数,让用户输入作为巡游起点的初始坐标位置(x1,y1),在该处摆放“棋子”(数码)1,而后进行调用“solve(x1,&y1,&2,&ok);”来完成所求任务。
&&&&欲处理的初始问题为:从某点(x1,y1)出发,按所给行走规则,作24次移动,遍访棋盘中没被访问过的各点(或发现无路可走)。
&&&&可分解化简为如下两个子问题(正是形成递归函数的基础):
①&由点(x1,y1)出发,按所给行走规则作1次移动到达(g,h)(或发现无路可走);
②&从(g,h)点出发,按所给行走规则,作23次移动,遍访棋盘中没被访问过的各点(或发现无路可走)。
solve函数具体实现时,若由(i,j)点出发已“无路可走”,则将引用参数ok置为false而递归出口;否则,先“迈一步”到达(g,h)点,而后再进行递归调用:solve(g,&h,&k+1,&ok);以实现从新点(g,h)出发,将k+1直到25这些“棋子”(数码)分别摆放到棋盘上,若成功则通过引用参数ok返回true(否则返回false)。
点评:
&(1)也可编制第二种解法的主函数:将棋盘上的n平方个点依次作为巡游起点的初始坐标位置(x1,y1),判断从每一位置出发是否有解或无解(输出“OK!”或“NO!”,但并不输出“路线图”)。
&(2)若更改程序中的n值(如改为4或6等),便可求解其他阶数的巡游“路线图”。
&(3)可改用非递归方法设计并编写solve函数,那样的话,通常要增加一个记录摆放“棋子”信息的数组,可记录下是沿着什么方向到达了当前的什么位置(在那儿摆放了“棋子”)等,而且对上述数组可按照栈(stack)的方式来使用(栈总是采用FILO即所谓的先进后出使用方式),以便在“无路可走”的情况下,回退(回溯)到上一个位置,接着按照另外的方向去寻找其他的“行走”方法。
c++海同强大的师资阵容,因人制定课程内容,分阶段学习.c++就到正规IT技术培训机构-海同科技,培训IT技术面对面教学,免费重读!
快试试吧,可以对自己使用挽尊卡咯~◆◆
程序:
#include&&iostream&
#include&&iomanip&&&//setw()的头文件
#define&N&5&&&&&&&&//定义一个宏并赋初值
using&namespace&
int&b[N][N];&&&&//定义全局性的二维数组保存步数
bool&a[N][N];&&&//记录某一点是否已经走过
int&num=0;&&&&&&//记录方案数
int&dx[]={0,1,1,-1,-1,2,2,-2,-2};&
int&dy[]={0,2,-2,2,-2,1,-1,1,-1};&&//提供每一步的走法
void&solve(int&i,int&j,int&k,bool&ok)&&//计算走法
{
&int&m,x1,y1,n1,n2;
&bool&t1,t2;
&for(m=1;m&=8;m++)
&{
&&x1=i+dx[m];
&&&&&y1=j+dy[m];
&&t1=((x1&=0)&&(x1&N));&&//判断x是否在棋盘内
&&t2=((y1&=0)&&(y1&N));&&//判断y是否在棋盘内
&&if((t1==true)&&(t2==true)&&(a[x1][y1]==true))
&&{
&&&a[x1][y1]=&&//记录该点已经走过
&&&b[x1][y1]=k;
&&&if(k&N*N)&&&
&&&{
&&&&solve(x1,y1,k+1,ok);
&&&}
&&&else
&&&{
&&&&num++;&&&&&//方案数加一
&&&&ok=
&&&&cout&&&方案&&&num&&&&:&&&
&&&&for(n1=0;n1&N;n1++)
&&&&{
&&&&&&&&&&&&&&&&&&&&for(n2=0;n2&N;n2++)
&&&&&{
&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&cout&&setw(4)&&b[n1][n2];&//依次输出经过每一点时的步数
&&&&&}
&&&&&cout&&
&&&&}
&&&&//
&&&}
&&&&&&a[x1][y1]=
&&}
&}
}
int&main()
{
&int&i,j,row,
&bool&ok=false&;&
&for(i=0;i&N;i++)
&{
&&for(j=0;j&N;j++)
&&&a[i][j]=
&}
&cout&&&请输入起始位置的坐标:&;
&cin&&row&&
&b[row-1][col-1]=1;&//设置起始点
&a[row-1][col-1]=
&solve&(row-1,col-1,2,ok);&&//调用函数计算结果
&if(!ok)
&&cout&&&从点(&&&row&&&,&&&col&&&)出发无法遍访棋盘的每一个位置&&&
&return&0;
}
倒数21行&&&&&a[x1][y1]=&&&这句的作用是什么?
哪位大虾有时间帮忙看下...谢啦`~~~
快试试吧,可以对自己使用挽尊卡咯~◆◆
快试试吧,可以对自己使用挽尊卡咯~◆◆
快试试吧,可以对自己使用挽尊卡咯~◆◆
快试试吧,可以对自己使用挽尊卡咯~◆◆
快试试吧,可以对自己使用挽尊卡咯~◆◆
快试试吧,可以对自己使用挽尊卡咯~◆◆
深圳市华信群英科技有限公司针对想进入IT软件行业的有志人士提供专业的企业内训,不仅学费优惠而且是企业定向培训定向招聘,有意向请登录,或加QQ:做详细咨询
c++?就业后薪资多少?上市公司&达内&,独家TTS8.0教学系统,c++?达内专家指出;高薪就业始于上市公司,0基础也可入学!
楼主太伟大了,这是我们期中实习的题目,你把代码都贴出来了!小弟谢谢你先!
快试试吧,可以对自己使用挽尊卡咯~◆◆
还原棋盘,,皓
kanbudong a
很好,很好,学习了。
int dx[]={0,1,1,-1,-1,2,2,-2,-2};
int dy[]={0,2,-2,2,-2,1,-1,1,-1};
看不懂为嘛这样设置走法啊
哪位大神来解释一下啊
这个算法没有考虑骑士最后一步要回到起点的要求。
登录百度帐号推荐应用
为兴趣而生,贴吧更懂你。或对m维空间广义骑士巡游问题的研究--《渝州大学学报(自然科学版)》1998年04期
对m维空间广义骑士巡游问题的研究
【摘要】:对m维空间广义骑士巡游问题进行了研究,给出了不存在Hamilton圈和Hamilton路径的充分条件。
【作者单位】:
【关键词】:
【分类号】:O157.9【正文快照】:
“骑士巡游问题”(也称马步问题)是一个非常有趣的问题,它来源于国际象棋,是对国际象棋游戏的高度概括.在二维的情形下已经有了许多优美的结果[1~3],文献[4]还提出了两个猜想.对高维情形,陶克用代数工具,对骑士(马)的“遍及”(马能走遍棋盘的每一格)条
欢迎:、、)
支持CAJ、PDF文件格式,仅支持PDF格式
【参考文献】
中国期刊全文数据库
陶克;[J];数学的实践与认识;1982年01期
【共引文献】
中国期刊全文数据库
曹新谱,肖宝麟;[J];重庆大学学报(自然科学版);1988年04期
柏森;[J];达县师范高等专科学校学报;1998年04期
柏森,杨晓帆,瞿晓鸿,柏林;[J];重庆大学学报(自然科学版);1998年03期
陶克;[J];数学的实践与认识;1982年01期
宁安琪,宁宣熙;[J];小型微型计算机系统;2005年09期
中国硕士学位论文全文数据库
孙秋艳;[D];南京航空航天大学;2007年
【相似文献】
中国期刊全文数据库
柏森;[J];达县师范高等专科学校学报;1998年04期
柏森,杨晓帆,柏林;[J];渝州大学学报(自然科学版);1998年04期
&快捷付款方式
&订购知网充值卡
400-819-9993
《中国学术期刊(光盘版)》电子杂志社有限公司
同方知网数字出版技术股份有限公司
地址:北京清华大学 84-48信箱 大众知识服务
出版物经营许可证 新出发京批字第直0595号
订购热线:400-819-82499
服务热线:010--
在线咨询:
传真:010-
京公网安备75号骑士巡游问题的解--《中山大学学报(自然科学版)》1994年03期
骑士巡游问题的解
【摘要】:骑士巡游是个np问题,本文再次改进其算法,并提出了两个猜想.
【作者单位】:
【关键词】:
【分类号】:TP301.6【正文快照】:
骑士巡游问题的解肖金声(中山大学计算中心,广州510275)摘要骑士巡游是个np问题,本文再次改进其算法,并提出了两个猜想.关键词回溯,np问题,出路数分类号TP301.6国际象棋中的骑士(马)按“日”字走动.在n×n棋盘上,让骑士从任一初始点开始走动
欢迎:、、)
支持CAJ、PDF文件格式,仅支持PDF格式
【引证文献】
中国期刊全文数据库
柏森,杨晓帆,柏林;[J];重庆大学学报(自然科学版);1998年05期
中国硕士学位论文全文数据库
李晓东;[D];长春理工大学;2004年
孙秋艳;[D];南京航空航天大学;2007年
【同被引文献】
中国期刊全文数据库
齐东旭;[J];北方工业大学学报;1999年01期
孙伟;[J];北方工业大学学报;1999年01期
丁玮,闫伟齐,齐东旭;[J];北方工业大学学报;2000年01期
邹建成,铁小匀;[J];北方工业大学学报;2000年01期
邹建成,唐旭晖,李国富;[J];北方工业大学学报;2000年03期
李国富,宋瑞霞,赵慧;[J];北方工业大学学报;2000年03期
李国富;[J];北方工业大学学报;2001年01期
邹建成,铁小匀;[J];北方工业大学学报;2001年01期
邹建成;[J];北方工业大学学报;2001年03期
闫伟齐,邹建成,齐东旭;[J];北方工业大学学报;2002年01期
中国博士学位论文全文数据库
柏森;[D];重庆大学;2002年
闫伟齐;[D];中国科学院研究生院(计算技术研究所);2001年
中国硕士学位论文全文数据库
薛小潭;[D];福州大学;2002年
【二级引证文献】
中国期刊全文数据库
许健新,陈昭炯;[J];福州大学学报(自然科学版);2004年S1期
柏森,曹长修,曹龙汉,王田,汪纪锋;[J];中国图象图形学报;2001年11期
中国博士学位论文全文数据库
柏森;[D];重庆大学;2002年
朱桂斌;[D];重庆大学;2004年
中国硕士学位论文全文数据库
孙秋艳;[D];南京航空航天大学;2007年
【相似文献】
中国期刊全文数据库
莫绍揆;[J];数学研究与评论;1984年03期
周同衡;[J];计算机学报;1986年06期
王树林;[J];小型微型计算机系统;1987年03期
王文章,田绍槐,张如健;[J];计算机学报;1988年05期
吕维刚,刘慎权;[J];计算机学报;1988年07期
彭威;[J];信息与控制;1991年S1期
邬长安;[J];信阳师范学院学报(自然科学版);1992年01期
姜新文,王兵山;[J];国防科技大学学报;1994年01期
宋恩民,黄文奇;[J];华中理工大学学报;1994年06期
肖金声;[J];中山大学学报(自然科学版);1994年03期
中国重要会议论文全文数据库
陈剑飞;王一玲;林伟;;[A];全国青年管理科学与系统科学论文集(第2卷)[C];1993年
王铮;周嵬;蔡砥;;[A];中国法学会经济法学研究会2005年年会专辑[C];2005年
姜新文;;[A];中南六省(区)自动化学会第24届学术年会会议论文集[C];2006年
中国重要报纸全文数据库
杨荔雯;[N];文汇报;2000年
北京理工大学教授 叶其孝;[N];中国教育报;2002年
PALADIN;[N];电脑报;2003年
张永德;[N];人民日报;2003年
;[N];人民邮电;2004年
中国博士学位论文全文数据库
赵孝武;[D];中国科学院软件研究所;2001年
中国硕士学位论文全文数据库
石莉;[D];西安电子科技大学;2001年
吴广伟;[D];山东科技大学;2003年
王萍;[D];合肥工业大学;2003年
姚宏亮;[D];合肥工业大学;2003年
刘和周;[D];电子科技大学;2003年
孙燕;[D];大连海事大学;2004年
郑骁庆;[D];昆明理工大学;2003年
杨思东;[D];南京理工大学;2004年
刘巍;[D];天津大学;2004年
冷永刚;[D];电子科技大学;2004年
&快捷付款方式
&订购知网充值卡
400-819-9993
《中国学术期刊(光盘版)》电子杂志社有限公司
同方知网数字出版技术股份有限公司
地址:北京清华大学 84-48信箱 大众知识服务
出版物经营许可证 新出发京批字第直0595号
订购热线:400-819-82499
服务热线:010--
在线咨询:
传真:010-
京公网安备75号江湖救急,各位大佬谁说下螳螂的坐标_口袋妖怪复刻吧_百度贴吧
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&签到排名:今日本吧第个签到,本吧因你更精彩,明天继续来努力!
本吧签到人数:0可签7级以上的吧50个
本月漏签0次!成为超级会员,赠送8张补签卡连续签到:天&&累计签到:天超级会员单次开通12个月以上,赠送连续签到卡3张
关注:208,550贴子:
江湖救急,各位大佬谁说下螳螂的坐标
江湖救急,哪位大佬会这...
x99 sliplus主板,2637V...
目前37级,10级司令部,...
文科生表示不会啊
求一本小说,小说名已经...
我的老公左梦瑶因和同车...
2017年在职研究生有没有取消,具体的政策有什么变化
我可以把我的眉毛摘下来,   (??ω?)ノ??摘下,   (??ω??)安上,   (??ω?)ノ??摘下,   (??ω??)安上,  ╰??(?ω?)ノ??两边都摘下,   (??ω??)安上。。。  ╰??(?ω?)ノ??两边都摘下,   (?ω?)卧槽。安不回来了。 楼主你以为我看不出来你是在骗回复吗?我在卖萌而已...  
贴吧热议榜
使用签名档&&
保存至快速回贴

我要回帖

更多关于 骑士巡游问题 的文章

 

随机推荐