当前位置:首页 » 《资源分享》 » 正文

古有老和尚搬金圆盘,今有程序员写代码。_SpongeBob_shouse的博客

11 人参与  2021年10月08日 14:23  分类 : 《资源分享》  评论

点击全文阅读


//汉诺塔的规则

大梵天命令婆罗门把圆盘从下面开始按大小顺序重新摆放在另一根柱子上。并且规定,在小圆盘上不能放大圆盘,在三根柱子之间一次只能移动一个圆盘

下面进行图片演示//第一次移动,要把A柱子上的前n-1个移动到B柱子上;(图1)
//第二次移动,直接把A柱子上的最后一个移动到C柱子上;(图2)
//第三次移动,把B柱子上的n - 1个柱子通过柱子A移动到柱子C上。图三

 


#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
//首先说明一点 我们写的递归一定要讲究 相似之处 并且所有的事件都会归一 会为你想完成的那件事情服务 这就是递归 并且递归一定要有一个靠近的点
//第一次移动,要把A柱子上的前n-1个移动到B柱子上;(图1)
//第二次移动,直接把A柱子上的最后一个移动到C柱子上;(图2)
//第三次移动,把B柱子上的n - 1个柱子通过柱子A移动到柱子C上。
//不管你要移动多少 总会有这个步骤进行 操作 所以我们可以依照这个操作 并且
//所以写的步骤都不会冲突的
void hanoi(int n,char a,char b,char c)
{
	if (n == 1)
	{
		printf("%c->%c", a, c);//这个位置出现 是为了说明当只有一个的时候 我们的移动操作过程 直接移动 
	}
	//以下三个代码就是我们实现的思路方法 
	else
	{
		hanoi(n - 1, a, c, b);//A柱子上的前n-1个移动到B柱子上  
		printf("%c->%c", a, c);//直接把A柱子上的最后一个移动到C柱子上 这个是唯一一个进行打印的步骤 也就是说 真正进行打印的步骤  注意我们的a c不是刚刚的 a  c了需要注意一下才行
		hanoi(n - 1, b, a, c);//这个代表将把B柱子上的n - 1个柱子通过柱子A移动到柱子C上
	}

}

int main()
{
	int n = 0;
	scanf("%d", &n);//这里确定是写几个盘子 进行
	hanoi(n, 'A', 'B', 'C');
}


点击全文阅读


本文链接:http://zhangshiyu.com/post/29555.html

柱子  递归  圆盘  
<< 上一篇 下一篇 >>

  • 评论(0)
  • 赞助本站

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

最新文章

  • 被瘾症折磨的可怜校花结局+番外(张团团仁川)_(离婚后前夫对婚我念念不忘结局+番外)被瘾症折磨的可怜校花结局+番外列表_笔趣阁(张团团仁川)
  • 一觉醒来发现自己变成了前男友(沈季+)全书浏览_一觉醒来发现自己变成了前男友全书浏览
  • 爱意困于暮色精彩章节免费试读_顾景琛陆灵溪孤儿章节试读
  • 女配爆改,将兼祧两房的老公和闺蜜团灭(蒋一航)_女配爆改,将兼祧两房的老公和闺蜜团灭
  • 我在梦里等花开后续+完结(路之窈顾林轩)_我在梦里等花开后续+完结路之窈顾林轩
  • 纪羡晚贺闻朝全书+后续+结局(贺闻朝纪羡晚)列表_纪羡晚贺闻朝全书+后续+结局(贺闻朝纪羡晚)纪羡晚贺闻朝全书+后续+结局在线
  • 予摘月(顾南意季屿州)_予摘月(顾南意季屿州)
  • 俞浅音霍祁安全书+后续+结局(俞浅音霍祁安)列表_俞浅音霍祁安全书+后续+结局(俞浅音霍祁安)全书+后续+结局在线
  • 前女友退婚后,我成了财阀女婿番外合集提前订‌_宋远顾时语最新后续章节在线阅读
  • 兰因絮果,爱恨全如玉碎全局+结局(谢长乐肖风行)_兰因絮果,爱恨全如玉碎全局+结局
  • 好看的宋青青聂子远我给第三十八任老公过喜全章+结局_宋青青聂子远我给第三十八任老公过喜全章+结局
  • 她已走远全书+后续(苏然霍霆舟)_她已走远全书+后续列表_笔趣阁(苏然霍霆舟)

    关于我们 | 我要投稿 | 免责申明

    Copyright © 2020-2022 ZhangShiYu.com Rights Reserved.豫ICP备2022013469号-1