编写Java代码解决汉诺塔
public class HanoiTower { public static void main(String[] args) { int n = 3; // 设置游戏的盘数 hanoi(n, 'A', 'B', 'C'); }
public static void hanoi(int n, char a, char b, char c) {
if (n == 1) {
System.out.println("将盘子从 " + a + " 移动到 " + c);
} else {
hanoi(n - 1, a, c, b);
System.out.println("将盘子从 " + a + " 移动到 " + c);
hanoi(n - 1, b, a, c);
}
}
}
// 输出结果 // 将盘子从 A 移动到 C // 将盘子从 A 移动到 B // 将盘子从 C 移动到 B // 将盘子从 A 移动到 C // 将盘子从 B 移动到 A // 将盘子从 B 移动到 C // 将盘子从 A 移动到 C
原文地址: http://www.cveoy.top/t/topic/bfFP 著作权归作者所有。请勿转载和采集!