zoukankan      html  css  js  c++  java
  • 汉诺塔递归算法

     1 #include<stdio.h>
     2 #include <stdlib.h>
     3 
     4 int count=0;  //主函数之外定义的变量为全局变量
     5 void  Hanoi(int n, char A, char B, char C)  //n为盘子数,A:原位置,B:过渡位置,C:目标位置
     6 {
     7     if(n==1) //当盘子只有一个的情况下 由A移动到C
     8     {
     9         count++;   //计数加一
    10         printf("%c->%c %d
    ",A,C,count);
    11     }
    12     else
    13     {
    14         Hanoi(n-1,A,C,B); //将第n个盘子之上的n-1个盘子视为一个整体
    15         count++;
    16         printf("%c->%c %d
    ",A,C,count);
    17         Hanoi(n-1,B,A,C);
    18     }
    19 }
    20 int main()
    21 {
    22     Hanoi(5,'A','B','C');
    23     printf("%d
    ",count);
    24     return 0;
    25 }
  • 相关阅读:
    尚未笔记知识点
    jsonp的原理及其使用
    django中将views.py中的python方法传递给html模板文件
    UVA
    UVA
    UVA
    UVA
    UVA
    UVA 1600 Patrol Robot
    UVA
  • 原文地址:https://www.cnblogs.com/Ghost4C-QH/p/9689128.html
Copyright © 2011-2022 走看看