вход программы в аргументах String [] будет выглядеть следующим образом: 123 0 0, где каждый стержень Ханойской башни разделен пробелом, а каждое 1-значное целое число представляет диск такого размера.
Каксделать класс HanoiState, который позволит мне сохранить текущее состояние, заданное в качестве входных данных, и сделать так, чтобы перемещать любой диск в верхней части стержня, в данном случае это «1», от одного стержня к другомурядом с ним все просто.
Примеры командной строки: $ java hanoi 123 0 0 или $ java hanoi 12 0 4 0
Я думал о создании n очередей приоритетов для nколичество стержней после разбора ввода.Тем не менее, число стержней не является постоянным, и я не уверен, как это закодировать.
Можно ли также построить массив очередей с приоритетом?или список очередей с приоритетом?
public static class HanoiState {
public HanoiState(int rods){
}
}
public static void main(String[] args) {
if (args.length < 3) {
return;
}
HanoiState a = new HanoiState(args.length - 1);