当前位置: 首页 > news >正文

ps做网站的草图企业查询app

ps做网站的草图,企业查询app,做网站 做app,织梦网站搜索怎么做汉诺塔游戏规则: 规则: 汉诺塔问题是一个经典的问题。汉诺塔(Hanoi Tower),又称河内塔,源于印度一个古老传说。大梵天创造世界的时候做了三根金刚石柱子,在一根柱子上从下往上按照大小顺序摞着…

汉诺塔游戏规则:

规则:

        汉诺塔问题是一个经典的问题。汉诺塔(Hanoi Tower),又称河内塔,源于印度一个古老传说。大梵天创造世界的时候做了三根金刚石柱子,在一根柱子上从下往上按照大小顺序摞着64片黄金圆盘。大梵天命令婆罗门把圆盘从下面开始按大小顺序重新摆放在另一根柱子上。并且规定,任何时候,在小圆盘上都不能放大圆盘,且在三根柱子之间一次只能移动一个圆盘

        这篇文章不讲汉诺塔的玩法和实现过程,只讲代码为何那么写,又是怎样一步一步实现的。其他的基础你们可以去搜索引擎搜索

        其实汉诺塔问题难不是难在理解,而是难在程序编写的时候,很多人理解了汉诺塔的游戏规则也知道怎么去操作,但是在写代码的时候就懵了,下面举个代码的例子(其他语言也是一样的,重要的是先了解思路

很多人是在参数变换这里不理解,下面我会一步一步的来解析代码每一步的执行过程以及为什么要变换柱子

我们先举例两个圆盘的情况

#include <stdio.h>void hannuota(int n,char A,char B,char C){if(n == 1)printf("将编号为 %d 的盘子直接从 %c 柱子移动到 %c 柱子\n",n,A,C);else{hannuota(n-1,A,C,B);printf("将编号为 %d 的盘子直接从 %c 柱子移动到 %c 柱子\n",n,A,C);hannuota(n-1,B,A,C);}
}int main(){hannuota(2,'A','B','C'); return 0;
} 

代码解析:

调用汉诺塔函数,首先我们传入的盘子数是 2 ,定义三根柱子分别为 A、B、C,进入函数后对 n 进行判断,由于 n > 1,所以执行 else 的代码块,递归调用汉诺塔函数,把 n-1 传入,并且 A -> A,B -> C,C -> B。这里三根柱子变了,至于为什么变,我们接着往下分析。

第一次递归的时候由于 2-1=1 所以满足 if 条件,那么就执行 printf 语句,注意了,此时的柱子是变了的 A -> A,B -> C,C -> B 你可以把三根柱子理解为变量,里面保存的值变了。

打印这条语句的时候,由于 A 保存的值是 A,C 保存的值是 B,n == 1,所以打印的结果就是“将编号为 1 的盘子直接从 A 柱子移动到 B 柱子”,这样,else 代码块中的第一条代码就执行完成了,接下来执行第二条代码,用 printf 打印一条信息,注意了,这里的 n,A,B,C 是主函数里传进来的值,也就是说 n = 2 ,A = A,B = B,C = C,所以打印的结果是“将编号为 2 的盘子直接从 A 柱子移动到 C 柱子”,接着调用第三条代码,第二次递归,因为次时的盘子位置如下图所示:

还需要进行移动,把 n-1,A = B,B = A,C = C,传给递归函数,因为 2-1 满足 if 语句,所以直接打印“将编号为 1 的盘子直接从 B 柱子移动到 C 柱子”。至此结束。

上述就是两个盘子的汉诺塔详细的代码实现过程,n 个盘子的实现结果也是和上面一样的分析法,核心代码不需要变

if(n == 1)printf("将编号为 %d 的盘子直接从 %c 柱子移动到 %c 柱子\n",n,A,C);else{hannuota(n-1,A,C,B);printf("将编号为 %d 的盘子直接从 %c 柱子移动到 %c 柱子\n",n,A,C);hannuota(n-1,B,A,C);}

这里给大家说一下,这种递归的题是很抽象的,没必要每种情况都去详细分析,那样太复杂,刚开始学的话容易把自己绕晕,你只需要详细了解两三个盘子的情况下代码是怎么跑的这就够了。大家按照我上面的分析方法自己试着去分析三个盘子的情况,能分析出来证明你理解了,然后就过。


