¿Soy un mal programador si no puedo entender Towers of Hanoi?

No; ¡Puedo imaginar fácilmente a muchos de mis antiguos colegas que deciden echar de menos a ese, antes de volver a sus trabajos de software!

Pero podrás entenderlo con un poco de esfuerzo. Primero comprende el rompecabezas en sí. Luego intente usar funciones recursivas, siguiendo un tutorial si lo desea. Luego, finalmente, escriba una solución recursiva para las Torres (literalmente cópiela de alguna parte), y una vez que funcione, intente comprenderla.

Lo bueno de la recursividad es que a menudo puedes tomar lo que parece un problema muy complicado como este, y simplemente resolver un solo paso. Luego descubres, al usar la recursión de manera apropiada, que resolver este único paso de hecho lo resuelve todo.

Existen soluciones no recursivas, por supuesto, pero la recursividad funciona realmente bien aquí.

La página de Wikipedia contiene una buena descripción del juego, en la parte superior, y más abajo puedes leer sobre una solución recursiva: Torre de Hanoi

Aquí hay un código Java de ejemplo: Towers of Hanoi – Programas Java – Java With Us

Comprender esto no es una cuestión de gran esfuerzo intelectual. Es cuestión de paciencia y tomarse el tiempo para pensarlo todo. Lo administrará si dedica suficiente tiempo.

Supongo que está hablando del enfoque iterativo de resolver la torre de hanoi.

No se preocupe, me llevó 6 días comprender el enfoque recursivo e iterativo. Inicialmente, también pensé que no lo entendería, pero lo hice.

Primero vaya a youtube u otro sitio y vea la representación visual de la Torre de Hanoi, solo vea cómo funciona, luego en GeeksforGeeks | Un portal informático para geeks ve el enfoque recursivo e intenta implementarlo. Tómate todo el tiempo que quieras.

Luego, para un enfoque iterativo, visite Ideone.com, tiene una representación más simple que la de geeksforgeeks.

En algún momento, publicaré un diagrama para un enfoque recursivo y luego lo entenderás bien, hasta entonces sigue intentándolo.

Y sí, respondí muy tarde, espero que hayas entendido el problema hasta ahora. Pero si no lo hiciste, házmelo saber. Te ayudaré 🙂

Gracias

Definitivamente no. Muchos de mis amigos que son buenos en la recursión no entendieron que la pila de recursión de la Torre de Hanoi es una sola vez y requiere tiempo.

Tenga en cuenta el rastro de la pila de recursión de la Torre de Hanoi y será muy fácil de codificar.

Programa de seguimiento de pila

Explicación detallada paso a paso con el programa: Torre de Hanoi

No, no lo eres, las personas son diferentes, seguro de que puede llevarte tiempo entender el algoritmo, pero puedes hacerlo. La cuestión es que quizás necesites adoptar un enfoque diferente para comprender los conceptos

No, no lo eres. Towers of Hanoi es un algoritmo recursivo y lleva tiempo comprenderlo. Simplemente duerma bien y tenga una nueva mirada mañana.