SlideShare una empresa de Scribd logo
1 de 2
Descargar para leer sin conexión
Unefa – Núcleo Mérida Programación III 2019
Doniel Acosta C.I 25.237.858
Orfa Villarreal C.I 18.965.007
Génessis Dávila C.I 24.584.745
Informe Árbol Rojo-Negro
Un árbol rojo negro es un árbol binario de búsqueda que garantiza Altura O(log n)
cuando almacena n elementos Adicional a los apuntadores para los hijos y el
padre, los nodos tiene asociado 1 bit de color También se utiliza un nodo sentinela
nil tal que el papa de la raíz es el centinela, así como los hijos de las hojas, y uno
de los hijos de los Nodos internos que tienen un único hijo.
Un árbol Rojo-Negro es un árbol binario en el que cada nodo tiene un color como
atributo extra, ya sea rojo o negro. El color de los nodos asegura que la trayectoria
más larga de la raíz a una hoja no es más larga que el doble del largo de la más
corta. Esto significa que el árbol está fuertemente balanceado.
Un árbol Rojo-Negro debe satisfacer estas propiedades:
 La raíz siempre es negra.
 Los nodo hoja nulo son nodo negros.
 Si el nodo es rojo, sus hijos serán negros.
 Para cada nodo, todos los caminos desde el nodo hasta la hoja deben de
tener la misma cantidad de nodos negros.
 Ningún camino desde la raíz a las hojas tiene dos o tres hijos rojos
consecutivos
 El recorrido pasa por el número máximo de nodos, nunca puede pasar por
más del doble de nodos que se recorren por el recorrido que pasa por el
mismo número de nodos.
Inserción
 Las inserciones se hacen de manera similar a las inserciones en un árbol
binario de búsqueda
 primero se busca en donde realizar la inserción
 segundo, el nodo z se inserta a nivel de las hojas y se pinta de rojo
 luego, de ser necesario, se pintan y se hacen rotaciones sobre los
 ancestros de z para restablecer las propiedades (Los nodo hoja nulo son
nodo negros. Para cada nodo, todos los caminos desde el nodo hasta la hoja
deben de tener la misma cantidad de nodos negros.)
Eliminación
Similar a la inserción, la eliminación se basa en la eliminación de nodos para
arboles binarios de búsqueda
La eliminación recibe un apuntador al nodo z que se quiere eliminar
Como lo hicimos en arboles binarios de búsqueda, usamos una rutina de
trasplante de nodos
Rotaciones
Operación fundamental para balancear el _árbol durante inserciones y
Eliminaciones. Existen rotaciones a la izquierda y a la derecha:
 En una rotación a la derecha con pivote x se asume x: left !=nil
 En una rotación a la izquierda con pivote x se asume x:right != nil
Como se dijo antes, se asume que el padre de la raíz es nil
def reRooteo(self):
while self.raiz.padre!=ARN.Nulo:
#Reacomodar raiz
self.raiz=self.raiz.padre
def inorder(self, p='root'):
if p=='root': p=self.raiz
if p == ARN.Nulo or not p:
return
self.inorder(p.izq)
print (p.dato, ('negro' if p.negro else
'rojo'))
self.inorder(p.der)
Bibliografia
https://www.google.com/search?q=ci2612-lec18&oq=ci2612-
lec18&aqs=chrome..69i57.5557j0j7&sourceid=chrome&ie=UTF-8
ingsistemas.ufps.edu.co/SEED/arbolrojinegro.html

Más contenido relacionado

Similar a Árbol Rojo-Negro: Propiedades y Operaciones

Similar a Árbol Rojo-Negro: Propiedades y Operaciones (20)

Arbol Rojo y Negro
Arbol Rojo y NegroArbol Rojo y Negro
Arbol Rojo y Negro
 
Arbol rojo y negro
Arbol rojo y negroArbol rojo y negro
Arbol rojo y negro
 
Arboles rojonegros.pptx
Arboles rojonegros.pptxArboles rojonegros.pptx
Arboles rojonegros.pptx
 
Árboles Rojo - Negro
Árboles Rojo - NegroÁrboles Rojo - Negro
Árboles Rojo - Negro
 
Árboles binarios
Árboles binariosÁrboles binarios
Árboles binarios
 
áRboles binarios
áRboles binariosáRboles binarios
áRboles binarios
 
Arboles
ArbolesArboles
Arboles
 
Arboles
ArbolesArboles
Arboles
 
Arboles
ArbolesArboles
Arboles
 
Arboles.pptx
Arboles.pptxArboles.pptx
Arboles.pptx
 
Arboles binarios
Arboles binariosArboles binarios
Arboles binarios
 
Árboles Binarios
Árboles BinariosÁrboles Binarios
Árboles Binarios
 
