递归编程解决汉诺塔问题。用Java实现

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了递归编程解决汉诺塔问题。用Java实现相关的知识,希望对你有一定的参考价值。

package 汉尼拔;
import java.util.*;
public class 汉尼拔
{
 static Scanner sc=new Scanner(System.in);
 static int disk=sc.nextInt();
 public static void main(String[] args)
 {
  // TODO Auto-generated method stub
     Hannibal(disk,‘A‘,‘B‘,‘C‘);
     System.exit(0);
 }
public static void Hannibal(int Topdisk,char A,char B,char C)
{
    if(Topdisk==1)
     System.out.println("盘子 1 从 "+A+" 到"+C);
    else
    {
  Hannibal(Topdisk-1,A,C,B);
     System.out.println("盘子  "+Topdisk+" 从 "+A+" 到"+C);
     Hannibal(Topdisk-1,B,A,C);
    }
 }
}
























以上是关于递归编程解决汉诺塔问题。用Java实现的主要内容,如果未能解决你的问题,请参考以下文章

Java编程用栈来求解汉诺塔问题的代码实例(非递归)_java - JAVA

分治算法——汉诺塔问题

课后作业2:递归编程解决汉诺塔问题

汉诺塔的C语言代码怎么写啊

递归解决汉诺塔问题

python汉诺塔非递归