|
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
public interface Arbol<E>
Interfaz que define las operaciones de cualquiera arbol (tree). Los árboles son estructuras que relacionan sus elementos, llamados nodos, formando jerarquías: todo nodo (excepto la raíz que es la cabeza de la jerarquía) es descendiente de un nodo único, y puede ser ascendente de otros nodos (cuando no tiene descendientes se llama hoja). Cuando un nodo puede tener un número indeterminado de hijos hablamos de árboles generales (general tree) y, si tiene un número fijo N, de árboles de orden N (n-ary tree); en estos últimos destaca el caso de N = 2, los llamados árboles binarios (binary tree).
Method Summary | |
---|---|
void |
borrar(Posicion<E> padre,
Posicion<E> hijo)
Borra el subárbol representado por la posición hijo, si se puede. |
boolean |
esHoja(Posicion<E> pos)
Comprueba si el arbol o subárbol tiene algún hijo. |
Recorrido<E> |
hijos(Posicion<E> padre)
Método que soporta múltiples recorridos, de las posiciones hijas de la posición de referencia, simultáneos e independientes entre ellos. |
Posicion<E> |
insertar(Posicion<E> padre,
E elem)
Añade un elemento como nuevo hijo de la posición recibida, si se puede. |
void |
intercambiar(Posicion<E> pos1,
Posicion<E> pos2)
Intercambia en el arbol los elementos contenidos a las posiciones recibidas. |
Recorrido<E> |
posiciones()
Recorrido de las posiciones del arbol. |
Posicion<E> |
raiz()
Accesor de lectura de la raíz del arbol, si hay. |
Recorrido<E> |
recorridoPorNiveles()
Recorrido por niveles de las posiciones del arbol. |
Recorrido<E> |
recorridoPostorden()
Recorrido en posorden de las posiciones del arbol. |
Recorrido<E> |
recorridoPreorden()
Recorrido en preorden de las posiciones del arbol. |
E |
reemplazar(Posicion<E> pos,
E elem)
Reemplaza el elemento contenido en la posición recibida. |
Methods inherited from interface uoc.ei.tads.Contenedor |
---|
elementos, estaVacio, numElems |
Method Detail |
---|
Posicion<E> raiz()
Recorrido<E> hijos(Posicion<E> padre)
padre
- posición de referencia
boolean esHoja(Posicion<E> pos)
pos
- posición de referencia
Posicion<E> insertar(Posicion<E> padre, E elem)
padre
- posición de referenciaelem
- elemento que se quiere añadir al arbol
E reemplazar(Posicion<E> pos, E elem)
elem
- nuevo elementopos
- posición de referencia
void intercambiar(Posicion<E> pos1, Posicion<E> pos2)
El hecho de si los objetos posición se intercambian, o bien el que se intercambia son los elementos contenidos en las posiciones, dependerá de cada implementación concreta de arbol.
pos1
- primera de las dos posiciones de referenciapos2
- segunda de las dos posiciones de referenciavoid borrar(Posicion<E> padre, Posicion<E> hijo)
padre
- posición del padre; puede ser nullhijo
- posición del hijoRecorrido<E> posiciones()
Recorrido<E> recorridoPreorden()
Recorrido<E> recorridoPostorden()
Recorrido<E> recorridoPorNiveles()
|
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |