Ver Mensaje Individual
  #15 (permalink)  
Antiguo 29/06/2018, 20:30
Avatar de detective_jd
detective_jd
 
Fecha de Ingreso: abril-2011
Ubicación: Salto
Mensajes: 437
Antigüedad: 13 años, 7 meses
Puntos: 6
Respuesta: Balanceos con Árboles Hash

Hola a todos, problema resuelto resulta que le faltaba una línea al final de rotateRight:

Código Java:
Ver original
  1. private void rotateRight(Entry<K,V> p) {
  2.         Entry<K,V> x = p.left;
  3.         p.left = x.right;
  4.         if (x.right != null)
  5.             x.right.parent = p;
  6.         x.parent = p.parent;        
  7.         if (p.parent == null) {
  8.             root = (Entry)x;
  9.         } else if (p == p.parent.right){
  10.             p.parent.right = x;
  11.         } else {
  12.             x.parent.left = x;
  13.         }
  14.         x.right = p;
  15.         p.parent = x; //faltaba esta línea
  16.     }

Ya hice todas las pruebas y es oficial el put ya esta funciona bien, iré viendo las demás funcionalidades si alguna me falla iré pegando el grito.

Espero sus respuestas y saludos.
__________________
Si te interesa, visita mi perfil de Linkedin. Gracias