汉诺塔算法

using System;

namespace 汉诺塔算法
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("盘数为:{0}",10);
            hanoi(3, 'A', 'B', 'C');
            Console.ReadLine();
        }
        public static void hanoi(int n, char one, char two, char three)          // 定义hanoi函数  
        // 将n个盘从one座借助two座,移到three座 
        {
            if (n == 1)
                move(one, three);           //只有一个盘直接A->C
            else
            {
                hanoi(n - 1, one, three,two);//将前n-1个盘移动到B座
                move(one, three);               //将第n个盘从A座移动到C座
                hanoi(n - 1, two, one, three);//将前n-1个盘从B座借助A座,移到C座
            }
        }

        public static void move(char x, char y)           //  定义move函数 
        {
            Console.WriteLine("{0}-->{1}",x,y);
        }
    }
}

阅读更多
文章标签: 算法 string class c
个人分类: 数据结构与算法
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