用Java写一个汉诺塔小程序
时间: 2024-05-06 08:17:20 浏览: 94
好的,以下是用Java语言编写的汉诺塔小程序:
```java
import java.util.Scanner;
public class HanoiTower {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.print("请输入汉诺塔的层数:");
int n = input.nextInt();
hanoi(n, 'A', 'B', 'C');
}
public static void move(char x, char y) {
System.out.println(x + " --> " + y);
}
public static void hanoi(int n, char a, char b, char c) {
if (n == 1) {
move(a, c);
} else {
hanoi(n - 1, a, c, b);
move(a, c);
hanoi(n - 1, b, a, c);
}
}
}
```
程序实现了汉诺塔的递归算法,其中的 `move` 方法用来输出每次移动的过程,`hanoi` 方法用来递归求解汉诺塔问题。在程序中输入汉诺塔的层数,即可输出完整的汉诺塔移动过程。
阅读全文