Algo que desarrollé antes de aprender sobre la recursividad (1977 más o menos), especialmente porque solo tenía acceso a BASIC para hacer esto:
Comience con una torre llena. Marque los discos en orden de tamaño de 1 a N. Marque las posiciones como A, B, C (no es realmente necesario, pero es un recordatorio de que solo hay 3 posiciones). En cualquier momento, solo habrá un movimiento “correcto”. Ese movimiento correcto es:
1) No es el último disco que se movió. Por lo tanto, solo se pueden mover dos posiciones.
- ¿Cuál es la mejor manera de aprender geometría algebraica si uno no está interesado en usarlo para propósitos teóricos numéricos, sino más bien para aplicaciones en física teórica e informática teórica?
- Tengo miedo a las matemáticas. Estoy programando estudiante, ¿qué puedo hacer?
- ¿Cómo se puede resolver este problema?
- ¿Qué campos \ conceptos matemáticos deben conocer los lingüistas?
- ¿Por qué soy bueno en cursos intensivos de programación, pero sigo reprobando en cursos de teoría de informática? ¿Estoy en condiciones de ser ingeniero de software?
2) Realice el movimiento que coloca un disco impar encima de un disco par o un disco par encima de un disco impar. (ref: todos los discos están numerados del 1 al N según el tamaño)
2a) Si hay más de una opción, mueva el disco con el número más alto.
2b) Nunca ponga un par encima de par o impar encima de impar.
(Estoy escribiendo esto de memoria.) Pero básicamente, 2a y 2b y moverás la torre.