教育资源为主的文档平台

当前位置: 查字典文档网> 所有文档分类> 幼儿教育> 幼儿读物> 视频6.5.5汉诺塔

视频6.5.5汉诺塔

上传者:庞彧
|
上传时间:2015-04-15
|
次下载

视频6.5.5汉诺塔

内容需要下载文档才能查看

你中有我,我中有你-函数的递归调用

问题描述

汉诺塔:在一块板上有三根杆,最左边的A杆上自上而下、由小到大放了n个圆盘,要将A杆上的圆盘,借助最右边的B杆,全部移到中间的C杆上,条件是一次仅能移动一个盘,且不允许大盘放在小盘的上面。

1

片……

n

A 初始杆C 目的杆B 中间杆

你中有我,我中有你-函数的递归调用

问题分析

属于非数值问题,若仅一片,直接从A杆移动到C杆;若有两片,则:

A杆C杆B杆

移动方法:1)将上面小片移到B杆上。2) 将下面的大片由A杆移到C杆上。3) 将B杆上的小片移到C杆上。

你中有我,我中有你-函数的递归调用 以移动两片的思路,考虑 N片的情况片的情况:

A杆

C杆

B杆

移动方法: 1.将上面(N-1)片移到B杆上。 2.将下面的第 N片由A杆移到C杆上。 3.将B杆上的(N-1)片移到C杆上。

内容需要下载文档才能查看

你中有我,我中有你-函数的递归调用

内容需要下载文档才能查看

汉诺塔问题属于非数值问题汉诺塔问题属于非数值问题,

内容需要下载文档才能查看

解决思路:hanoi( n, one, two, three ){

if( n == 1) move( one, three );

else

{ 第1:问题化简,设A杆上只有一个盘子,即n=1,则只需将盘从A杆移到C杆。n1,则只需将盘从A杆移到C杆。第2:问题分解,对于有n(n>1)个盘子的汉诺塔,可分为三个步骤求解:1)将A杆上n-1个盘子借助于C杆移到B杆2)把A杆上剩下的一个盘子移到C杆3)将B杆上n-1个盘子借助于A杆移到C杆显然,上述1,3两步具有与原问题相同的性质,只是在问题的规模上比原问题有所缩小,可}用递归实现。}hanoi( n-1, one, three, two );move( one, three );hanoi(n-1,hanoi( n1, two, one, three );two,one,three);

你中有我,我中有你-函数的递归调用void move(char getone, char putone)

内容需要下载文档才能查看

/*将盘从

内容需要下载文档才能查看

getone移动到putone*/

{p{ printf("%c--->%c\n",getone,putone); }(,g,p);}

void hanoi(int n,charone,chartwo,charthree) /*将n个盘从one杆,借助two杆,移动到three杆*/{ if(n==1) move(one,three);

else

{ hanoi(n-1,one,three,two); move(one,three);hanoi(n-1,two,one,three);

}

}

int main()

{ intm;

printf("Input the number of disks:");

scanf("%d",&m);()

printf("The steps to moving %3d disks:\n",m);

hanoi(m,'A','B','C');

return 0;

}

版权声明:此文档由查字典文档网用户提供,如用于商业用途请与作者联系,查字典文档网保持最终解释权!

下载文档

热门试卷

2016年四川省内江市中考化学试卷
广西钦州市高新区2017届高三11月月考政治试卷
浙江省湖州市2016-2017学年高一上学期期中考试政治试卷
浙江省湖州市2016-2017学年高二上学期期中考试政治试卷
辽宁省铁岭市协作体2017届高三上学期第三次联考政治试卷
广西钦州市钦州港区2016-2017学年高二11月月考政治试卷
广西钦州市钦州港区2017届高三11月月考政治试卷
广西钦州市钦州港区2016-2017学年高一11月月考政治试卷
广西钦州市高新区2016-2017学年高二11月月考政治试卷
广西钦州市高新区2016-2017学年高一11月月考政治试卷
山东省滨州市三校2017届第一学期阶段测试初三英语试题
四川省成都七中2017届高三一诊模拟考试文科综合试卷
2017届普通高等学校招生全国统一考试模拟试题(附答案)
重庆市永川中学高2017级上期12月月考语文试题
江西宜春三中2017届高三第一学期第二次月考文科综合试题
内蒙古赤峰二中2017届高三上学期第三次月考英语试题
2017年六年级(上)数学期末考试卷
2017人教版小学英语三年级上期末笔试题
江苏省常州西藏民族中学2016-2017学年九年级思想品德第一学期第二次阶段测试试卷
重庆市九龙坡区七校2016-2017学年上期八年级素质测查(二)语文学科试题卷
江苏省无锡市钱桥中学2016年12月八年级语文阶段性测试卷
江苏省无锡市钱桥中学2016-2017学年七年级英语12月阶段检测试卷
山东省邹城市第八中学2016-2017学年八年级12月物理第4章试题(无答案)
【人教版】河北省2015-2016学年度九年级上期末语文试题卷(附答案)
四川省简阳市阳安中学2016年12月高二月考英语试卷
四川省成都龙泉中学高三上学期2016年12月月考试题文科综合能力测试
安徽省滁州中学2016—2017学年度第一学期12月月考​高三英语试卷
山东省武城县第二中学2016.12高一年级上学期第二次月考历史试题(必修一第四、五单元)
福建省四地六校联考2016-2017学年上学期第三次月考高三化学试卷
甘肃省武威第二十三中学2016—2017学年度八年级第一学期12月月考生物试卷

网友关注视频

沪教版牛津小学英语(深圳用) 四年级下册 Unit 4
七年级下册外研版英语M8U2reading
沪教版牛津小学英语(深圳用) 六年级下册 Unit 7
冀教版小学数学二年级下册第二单元《有余数除法的简单应用》
《小学数学二年级下册》第二单元测试题讲解
冀教版英语五年级下册第二课课程解读
外研版英语七年级下册module3 unit2第二课时
沪教版牛津小学英语(深圳用) 四年级下册 Unit 3
【部编】人教版语文七年级下册《泊秦淮》优质课教学视频+PPT课件+教案,天津市
外研版英语七年级下册module3 unit1第二课时
外研版英语三起5年级下册(14版)Module3 Unit1
【部编】人教版语文七年级下册《老山界》优质课教学视频+PPT课件+教案,安徽省
外研版英语三起5年级下册(14版)Module3 Unit2
七年级英语下册 上海牛津版 Unit5
沪教版牛津小学英语(深圳用) 四年级下册 Unit 12
沪教版八年级下册数学练习册20.4(2)一次函数的应用2P8
沪教版八年级下册数学练习册21.3(2)分式方程P15
沪教版牛津小学英语(深圳用) 四年级下册 Unit 7
沪教版八年级下册数学练习册一次函数复习题B组(P11)
冀教版小学数学二年级下册第二周第2课时《我们的测量》宝丰街小学庞志荣.mp4
沪教版牛津小学英语(深圳用)五年级下册 Unit 1
19 爱护鸟类_第一课时(二等奖)(桂美版二年级下册)_T3763925
外研版英语七年级下册module1unit3名词性物主代词讲解
小学英语单词
【部编】人教版语文七年级下册《泊秦淮》优质课教学视频+PPT课件+教案,湖北省
七年级英语下册 上海牛津版 Unit3
精品·同步课程 历史 八年级 上册 第15集 近代科学技术与思想文化
每天日常投篮练习第一天森哥打卡上脚 Nike PG 2 如何调整运球跳投手感?
冀教版小学数学二年级下册第二单元《租船问题》
七年级英语下册 上海牛津版 Unit9