Piccato, P. - Historia mínima de la violencia en México [2022].pdf
La torre de hanoi
1. La Torre de Hanoi (también llamada la Torre de Brahma o la Torre de Lucas) es un juego
matemático o puzzle. Se compone de tres varillas, y un número de discos de diferentes
tamaños que pueden deslizarse a cualquier varilla. El rompecabezas comienza con los
discos en una pila ordenada en orden ascendente de tamaño de una varilla, el más
pequeño en la parte superior, formando un cono.
El objetivo del rompecabezas es mover toda la pila a otra varilla, obedeciendo las
siguientes reglas:
Sólo un disco se puede mover a la vez.
Cada movimiento consiste en tomar el disco superior de una de las pilas y
colocándolo en la parte superior de la otra pila es decir, un disco sólo se puede mover
si es el disco más superior en una pila.
Ningún disco puede ser colocado en la parte superior de un disco más pequeño.
3. Implementación Recursiva
Es una técnica de programación que se utiliza para realizar una llamada a una función desde la misma función.
Aquel que se llama a si mismo hasta encontrar un fin o hasta llegar a un índice. Tienen alguna condición que si ya no se cumple y no
sigue llamando a su método.
Ventajas
Soluciona problemas recurrentes.
Son programas cortos.
Soluciones simples, claras.
Soluciones elegantes.
Soluciones a problemas complejos.
Desventajas
Creación de muchas variables.
Puede necesitar mucha memoria.
La ineficiencia inherente de algunos algoritmos recursivos.
Sobrecarga asociada con las llamadas a subalgoritmos, ya que una simple llamada puede generar un gran número de
llamadas recursivas.
4. Implementación Iterativa
Es una técnica de programación que utiliza bucles para realizar ciertas acciones repetidamente, hasta que se cumple una condición.
Ventajas
Permite manejar la complejidad del proyecto, apuntando a la resolución de los problemas por partes.
El aprendizaje y experiencia del equipo
Mejora exponencialmente el trabajo,
Aumenta la productividad
Permite optimizar el proceso en el corto plazo.
Desventajas
El uso de un desarrollo iterativo e incremental no garantiza por sí solo el éxito de su uso.
Hay costos ocultos en su implementación, ya que se incorporan varias actividades a realizar por el equipo, y hay que saber
medir ese impacto para no fracasar en el intento.