Foros del Web » Programación para mayores de 30 ;) » Java »

Paginación usando árbol binario en java

Estas en el tema de Paginación usando árbol binario en java en el foro de Java en Foros del Web. Hola, quería preguntarles cómo hacer una estructura de datos con paginación de registros de un árbol binario ej: raiz –pagina1 –elem1 –elem2 –elem3 –elem4 –elem5 ...
  #1 (permalink)  
Antiguo 26/08/2015, 19:13
Avatar de detective_jd  
Fecha de Ingreso: abril-2011
Ubicación: Salto
Mensajes: 437
Antigüedad: 13 años
Puntos: 6
Paginación usando árbol binario en java

Hola, quería preguntarles cómo hacer una estructura de datos con paginación de registros de un árbol binario ej:

raiz
–pagina1
–elem1
–elem2
–elem3
–elem4
–elem5
–pagina2
–elem6
–elem7
–elem8
–elem9
–elem10

Porque intento pero no sé cómo empezar con la idea de los árboles binario para hacer una paginación y hacer dicha estructura.

Saludos.
  #2 (permalink)  
Antiguo 27/08/2015, 00:48
Avatar de Profesor_Falken  
Fecha de Ingreso: agosto-2014
Ubicación: Mountain View
Mensajes: 1.323
Antigüedad: 9 años, 8 meses
Puntos: 182
Respuesta: Paginación usando árbol binario en java

Buenas,

Podrias empezar a estudiar con este ejemplo:
http://www.java2s.com/Code/Java/Coll...BinaryTree.htm

Un saludo
__________________
If to err is human, then programmers are the most human of us
  #3 (permalink)  
Antiguo 27/08/2015, 17:17
Avatar de detective_jd  
Fecha de Ingreso: abril-2011
Ubicación: Salto
Mensajes: 437
Antigüedad: 13 años
Puntos: 6
Respuesta: Paginación usando árbol binario en java

Hola Profesor_Falken, estuve mirando el método insert del código que me puso, lo comenté y saque esta conclusión:

public void insert(Node node, int value) {
// si el valor que le paso por parámetro es menor al valor del nodo.
if (value < node.value) {
/*
volvemos a preguntar si el lado izquiero del nodo no es nulo, teniendo en cuenta
que si es la raíz el nodo que pasamos por parámetro por primera vez, obvio que será
nulo en, entonces en ese caso el nodo que le pasamos por parámetro será del lado
izquierdo de la raíz, de lo contrario el nodo que le pasamos por parámetro será el
nodo izquiero del izquiero de la raíz y del izquierdo del izquierdo y así sucesivamente
*/
if (node.left != null) {
insert(node.left, value);
}
else {
System.out.println(" Inserted " + value + " to left of " + node.value);
node.left = new Node(value);
}
}
/*
pero si el valor que le paso por parámetro es mayor al valor del nodo, se
cumplirá lo mismo que la parte anterior comentada pero en vez de preguntar
del lado izquierdo del nodo, preguntará sobre el derecho
*/

else if (value > node.value) {
if (node.right != null) {
insert(node.right, value);
}
else {
System.out.println(" Inserted " + value + " to right of " + node.value);
node.right = new Node(value);
}
}
}

Sólo que sucede lo siguiente, según el ejemplo:

--1
--3
5
--6
--8
--9

siempre hay un lado izquierdo y derecho del nodo ya sea la raíz o el nodo dentro del otro, la cuestión cómo hago que el nodo sea una página y que en la página pueda agregar una cantidad límitada de registros.

Ahí es dónde empiezan mis dudas y preguntas.

Saludos

Etiquetas: binario, usando
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:12.