C语言汉诺塔问题图文详解

本文详细介绍了如何使用C语言解决汉诺塔问题,包括移动步骤解析和递归函数的实现,通过输入盘子数量运行代码展示完整过程。
摘要由CSDN通过智能技术生成

设立三根柱子,pos1,pos2,pos3

要求将pos1柱子上的三个圆盘按照顺序移动到pos3柱子上,并且每次只能移动一个圆盘,移动过程中每个柱子上的圆盘都保持下大上小的顺序排列

当只有一个圆盘时,只需一步

假设有三个圆盘a,b,c

移动顺序如下:

 

将a从A->C      将b从A->B      将a从C->B     将c从A->C     将a从B->A     将b从B->C     将a从A->C

一共七步,可以发现圆盘c只需移动一次就可达成目的,其他圆盘都需经过B柱子中转

即若有n个圆盘,那么(n-1)个圆盘必须先由A柱子转到C柱

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值