Problema da Torre Hanói: Havia uma torre budista nos tempos antigos, com três A, B e C na torre. Havia n placas nas placas A. variam em tamanho, as maiores estão no fundo e as menores estão no topo (como mostrado na figura).
Havia um monge que queria mover esses n pratos do assento A para o assento B, mas apenas um prato foi autorizado a se mover por vez. Durante o movimento, as placas nos três assentos sempre mantinham as placas grandes e as pequenas placas no topo. Durante o processo de movimento, você pode usar o assento B para exigir a impressão das etapas do movimento. Se houver apenas uma placa, você não precisará usar o assento B e mover a placa diretamente de A para C.
O código Java é o seguinte:
classe pública hanói {public static void main (string [] args) {int disk = 3; // move de prato (disco, 'a', 'b', 'c'); } /** De acordo com a pergunta, o número de cima para baixo => 1 ~ n* / / **** @param superior ao número da placa na parte superior da torre de origem* @param da qual a torre para se mover de* @param inter agente, transição torre* @param para a torre de destino* / private static void (int topn, char de, char, char para) {se de + "a" + para); } else {move (topn - 1, de, para, inter); System.out.println ("disco" + topn + "de" + de " + de +" para " + para); mover (topn - 1, inter, de, para);}}}fora
Disco 1 de A a C Disco 2 de A a B Disco 1 de C a B Disco 3 De A a C Disco 1 de B a um disco 2 de B a C Disco 1 de A a C