| 编程中国 | 业界新闻 | 技术文章 | 视频教程 | 下载频道 | 程序源码 | 个人空间 | 编程论坛
全能ASP/PHP/ASP.NET主机,支持月付专业 MSSQL 数据库空间,支持月付专业 MySQL 数据库空间,支持月付买域名,送MP3、MP4
高端软件开发 = 年薪十万不是梦赛孚耐:软件保护加密专家身份认证令牌USB KEY买空间,免费送域名(厦门中资源)
共有 253 人关注过本帖
标题:汉诺塔如何理解???
收藏  订阅  推荐  打印 
liaojuncong
Rank: 1
等级:新手上路
帖子:27
积分:416
注册:2008-4-26
汉诺塔如何理解???

这个程序我看不懂...
各位能不能通俗解释一下
#include<stdio.h>
void hanoi(int n,char one,char two,char three);
void move(char x,char y);
int main()
{
    int m;
    printf("Input the number of diskes:");
    scanf("%d",&m);
    printf("The step to moveing %d diskes:\n",m);
    hanoi(m,'A','B','C');
    return 0;
}
void hanoi(int n,char one,char two,char three)
{
    if (n==1){
        move(one,three);
    }
    else {
        hanoi(n-1,one,three,two);
        move(one,three);
        hanoi(n-1,two,one,three);
    }
}
void move(char x,char y)
{
    printf("%c-->%c\n",x,y);
}

[ 本帖最后由 liaojuncong 于 2008-5-12 13:10 编辑 ]
附件: 只有本站会员才能下载或查看附件,请您 登录注册
搜索更多相关主题的帖子: 汉诺塔  
2008-5-12 13:04
sunkaidong
Rank: 12Rank: 12Rank: 12
来自:南京师范大学
等级:版主
威望:4
帖子:4131
积分:44881
注册:2006-12-28

这时分治法的应用..在纸上画画....把大问题分解成小问题,由小问题构造大问题解..

学习需要安静。。海盗要重新来过。。
2008-5-12 13:09
关于我们 | 广告合作 | 编程中国 | 清除Cookies | Archiver | WAP | TOP

编程中国 版权所有,并保留所有权利。鲁ICP备08000592号
Powered by Discuz, Processed in 0.045854 second(s), 9 queries.
Copyright©2004-2008, BCCN.NET, All Rights Reserved