首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

求教递归有关问题

2012-03-30 
求教递归问题publicclassHanoiY{voidMove(charchSour,charchDest){Console.WriteLine( Movethetopplateof

求教递归问题
public   class   HanoiY
        {
                void   Move(char   chSour,   char   chDest)
                {
                        Console.WriteLine( "Move   the   top   plate   of   "   +   chSour   +   "--> "   +   chDest);
                }

                void   Hanoi(int   n,   char   chA,   char   chB,   char   chC)
                {
                        if   (n   ==   1)
                                Move(chA,   chC);
                        else
                        {
                                Hanoi(n   -   1,   chA,   chC,   chB);
                                this.Move(chA,   chC);
                                Hanoi(n   -   1,   chB,   chA,   chC);
                        }
                }

                public   static   void   Main(String[]   args)
                {
                        int   n   =   int.Parse(Console.ReadLine());
                        HanoiY   han   =   new   HanoiY();
                        han.Hanoi(n,   'A ',   'B ',   'C ');
                        Console.ReadLine();
                }
        }
请讲解一下这个汉诺塔程序,关键是递归部分


[解决办法]
递归就是在条件下反复调用自己....

我觉得递归可读性不强,但是很省代码..但有人说可读性很强...?

热点排行