c程序~递归问题

[复制链接]
查看11 | 回复1 | 2006-8-25 13:15:49 | 显示全部楼层 |阅读模式
很多C语言的书籍上都有讲
回复

使用道具 举报

千问 | 2006-8-25 13:15:49 | 显示全部楼层
这道程序是汉诺塔问题:目的:把n个东西从A处移动到C处。分析:如果只有一个:直接搬过去即可: if(n==1) printf("%c---%c\n",a,c);否则,把除最下面的那个以外的先放到b处:hanoi(n-1,a,c,b );再把最下面的那个搬到c处;于是问题就变成了:把n-1个东西从b处移动到c处:hanoi(n-1,b,a,c);递归就开始了……n-1,n-2,……,2,1 结束过程大致就是这样。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行