3 estructuras no lineales estáticas y dinámicas
3  estructuras no lineales estáticas y dinámicas3  estructuras no lineales estáticas y dinámicas
3 estructuras no lineales estáticas y dinámicas
 
Arboles
ArbolesArboles
Arboles
 
Unidad 6
Unidad 6Unidad 6
Unidad 6
 
2.4.3 Operaciones Básicas.pptx
2.4.3 Operaciones Básicas.pptx2.4.3 Operaciones Básicas.pptx
2.4.3 Operaciones Básicas.pptx
 
Declarar Arboles. Operaciones. Ejemplospdf
Declarar Arboles. Operaciones. EjemplospdfDeclarar Arboles. Operaciones. Ejemplospdf
Declarar Arboles. Operaciones. Ejemplospdf
 
Para leer estructuras
Para leer estructurasPara leer estructuras
Para leer estructuras
 
Para leer estructuras
Para leer estructurasPara leer estructuras
Para leer estructuras
 
ARBOLES BINARIOS
ARBOLES BINARIOSARBOLES BINARIOS
ARBOLES BINARIOS
 

Último

clases de dinamica ejercicios preuniversitarios.pdf
clases de dinamica ejercicios preuniversitarios.pdfclases de dinamica ejercicios preuniversitarios.pdf
clases de dinamica ejercicios preuniversitarios.pdfDanielaVelasquez553560
 
Presentación electricidad y magnetismo.pptx
Presentación electricidad y magnetismo.pptxPresentación electricidad y magnetismo.pptx
Presentación electricidad y magnetismo.pptxYajairaMartinez30
 
2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdf
2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdf2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdf
2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdfAnthonyTiclia
 
nom-028-stps-2012-nom-028-stps-2012-.pdf
nom-028-stps-2012-nom-028-stps-2012-.pdfnom-028-stps-2012-nom-028-stps-2012-.pdf
nom-028-stps-2012-nom-028-stps-2012-.pdfDiegoMadrigal21
 
PPT SERVIDOR ESCUELA PERU EDUCA LINUX v7.pptx
PPT SERVIDOR ESCUELA PERU EDUCA LINUX v7.pptxPPT SERVIDOR ESCUELA PERU EDUCA LINUX v7.pptx
PPT SERVIDOR ESCUELA PERU EDUCA LINUX v7.pptxSergioGJimenezMorean
 
Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)
Voladura Controlada  Sobrexcavación (como se lleva a cabo una voladura)Voladura Controlada  Sobrexcavación (como se lleva a cabo una voladura)
Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)ssuser563c56
 
Flujo multifásico en tuberias de ex.pptx
Flujo multifásico en tuberias de ex.pptxFlujo multifásico en tuberias de ex.pptx
Flujo multifásico en tuberias de ex.pptxEduardoSnchezHernnde5
 
CLASE - 01 de construcción 1 ingeniería civil
CLASE - 01 de construcción 1 ingeniería civilCLASE - 01 de construcción 1 ingeniería civil
CLASE - 01 de construcción 1 ingeniería civilDissneredwinPaivahua
 
Curso intensivo de soldadura electrónica en pdf
Curso intensivo de soldadura electrónica  en pdfCurso intensivo de soldadura electrónica  en pdf
Curso intensivo de soldadura electrónica en pdfFernandaGarca788912
 
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdf
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdfReporte de simulación de flujo del agua en un volumen de control MNVA.pdf
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdfMikkaelNicolae
 
hitos del desarrollo psicomotor en niños.docx
hitos del desarrollo psicomotor en niños.docxhitos del desarrollo psicomotor en niños.docx
hitos del desarrollo psicomotor en niños.docxMarcelaArancibiaRojo
 
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.ppt
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.pptARBOL DE CAUSAS ANA INVESTIGACION DE ACC.ppt
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.pptMarianoSanchez70
 
Sesión N°2_Curso_Ingeniería_Sanitaria.pdf
Sesión N°2_Curso_Ingeniería_Sanitaria.pdfSesión N°2_Curso_Ingeniería_Sanitaria.pdf
Sesión N°2_Curso_Ingeniería_Sanitaria.pdfannavarrom
 
Sesión 02 TIPOS DE VALORIZACIONES CURSO Cersa
Sesión 02 TIPOS DE VALORIZACIONES CURSO CersaSesión 02 TIPOS DE VALORIZACIONES CURSO Cersa
Sesión 02 TIPOS DE VALORIZACIONES CURSO CersaXimenaFallaLecca1
 
sistema de construcción Drywall semana 7
sistema de construcción Drywall semana 7sistema de construcción Drywall semana 7
sistema de construcción Drywall semana 7luisanthonycarrascos
 
