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

Gracias por responder FuzzyLog y CalgaryCorpus pues los 2 tenían razón. Así cómo lo tenía nunca iba a funcionar, así que lo que hice fue poner a EntrySetView, SubMapIterator y SubMapEntryIterator como clases internas a NavigableMap para que me andara los generics y funcionó.
Lo siguiente que tuve que hacer para que el nextEntry de SubMapIterator funcionara fue hacer a la función successor como estática provocando como consecuencia que las funciones leftOf, rightOf, colorOf, setColor y parentOf también sean estáticas sólo que a éstas tuve que ponerle el comodin para que me tomara bien los generics (parece ser propio del JDK8):

Código Java:
Ver original
  1. private static <K,V> boolean colorOf(Entry<K,V> p) {
  2.         return (p == null ? BLACK : p.color);
  3.     }
  4.     private static <K,V> Entry<K,V> parentOf(Entry<K,V> p) {
  5.         return (p == null ? null: p.parent);
  6.     }
  7.     private static <K,V> void setColor(Entry<K,V> p, boolean c) {
  8.         if (p != null)
  9.             p.color = c;
  10.     }
  11.     private static <K,V> Entry<K,V> leftOf(Entry<K,V> p) {
  12.         return (p == null) ? null: p.left;
  13.     }
  14.     private static <K,V> Entry<K,V> rightOf(Entry<K,V> p) {
  15.         return (p == null) ? null: p.right;
  16.     }

Por úlitmo tuve que ver la congruencia pertinente para que me andarán bien todo de los submaps con el tailMap. Eso lo pueden ver en el código.

Código del TreeMap casero

Ahora seguiré probando e implementando lo que quedan de los submaps, en caso que ocurra algo, daré el grito.

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