码迷,mamicode.com
首页 > 其他好文 > 详细

汉诺塔

时间:2018-05-20 14:13:56      阅读:127      评论:0      收藏:0      [点我收藏+]

标签:表示   数据结构   数据   通过   传递   lse   思路   har   \n   

/推荐看小甲鱼的数据结构与算法视频/

void move(int n, char a, char b, char c)

{

   if(n==1)

   {

        printf("%c-->%c\n", a,c);

   }

   else

   {

        move(n-1, a, c, b);//

        printf("%c-->%c\n", a, c);

        move(n-1, b, a, c);//两次参数传递的变换,表示中介发生变化

   }

}

 

int main(void)

{

    move(3, ‘a‘, ‘b‘, ‘c‘);

}

//思路 A,B,C

第一步,把A->C 把A上面n-1个盘子通过B为中介移到C上面

第二步,把A上第N个盘子,放到B上面,

第三步,把C上面的N-1的盘子通过A移到B上面

 

汉诺塔

标签:表示   数据结构   数据   通过   传递   lse   思路   har   \n   

原文地址:https://www.cnblogs.com/love-life-insist/p/9063140.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!