You are on page 1of 6

Universidad Don Bosco

Escuela de computacin Asignatura: Programacin III

Investigacin Bibliogrfica

Docente: Ing. Carmen Morales Samayoa Estudiantes: Boris Estrada Giron, Carlos Rubn Torres Lpez, TL100448

Fecha: viernes 9 de septiembre de A

1.

Generalidades sobre rboles Un rbol binario de bsqueda como su nombre lo sugiere es una estructura organizada, en la que las partes (nodos) es un objeto, poseen tres campos: un identificador: key, los campos left, right y p que apuntan a su hijo izquierdo, su hijo derecho y su padre, respectivamente, El nodo raz es el nico nodo en el arbolen el cual su padre es NIL. Los identificadores en un rbol binario de bsqueda son guardados de tal manera que satisfacen la propiedad de los arboles binarios: Sea x un nodo en un rbol binario. si y es un nodo en el subarbol izquierdo de x, entonces key[y] key[x]. Si y es un nodo en el rbol derecho de x entonces, key[x] key[y]. La propiedad de los arboles binarios permite recorrer o imprimir todos los

identificadores utilizando un simple algoritmo recursivo, llamado: inorder tree walk. Este es llamado as pues el identificador de la raz es imprimido en medio de los valores del subrbol izquierdo y del subrbol derecho i esos en su correcta secuencia. de similar manera el recorrido: preorder tree walk imprime la raz primero que los valores de cada subrbol. y el recorrido postorder tree walk imprime la raz despus de los valores de sus subrboles.

Arboles B

3. rboles Rojo-Negro 3.1 Definicin Un rbol rojo negro es un rbol binario de bsqueda con un bit extra de almacenamiento por cada nodo: EL color del nodo, el cual puede ser rojo o bien negro, Restringiendo la manera en que son coloreados, en un camino de la raz a cualquier hoja, los rboles rojo-negro se aseguran que el camino nunca sea mas del doble que otro. as el rbol es aproximadamente balanceado. As cada nodo del rbol contiene los campos: color, key, left, right y p. si el hijo o el padre de un nodo no existe, el puntero correspondiente del nodo contiene el valor NIL. Consideraremos los NIL como punteros a nodos externos (hojas) del rbol binario de bsqueda y las llaves (key) como hojas internes del rbol. Un rbol rojo-negro con n nodos internos tiene una altura mxima de 2ln(n+1) 3.2 Caractersticas principales Un rbol binario de bsqueda es considerado rbol rojo-negro si cumple las siguientes propiedades rojo-negras: I. II. III. IV. V. Cualquier nodo es rojo o negro. El nodo raz es negro. Todo hoja (NIL) es negra. Si un nodo es rojo, entonces ambos hijos son negros. Para cada nodo, todos los caminos desde ese nodo a cualquier hoja descendiente contiene el mismo numero de nodos negros

3.3 Ventajas y desventajas La principal ventaja de un rbol rojo-negro son los tiempos de bsqueda que pueden ser en un peor caso de O( log n) lo que los hace valiosos en estructuras de datos, los tiempos de insercin y borrado son tambin cortos ( O(log n) para ambos) , debido a que es una estructura balanceada, y a diferencia de los arboles AVL que tambin poseen un tiempo de bsqueda excelente, su rigidez para la insercin y borrado de datos es superado por los arboles rojo-negro. 3.4 Aplicaciones Los arboles rojo-negro son utilizados en situaciones donde es necesario almacenar mucha informacin, y donde no sea posible utilizar los recursos del hardware al limite, una aplicacin que haga buen uso de recursos y que no necesite hardware de alto desempeo puede hacer la diferencia entre fallo y xito. Una aplicacin de geocodificacin, que muestre el mapa de la direccin, de una consulta. Debido a que las direcciones de una ciudad son una considerable cantidad de informacin es necesario poder accesar a esta sin retraso, y la utilizacin de una estructura como un rbol rojo-negro disminuye

3.5 Ejemplo:

Como podemos observar se cumplen todas las propiedades: Ningn nodo rojo posee hijos rojos, Todos los caminos desde 13 a cualquier hoja posee el mismo numero de nodos negros, el nodo raz es negro.

4. Conclusiones sobre ambos temas

Fuentes de consulta:

I. II. III.

Introduction to algorithms, Cormen, Leiserson, Rivest y Stein, pp. 276-8 y 296-9 http://mathworld.wolfram.com/Red-BlackTree.html http://aleph0.clarku.edu/~achou/cs102/examples/bst_animation/RedBlackTreeExample.html