public class Hanoi { public static void main(String[] args ) { Hanoi hanoi = new Hanoi(); hanoi.hanoi(8,‘a‘,‘b‘,‘c‘); } //圆盘个数,三根柱子,作为参数 public void hanoi(int n,char x,char y,char z){ if (n==1 ){ //只有一个圆盘直接移动从x到z move(x,n,z); }else { //多个圆盘,先将n-1个从x移动到y,通过z辅助 hanoi(n-1,x,z,y); //将最下边的移动从x到z move(x,n,z); //再将剩余的n-1个从y移动到z,通过x辅助 hanoi(n-1,y,x,z); } } public void move(char x,int n,char z){ System.out.println("移动圆盘"+n+",从"+x+"到"+z); } }
原文:https://www.cnblogs.com/muziyang/p/12453781.html