View
25
Download
2
Category
Preview:
DESCRIPTION
Arboles -- Matematica 2 Universidad Señor de Sipan
Citation preview
*UNIDAD 1MG.MAT.HALYN ALVAREZ VASQUEZ
Las estructuras dinmicas son las en la ejecucin varia el nmero de elementos y uso de memoria a lo largo del programa)
Entre estas tenemos:
Lineales (listas enlazadas, pilas y colas)No lineales (arboles binarios y grafos o redes)
Qu es un rbol?Es una estructura de datos jerrquica.La relacin entre los elementos es de uno a muchos.
TerminologaNodo: Cada elemento en un rbol.Nodo Raz: Primer elemento agregado al rbol.BADEHFKGCNodo Raz
Ms terminologaNodo Padre: Se le llama as al nodo predecesor de un elemento.Nodo Hijo: Es el nodo sucesor de un elemento.Hermanos: Nodos que tienen el mismo nodo padre.BADEHFKGCNodo PadreF y G son Nodos Hijos de CF y G son hermanos
Ms terminologaNodo Hoja: Aquel nodo que no tiene hijos.BADEHFKGCD, H, F y K son Nodos Hojas
Ms terminologaSubrbol: Todos los nodos descendientes por la izquierda o derecha de un nodo.BADEHFKGCSubrbol derecho de CSubrbol izquierdo de C
Altura y NivelesNivel 0Nivel 1Nivel 2Nivel 3Altura del rbol = 4BADEHFKGCLa Altura es la cantidad de niveles.
rbol Binario de Bsqueda (ABB)Este tipo de rbol permite almacenar informacin ordenada.Reglas a cumplir:Cada nodo del rbol puede tener 0, 1 2 hijos.Los descendientes izquierdos deben tener un valor menor al padre.Los descendientes derechos deben tener un valor mayor al padre.
Ejemplos de ABB13215181525403633213032434133
Por qu no son ABB?13211718152540223315246
Proceso para agregar nodos...Reglas:El valor a insertar no existe en el rbol.El nuevo nodo ser un Nodo Hoja del rbol.ProcedimientoBuscar el Nodo Padre del nodo a agregar.Agregar el nodo hoja.
EjemploEl 26 es mayor o menor que el 21?Agregar el valor 2613211018254033El 26 es mayor o menor que el 33?13211018254033Se encontr el Nodo PadrePaso1Paso2Paso313211018254033Agregar el nodoPaso426
Comentarios importantes....El orden de insercin de los datos, determina la forma del ABB.Qu pasar si se insertan los datos en forma ordenada?La forma del ABB determina la eficiencia del proceso de bsqueda.Entre menos altura tenga el ABB, ms balanceado estar, y ms eficiente ser.1310182125Este rbol est desbalanceadoporque los valores se agregaron en el siguiente orden:10, 13, 18, 21, 25, 33, 40
Proceso para eliminar un nodoSi el nodo a eliminar es un:Nodo hojaBuscar el Nodo Padre del nodo a borrar.Desconectarlo.Liberar el nodo.Nodo con un hijoBuscar el Nodo Padre del nodo a borrar.Conectar el hijo con el padre del nodo a borrar.Liberar el nodo.Nodo con dos hijosLocalizar el nodo predecesor o sucesor del nodo a borrar.Copiar la informacin.Eliminar el predecesor o sucesor segn sea el caso.
Caso: Eliminar Nodo hoja13211018254033Nodo Padre localizado13211018254033Desconectarlo y liberar el nodoPaso1Paso2Eliminar el valor 25
Caso: Eliminar Nodo con un hijo13211018254033Nodo Padre localizado13211018254033Conectar el Nodo Padre con el Nodo Hijo y liberar el nodo.Paso1Paso2Eliminar el valor 25292730292730
Caso: Eliminar nodo con dos hijosLocalizar el nodo predecesor o sucesor del nodo a borrar.El PREDECESOR es el Mayor de los Menores.El SUCESOR es el Menor de los Mayores.Para la implementacin es igual de eficiente programar la bsqueda del predecesor que del sucesor.El valor del Predecedor (o sucesor) se copia al nodo a borrar.Eliminar el nodo del predecesor (o sucesor segn sea el caso).
Predecesor132110254033292730Uno a la IZQUIERDA y todo a la DERECHA
El predecesor de:Es:333021132927
Sucesor13211018254033292730Uno a la DERECHA y todo a la IZQUIERDA
El sucesor de:Es:212533402930
Caso: Eliminar Nodo con dos hijos13211018254033Localizar el valor a borrarPaso1Eliminar el valor 21 utilizando el predecesor13211018254033Localizar el PredecesorPaso213181018254033Copiar el valor del Predecesor al nodo que contena el valor a borrarPaso313181018254033Desconectar y liberar el nodo del PredecesorPaso4
Eliminar el valor 21 utilizando el SucesorCaso: Eliminar Nodo con dos hijos13211018254033Localizar el valor a borrarPaso113211018254033Localizar el SucesorPaso213251018254033Copiar el valor del Sucesor al nodo que contena el valor a borrarPaso313181018254033Desconectar y liberar el nodo del SucesorPaso4
Recommended