Está en la página 1de 3

UAM AZCAPOTAZLACO

Algoritmos y Estructuras de Datos - 1151042 Grupo: CSI01


Trimestre: 21-O

COMPLEJIDAD COMPUTACIONAL

Resumen
ÁRBOLES ROJI – NEGROS Árbol de búsqueda binaria

Árbol rojo-negro, un árbol de búsqueda binario, pero agregar un bit de almacenamiento a cada
nodo indica el color del nodo, que puede ser Rojo o Negro.

Al restringir la coloración de cada nodo en cualquier camino desde la raíz hasta las hojas, el
árbol rojo-negro asegura que ningún camino crecerá dos veces más que los otros caminos,
por lo que está cerca del equilibrio.

El árbol rojo-negro, como árbol de búsqueda binario, satisface la naturaleza general de los
árboles de búsqueda binarios. Comprendamos la naturaleza general del árbol de búsqueda
binario inferior.

Árbol de búsqueda binaria

El árbol de búsqueda binaria, también llamado árbol binario ordenado o árbol binario
ordenado, se refiere a un árbol vacío o un árbol binario con las siguientes propiedades:

→Si el subárbol izquierdo de cualquier nodo no está vacío, el valor de todos los nodos en el
subárbol izquierdo es menor que el valor de su nodo raíz;

→Si el subárbol derecho de cualquier nodo no está vacío, el valor de todos los nodos en el
subárbol derecho es mayor que el valor de su nodo raíz;

→Los subárboles izquierdo y derecho de cualquier nodo también son árboles de búsqueda
binarios.

→No hay nodos duplicados.

Debido a que la altura de un árbol de búsqueda binario construido aleatoriamente por n nodos
es lgn, no hace falta decir que el tiempo de operación general de un árbol de búsqueda binario
es O (lgn). Pero si el árbol de búsqueda binario degenera en una cadena lineal con n nodos,
el peor tiempo de ejecución de estas operaciones es O (n).

Aunque el árbol rojo-negro es esencialmente un árbol de búsqueda binario, agrega


propiedades de color y relacionadas al árbol de búsqueda binario para hacer que el árbol rojo-
negro esté relativamente equilibrado, asegurando así la búsqueda, inserción y eliminación del
árbol rojo-negro. La peor complejidad de tiempo es O (log).
Pero, ¿cómo se asegura de que la altura de un árbol rojo-negro con n nodos se mantenga
siempre en log? Esto lleva a cinco propiedades de los árboles rojo-negros:

1.- Cada nodo es rojo o negro. Zh


2.- El nodo raíz es negro. Zh
3.- Cada nodo hoja (nodo hoja se refiere al puntero NIL al final del árbol o nodo NULL) es
negro. Zh
4.- Si un nodo es rojo, sus dos hijos son negros. Zh
5.- Para cualquier nodo, cada ruta al puntero NIL al final del árbol de nodo hoja contiene el
mismo número de nodos negros.

Son estas cinco propiedades del árbol rojo-negro las que hacen que un árbol rojo-negro con n
nodos mantenga siempre la altura de registro (la altura del árbol rojo-negro es como máximo
2log (n + 1) se omite la prueba), lo que explicará Se establece la razón por la cual la conclusión
mencionada anteriormente de que "la complejidad temporal de buscar, insertar y eliminar un
árbol rojo-negro es la peor es O (logn)".

Esta figura ignora los nodos principales de hojas y raíces. Al mismo tiempo, el "nodo hoja" o
"nodo NULO" que mencionamos anteriormente, como se muestra en la figura anterior, no
contiene datos, sino que solo sirve como una indicación del final del árbol. Estos nodos a
menudo se omiten en el dibujo.
Es una representación de un Árbol Binario auto-balanceable, se caracteriza por que los
elementos que contiene poseen color ya se Rojo ó Negro, además de no poseer elemento
nulos, sino elementos con información nula. Su fin es el de crear un factor de balance entre los
Nodos del Árbol de manera para cada Nodo en cualquier parte del Árbol, posea la misma altura
de negra en su rama izquierda y derecha y de esta manera después de cada operación siempre
se encuentren balanceados “por la altura negra”.

El Árbol RojiNegro implementado en la clase “ArbolRojiNegro” basa su funcionamiento en el


elemento fundamental “NodoRN” posee similitud de características con “NodoBin” y su
implementación extiende de él, por esto hereda los atributos y operaciones de “NodoBin” y
solo difiere la aparición de un nuevo atributo “color”, que será el responsable de mantener el
equilibrio de la altura negra en la estructura.

La implementación de este Árbol RojiNegro, se implementa con herencia de los atributos,


métodos y operaciones de la estructura ArbolBinarioBusqueda debido a la semejanza del
comportamiento de las estructuras, aunque la inserción y retiro de datos en el Árbol se realizan
de forma diferente debido a que no posee elementos nulos y algunas de las operaciones altera
el equilibrio de la altura negra del Árbol, en donde se deben realizar operaciones especiales
denominadas “rotaciones” que permiten balancear los colores nuevamente el Árbol, las demás
operaciones complementan el funcionamiento de la estructura. En el siguiente Diagrama se
puede observar los atributos y operaciones que se implementaron en la estructura.

También podría gustarte