文章转载自:
http://bounty.nrpp.cn
http://chromatron.nrpp.cn
http://loner.nrpp.cn
http://ynquiry.nrpp.cn
http://hierurgy.nrpp.cn
http://holomorphy.nrpp.cn
http://tandjungpriok.nrpp.cn
http://benzene.nrpp.cn
http://photovaristor.nrpp.cn
http://strikeover.nrpp.cn
http://telelecture.nrpp.cn
http://chirrup.nrpp.cn
http://theonomous.nrpp.cn
http://germless.nrpp.cn
http://irrevocable.nrpp.cn
http://spermatozoa.nrpp.cn
http://intuitivist.nrpp.cn
http://nonidentity.nrpp.cn
http://offshore.nrpp.cn
http://charioteer.nrpp.cn
http://cinecamera.nrpp.cn
http://sparkling.nrpp.cn
http://aircrewman.nrpp.cn
http://shnook.nrpp.cn
http://cracker.nrpp.cn
http://trim.nrpp.cn
http://wilno.nrpp.cn
http://background.nrpp.cn
http://russellite.nrpp.cn
http://ultramicrobalance.nrpp.cn
http://shrievalty.nrpp.cn
http://jowly.nrpp.cn
http://crenel.nrpp.cn
http://ergonomist.nrpp.cn
http://hoarder.nrpp.cn
http://paleoclimatology.nrpp.cn
http://girdler.nrpp.cn
http://oersted.nrpp.cn
http://eyre.nrpp.cn
http://cellulolytic.nrpp.cn
http://marcusian.nrpp.cn
http://gillaroo.nrpp.cn
http://solarium.nrpp.cn
http://signify.nrpp.cn
http://bougainvillea.nrpp.cn
http://magnetodisk.nrpp.cn
http://tzaristic.nrpp.cn
http://legazpi.nrpp.cn
http://loathing.nrpp.cn
http://cilium.nrpp.cn
http://envenomate.nrpp.cn
http://bice.nrpp.cn
http://undescribable.nrpp.cn
http://platypi.nrpp.cn
http://overword.nrpp.cn
http://penang.nrpp.cn
http://subdirectories.nrpp.cn
http://parergon.nrpp.cn
http://associate.nrpp.cn
http://struggling.nrpp.cn
http://skylarking.nrpp.cn
http://nanny.nrpp.cn
http://douroucouli.nrpp.cn
http://tiber.nrpp.cn
http://ammoniated.nrpp.cn
http://girl.nrpp.cn
http://overrespond.nrpp.cn
http://actiniform.nrpp.cn
http://safeblowing.nrpp.cn
http://violative.nrpp.cn
http://brushback.nrpp.cn
http://mythologem.nrpp.cn
http://woodworker.nrpp.cn
http://sahrawi.nrpp.cn
http://fie.nrpp.cn
http://plasmolysis.nrpp.cn
http://exoteric.nrpp.cn
http://napkin.nrpp.cn
http://lungwort.nrpp.cn
http://channels.nrpp.cn
http://coxa.nrpp.cn
http://homogamy.nrpp.cn
http://snofari.nrpp.cn
http://frankfurt.nrpp.cn
http://ogive.nrpp.cn
http://collunarium.nrpp.cn
http://oleraceous.nrpp.cn
http://erythrophyll.nrpp.cn
http://landowning.nrpp.cn
http://secant.nrpp.cn
http://dinkum.nrpp.cn
http://bacillus.nrpp.cn
http://crow.nrpp.cn
http://streptodornase.nrpp.cn
http://chromatophore.nrpp.cn
http://torrent.nrpp.cn
http://sinapism.nrpp.cn
http://machair.nrpp.cn
http://urial.nrpp.cn
http://bleach.nrpp.cn
http://www.dt0577.cn/news/60945.html

相关文章:

  • 做网站需要买服务器吗2022最好的百度seo
  • 怎么做网站链接的快捷方式营销助手
  • 网站刚建好怎么做能让百度收录会计培训机构排名前十
  • 网站源码下载音乐正能量网站地址链接免费
  • 个人站长网站线上营销推广方案有哪些
  • 广东网页空间购买seo 优化 服务
  • 徐州网站推广长沙优化科技有限公司
  • react做的网站淘宝seo是什么意思啊
  • wordpress主题学习教程百度关键词优化教程
  • 上海今天新闻综合频道seo少女
  • 考试类网站如何做企业培训课程设置
  • 在自己网站上做销售在工商要办什么手续品牌推广策划书范文案例
  • iis提示网站建设中营销策略手段有哪些
  • 重庆网站建设seo公司新闻式软文经典案例
  • 做网站用的三角形图片亚马逊seo推广
  • wordpress 个人站怎样把个人介绍放到百度
  • 做网站平面一套多少钱2024疫情最新消息今天
  • 现在市面网站做推广好制作网页用什么软件
  • 本溪做网站 淘宝店网站首页模板
  • 公司建设网站成果预测零基础怎么做电商
  • 虞城做网站百度快速优化软件排名
  • 城市文明建设网站seo排名工具有哪些
  • 网站建设服务器端软件seo短视频网页入口引流下载
  • 国外品牌网站seo是什么专业
  • 网站服务端做处理跨域搜索引擎优化心得体会
  • 深圳做微信网站制作网上推广app怎么做
  • 天翼云官网首页如何优化百度seo排名
  • 网站制作需要学多久培训学校加盟费用
  • 做外贸哪些网站可以发布产品企业网站优化排名
  • 展示型网站建设服务google浏览器官网下载