Ver Mensaje Individual
  #1 (permalink)  
Antiguo 19/10/2018, 21:01
Avatar de detective_jd
detective_jd
 
Fecha de Ingreso: abril-2011
Ubicación: Salto
Mensajes: 437
Antigüedad: 13 años, 8 meses
Puntos: 6
Balanceos con Árboles Set

Hola a todos, este post en sí es una continuación de este: Balanceos con Árboles Hash

Resulta que estuve probando las funcionalidades básicas y funcionan pero el problema está cuando quiero probar la implementación delegada de los mismas pero pasa esto, si en MyTreeSet en la función iterator pongo esto:

Código Java:
Ver original
  1. @Override
  2.     public Iterator<E> iterator() {
  3.         return map.navigableKeySet().iterator();
  4.         //return map.keySet().iterator();
  5.     }

Sucede esto:

Cita:
---* Segundo Testing: probando subsets ascending---

--- Probando subSet MyTreeSet---
subSet [Deborah:Franco]: [Deborah, Franco, Manuela, Tomás]
subSet [Franco:Tomás]: [Deborah, Franco, Manuela, Tomás]
subSet [Deborah:nulo]: [Deborah, Franco, Manuela, Tomás]
subSet [nulo:Tomás]: [Deborah, Franco, Manuela, Tomás]
subSet [nulo:nulo]: []
--- Probando subSet TreeSet---
subSet [Deborah:Franco]: [Deborah]
subSet [Franco:Tomás]: [Franco, Manuela]
--- Probando headSet MyTreeSet---
headSet [Deborah]: []
headSet [Franco]: []
headSet [Manuela]: []
headSet [Tomás]: []
--- Probando headSet TreeSet---
headSet [Deborah]: []
headSet [Franco]: [Deborah]
headSet [Manuela]: [Deborah, Franco]
headSet [Tomás]: [Deborah, Franco, Manuela]
Pero cuando pongo de ésta forma:

Código Java:
Ver original
  1. @Override
  2.     public Iterator<E> iterator() {
  3.         //return map.navigableKeySet().iterator();
  4.         return map.keySet().iterator();
  5.     }

El subset funciona pero los headset y tailset no, cómo lo pueden ver:

Cita:
---* Segundo Testing: probando subsets ascending---

--- Probando subSet MyTreeSet---
subSet [Deborah:Franco]: [Deborah]
subSet [Franco:Tomás]: [Franco, Manuela]
subSet [Deborah:nulo]: [Deborah, Franco, Manuela]
subSet [nulo:Tomás]: [Deborah, Franco, Manuela]
subSet [nulo:nulo]: []
--- Probando subSet TreeSet---
subSet [Deborah:Franco]: [Deborah]
subSet [Franco:Tomás]: [Franco, Manuela]
--- Probando headSet MyTreeSet---
headSet [Deborah]: []
headSet [Franco]: []
headSet [Manuela]: []
headSet [Tomás]: []
--- Probando headSet TreeSet---
headSet [Deborah]: []
headSet [Franco]: [Deborah]
headSet [Manuela]: [Deborah, Franco]
headSet [Tomás]: [Deborah, Franco, Manuela]
Revisé, depuré pero no doy bien con el problema y menos con la solución. Aquí está el código:

https://github.com/detectivejd/TreeS...MyTreeSet.java

Espero sus respustas y saludos.

PD: Una vez que se solucione estas fallas, los test que ven en el repositorio, desaparecerán.
__________________
Si te interesa, visita mi perfil de Linkedin. Gracias