Rendimiento-de-Maquinaria y precios unitarios para la construcción de una ma...
Rendimiento-de-Maquinaria y precios unitarios  para la construcción de una ma...Rendimiento-de-Maquinaria y precios unitarios  para la construcción de una ma...
Rendimiento-de-Maquinaria y precios unitarios para la construcción de una ma...RichardRivas28
 
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONALCHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONALKATHIAMILAGRITOSSANC
 
¿QUE SON LOS AGENTES FISICOS Y QUE CUIDADOS TENER.pptx
¿QUE SON LOS AGENTES FISICOS Y QUE CUIDADOS TENER.pptx¿QUE SON LOS AGENTES FISICOS Y QUE CUIDADOS TENER.pptx
¿QUE SON LOS AGENTES FISICOS Y QUE CUIDADOS TENER.pptxguillermosantana15
 
Proyecto de iluminación "guia" para proyectos de ingeniería eléctrica
Proyecto de iluminación "guia" para proyectos de ingeniería eléctricaProyecto de iluminación "guia" para proyectos de ingeniería eléctrica
Proyecto de iluminación "guia" para proyectos de ingeniería eléctricaXjoseantonio01jossed
 
Curso Análisis Fisicoquímico y Microbiológico de Aguas -EAI - SESIÓN 5.pdf
Curso Análisis Fisicoquímico y Microbiológico de Aguas -EAI - SESIÓN 5.pdfCurso Análisis Fisicoquímico y Microbiológico de Aguas -EAI - SESIÓN 5.pdf
Curso Análisis Fisicoquímico y Microbiológico de Aguas -EAI - SESIÓN 5.pdfcesar17lavictoria
 

Último (20)

clases de dinamica ejercicios preuniversitarios.pdf
clases de dinamica ejercicios preuniversitarios.pdfclases de dinamica ejercicios preuniversitarios.pdf
clases de dinamica ejercicios preuniversitarios.pdf
 
Presentación electricidad y magnetismo.pptx
Presentación electricidad y magnetismo.pptxPresentación electricidad y magnetismo.pptx
Presentación electricidad y magnetismo.pptx
 
2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdf
2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdf2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdf
2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdf
 
nom-028-stps-2012-nom-028-stps-2012-.pdf
nom-028-stps-2012-nom-028-stps-2012-.pdfnom-028-stps-2012-nom-028-stps-2012-.pdf
nom-028-stps-2012-nom-028-stps-2012-.pdf
 
PPT SERVIDOR ESCUELA PERU EDUCA LINUX v7.pptx
PPT SERVIDOR ESCUELA PERU EDUCA LINUX v7.pptxPPT SERVIDOR ESCUELA PERU EDUCA LINUX v7.pptx
PPT SERVIDOR ESCUELA PERU EDUCA LINUX v7.pptx
 
Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)
Voladura Controlada  Sobrexcavación (como se lleva a cabo una voladura)Voladura Controlada  Sobrexcavación (como se lleva a cabo una voladura)
Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)
 
Flujo multifásico en tuberias de ex.pptx
Flujo multifásico en tuberias de ex.pptxFlujo multifásico en tuberias de ex.pptx
Flujo multifásico en tuberias de ex.pptx
 
CLASE - 01 de construcción 1 ingeniería civil
CLASE - 01 de construcción 1 ingeniería civilCLASE - 01 de construcción 1 ingeniería civil
CLASE - 01 de construcción 1 ingeniería civil
 
Curso intensivo de soldadura electrónica en pdf
Curso intensivo de soldadura electrónica  en pdfCurso intensivo de soldadura electrónica  en pdf
Curso intensivo de soldadura electrónica en pdf
 
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdf
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdfReporte de simulación de flujo del agua en un volumen de control MNVA.pdf
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdf
 
hitos del desarrollo psicomotor en niños.docx
hitos del desarrollo psicomotor en niños.docxhitos del desarrollo psicomotor en niños.docx
hitos del desarrollo psicomotor en niños.docx
 
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.ppt
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.pptARBOL DE CAUSAS ANA INVESTIGACION DE ACC.ppt
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.ppt
 
Sesión N°2_Curso_Ingeniería_Sanitaria.pdf
Sesión N°2_Curso_Ingeniería_Sanitaria.pdfSesión N°2_Curso_Ingeniería_Sanitaria.pdf
Sesión N°2_Curso_Ingeniería_Sanitaria.pdf
 
Sesión 02 TIPOS DE VALORIZACIONES CURSO Cersa
Sesión 02 TIPOS DE VALORIZACIONES CURSO CersaSesión 02 TIPOS DE VALORIZACIONES CURSO Cersa
Sesión 02 TIPOS DE VALORIZACIONES CURSO Cersa
 
sistema de construcción Drywall semana 7
sistema de construcción Drywall semana 7sistema de construcción Drywall semana 7
sistema de construcción Drywall semana 7
 
