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

汉诺塔问题解决

时间:2017-04-22 17:41:02      阅读:159      评论:0      收藏:0      [点我收藏+]

标签:logs   stat   nbsp   har   rgs   str   问题   汉诺塔   []   


 参数说明:
  n:多个盘子
  from:原杆(其上有多个盘子的杆)
  denpend:中间杆
  to:目标杆

public class Hanoi{
  public static void hanoi(int n,char from,char denpend,char to){
    if(n==1){
      System.out.println("将"+n+"号盘子"+from+"---->"+to);
    }else{
      hanoi(n-1,from,to,denpend);//将N-1盘子从原杆移动到中间杆
      System.out.println("将"+n+"号盘子"+from+"---->"+to);//将第N号盘子从原杆移动至目标杆
      hanoi(n-1,denpend,from,to);//将N-1盘子从原杆移动到中间杆
    }
  }

  public static void main(String[] args){
    char from=‘A‘;
    char denpend=‘B‘;
    char to=‘C‘;
    System.out.println("盘子移动的情况如下:");
    hanoi(4,from,denpend,to);
  }

}

 

汉诺塔问题解决

标签:logs   stat   nbsp   har   rgs   str   问题   汉诺塔   []   

原文地址:http://www.cnblogs.com/fwdsz/p/6670256.html

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