Closed isihirmas closed 5 years ago
Hola! No es necesario que implementes el swap de forma explícita con el método balance dado, pero se recomienda fuertemente hacerlo ya que las alternativas podrían ser mucho más dificiles de implementar. Con tal que el árbol quede ordenado de forma correcta al final, está todo bien. Éxito!
Ya es que por ejemplo yo balanceo y al hacerlo asigno los hijos, pero luego en la siguiente iteración no se relaciona que ese nodo es "hijo" de alguien, está bien esa relación? Pregunto por lo que vi en los json de la carpeta test, que según yo por como armé mi árbol no podría hacer ese seguimiento. Osea, cada nodo tiene bien asignados a su hijo izquierdo o derecho, pero en ninguna parte relaciono que ese hijo izquierdo es el padre de otro nodo, se entiende?
Lo que podrías hacer es agregar un atributo dentro de cada nodo que almacene a su padre para no perder esta referencia y hacer más fácil la implementación de tu arbol. Recuerda que puedes agregar todos los atributos y métodos que quieras, con tal que uses los mínimos pedidos (:
sobre el metodo balace......se puede agregarle parametros a la funcion? balance(nodo), asi la funcion sabe del nodo que parte haciendo swap(si es necesario)
Hola,
No se puede. Pero puedes agregar más atributos a la clase para resolver ese problema.
Saludos ✌️
Hola! es obligatorio programar el swap? O basta con que el árbol final quede reordenado con los valores correctos? Saludos!