Rendimiento-de-Maquinaria y precios unitarios para la construcción de una ma...
Rendimiento-de-Maquinaria y precios unitarios  para la construcción de una ma...Rendimiento-de-Maquinaria y precios unitarios  para la construcción de una ma...
Rendimiento-de-Maquinaria y precios unitarios para la construcción de una ma...
 
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONALCHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
 
¿QUE SON LOS AGENTES FISICOS Y QUE CUIDADOS TENER.pptx
¿QUE SON LOS AGENTES FISICOS Y QUE CUIDADOS TENER.pptx¿QUE SON LOS AGENTES FISICOS Y QUE CUIDADOS TENER.pptx
¿QUE SON LOS AGENTES FISICOS Y QUE CUIDADOS TENER.pptx
 
Proyecto de iluminación "guia" para proyectos de ingeniería eléctrica
Proyecto de iluminación "guia" para proyectos de ingeniería eléctricaProyecto de iluminación "guia" para proyectos de ingeniería eléctrica
Proyecto de iluminación "guia" para proyectos de ingeniería eléctrica
 
Curso Análisis Fisicoquímico y Microbiológico de Aguas -EAI - SESIÓN 5.pdf
Curso Análisis Fisicoquímico y Microbiológico de Aguas -EAI - SESIÓN 5.pdfCurso Análisis Fisicoquímico y Microbiológico de Aguas -EAI - SESIÓN 5.pdf
Curso Análisis Fisicoquímico y Microbiológico de Aguas -EAI - SESIÓN 5.pdf
 

Árbol Rojo-Negro: Propiedades y Operaciones

  • 1. Unefa – Núcleo Mérida Programación III 2019 Doniel Acosta C.I 25.237.858 Orfa Villarreal C.I 18.965.007 Génessis Dávila C.I 24.584.745 Informe Árbol Rojo-Negro Un árbol rojo negro es un árbol binario de búsqueda que garantiza Altura O(log n) cuando almacena n elementos Adicional a los apuntadores para los hijos y el padre, los nodos tiene asociado 1 bit de color También se utiliza un nodo sentinela nil tal que el papa de la raíz es el centinela, así como los hijos de las hojas, y uno de los hijos de los Nodos internos que tienen un único hijo. Un árbol Rojo-Negro es un árbol binario en el que cada nodo tiene un color como atributo extra, ya sea rojo o negro. El color de los nodos asegura que la trayectoria más larga de la raíz a una hoja no es más larga que el doble del largo de la más corta. Esto significa que el árbol está fuertemente balanceado. Un árbol Rojo-Negro debe satisfacer estas propiedades:  La raíz siempre es negra.  Los nodo hoja nulo son nodo negros.  Si el nodo es rojo, sus hijos serán negros.  Para cada nodo, todos los caminos desde el nodo hasta la hoja deben de tener la misma cantidad de nodos negros.  Ningún camino desde la raíz a las hojas tiene dos o tres hijos rojos consecutivos  El recorrido pasa por el número máximo de nodos, nunca puede pasar por más del doble de nodos que se recorren por el recorrido que pasa por el mismo número de nodos. Inserción  Las inserciones se hacen de manera similar a las inserciones en un árbol binario de búsqueda  primero se busca en donde realizar la inserción  segundo, el nodo z se inserta a nivel de las hojas y se pinta de rojo  luego, de ser necesario, se pintan y se hacen rotaciones sobre los  ancestros de z para restablecer las propiedades (Los nodo hoja nulo son nodo negros. Para cada nodo, todos los caminos desde el nodo hasta la hoja deben de tener la misma cantidad de nodos negros.) Eliminación
  • 2. Similar a la inserción, la eliminación se basa en la eliminación de nodos para arboles binarios de búsqueda La eliminación recibe un apuntador al nodo z que se quiere eliminar Como lo hicimos en arboles binarios de búsqueda, usamos una rutina de trasplante de nodos Rotaciones Operación fundamental para balancear el _árbol durante inserciones y Eliminaciones. Existen rotaciones a la izquierda y a la derecha:  En una rotación a la derecha con pivote x se asume x: left !=nil  En una rotación a la izquierda con pivote x se asume x:right != nil Como se dijo antes, se asume que el padre de la raíz es nil def reRooteo(self): while self.raiz.padre!=ARN.Nulo: #Reacomodar raiz self.raiz=self.raiz.padre def inorder(self, p='root'): if p=='root': p=self.raiz if p == ARN.Nulo or not p: return self.inorder(p.izq) print (p.dato, ('negro' if p.negro else 'rojo')) self.inorder(p.der) Bibliografia https://www.google.com/search?q=ci2612-lec18&oq=ci2612- lec18&aqs=chrome..69i57.5557j0j7&sourceid=chrome&ie=UTF-8 ingsistemas.ufps.edu.co/SEED/arbolrojinegro.html