Tema 4 Árboles. Conceptos Generales.. Definición Estructura de datos jerárquica (no lineal) que...
-
Upload
rosita-arcila -
Category
Documents
-
view
27 -
download
1
Transcript of Tema 4 Árboles. Conceptos Generales.. Definición Estructura de datos jerárquica (no lineal) que...
![Page 1: Tema 4 Árboles. Conceptos Generales.. Definición Estructura de datos jerárquica (no lineal) que puede representarse como un conjunto de nodos enlazados.](https://reader036.fdocuments.co/reader036/viewer/2022062404/553438955503464e688b4a78/html5/thumbnails/1.jpg)
Tema 4 Árboles.
Conceptos Generales.
![Page 2: Tema 4 Árboles. Conceptos Generales.. Definición Estructura de datos jerárquica (no lineal) que puede representarse como un conjunto de nodos enlazados.](https://reader036.fdocuments.co/reader036/viewer/2022062404/553438955503464e688b4a78/html5/thumbnails/2.jpg)
![Page 3: Tema 4 Árboles. Conceptos Generales.. Definición Estructura de datos jerárquica (no lineal) que puede representarse como un conjunto de nodos enlazados.](https://reader036.fdocuments.co/reader036/viewer/2022062404/553438955503464e688b4a78/html5/thumbnails/3.jpg)
DefiniciónEstructura de datos
jerárquica (no lineal) que puede representarse como un conjunto de nodos enlazados entre sí por medio de ramas.
Formalmente, un árbol es una estructura da datos que cumple una de las siguientes condiciones:Estructura vacíaNodo de tipo base que tiene
de 0 a N subárboles disjuntos entre sí.
1
3
4
57
9
29 44
17
69
Nodo base: raíz del árbol
![Page 4: Tema 4 Árboles. Conceptos Generales.. Definición Estructura de datos jerárquica (no lineal) que puede representarse como un conjunto de nodos enlazados.](https://reader036.fdocuments.co/reader036/viewer/2022062404/553438955503464e688b4a78/html5/thumbnails/4.jpg)
Conceptos (I):
Nivel de un nodo: número de nodos a recorrer hasta llegar a él Nivel de la raíz = 1
Profundidad de un nodo: número de predecesores más 1 Profundidad (1) = 1 Profundidad (9) = 3
Altura del árbol: profundidad máxima. Altura = 4
1
3
4
57
9
29 44
17
69
Nivel 1
Nivel 2
Nivel 3
Nivel 4
![Page 5: Tema 4 Árboles. Conceptos Generales.. Definición Estructura de datos jerárquica (no lineal) que puede representarse como un conjunto de nodos enlazados.](https://reader036.fdocuments.co/reader036/viewer/2022062404/553438955503464e688b4a78/html5/thumbnails/5.jpg)
Conceptos (II): Camino del nodo X al nodo Y:
sucesión de nodos que permitan llegar desde X a Y.
Antecesor: A es un nodo antecesor de B si para alcanzar B, desde el nodo raíz, es necesario pasar por A.
Sucesor: B es un nodo sucesor de A, si A es antecesor de B.
Raíz: único nodo que no tiene antecesor Nodo hoja: nodo sin sucesores Subárbol: árbol formado por un nodo y
sus descendientes Grado de un nodo: número de hijos Grado del árbol: el mayor de los grados
de los nodos Amplitud/anchura del árbol: número
de nodos del nivel más poblado.
1
3
4
57
9
29 44
17
69
![Page 6: Tema 4 Árboles. Conceptos Generales.. Definición Estructura de datos jerárquica (no lineal) que puede representarse como un conjunto de nodos enlazados.](https://reader036.fdocuments.co/reader036/viewer/2022062404/553438955503464e688b4a78/html5/thumbnails/6.jpg)
Árbol completoTodos los nodos (excepto las hojas) tienen el mismo grado y
los diferentes niveles están poblados por completoPara obtener un árbol completo se pueden generar nodos
especialesEn un árbol completo:
Amplitud del nivel n: An = gn-1
Número de nodos: Nn = 1
3
4
57
9 17
gn -1g -1
![Page 7: Tema 4 Árboles. Conceptos Generales.. Definición Estructura de datos jerárquica (no lineal) que puede representarse como un conjunto de nodos enlazados.](https://reader036.fdocuments.co/reader036/viewer/2022062404/553438955503464e688b4a78/html5/thumbnails/7.jpg)
![Page 8: Tema 4 Árboles. Conceptos Generales.. Definición Estructura de datos jerárquica (no lineal) que puede representarse como un conjunto de nodos enlazados.](https://reader036.fdocuments.co/reader036/viewer/2022062404/553438955503464e688b4a78/html5/thumbnails/8.jpg)
Definición.Árbol de grado 2Implementación física:
Estructura estática (matrices)Estructura dinámica
Los nodos de un árbol tienen (al menos) tres componentes:Clave (de tipo simple o estructurada)Puntero que indique la ubicación del árbol derechoPuntero que indique la ubicación del árbol izquierdo
Además: convención para indicar que no tiene hijos (valor null)
![Page 9: Tema 4 Árboles. Conceptos Generales.. Definición Estructura de datos jerárquica (no lineal) que puede representarse como un conjunto de nodos enlazados.](https://reader036.fdocuments.co/reader036/viewer/2022062404/553438955503464e688b4a78/html5/thumbnails/9.jpg)
0 1 2 3 4 5
clave 1 7 3 4 9 17
Ar.Iz 1 3 5 * * *
Ar.De 2 4 * * * *
1
37
4 9 17
arbol Memoria estática
Memoria dinámica
1
7
3 *
4 * * 9 * *
17 * *
nombre
Arbol
NodoArbol
![Page 10: Tema 4 Árboles. Conceptos Generales.. Definición Estructura de datos jerárquica (no lineal) que puede representarse como un conjunto de nodos enlazados.](https://reader036.fdocuments.co/reader036/viewer/2022062404/553438955503464e688b4a78/html5/thumbnails/10.jpg)
Definición de las clasesClase Arbol
public class Arbol {String nombre;NodoArbol raiz;
public Arbol () {nombre = null;raiz = null;
}}
Clase NodoArbolpublic class NodoArbol {
int clave;NodoArbol iz;NodoArbol de;
public NodoArbol () { clave = 0;
iz = null;de = null;
} }
![Page 11: Tema 4 Árboles. Conceptos Generales.. Definición Estructura de datos jerárquica (no lineal) que puede representarse como un conjunto de nodos enlazados.](https://reader036.fdocuments.co/reader036/viewer/2022062404/553438955503464e688b4a78/html5/thumbnails/11.jpg)
![Page 12: Tema 4 Árboles. Conceptos Generales.. Definición Estructura de datos jerárquica (no lineal) que puede representarse como un conjunto de nodos enlazados.](https://reader036.fdocuments.co/reader036/viewer/2022062404/553438955503464e688b4a78/html5/thumbnails/12.jpg)
Árboles binarios de búsqueda (I).Concepto:
Un árbol binario de búsqueda (ABB) es un árbol binario en el que se verifica que las claves del subárbol izquierdo son menores que las claves del árbol derecho.
Características:Mayor eficiencia en búsquedas.Listado de claves ordenadas: orden
central.
![Page 13: Tema 4 Árboles. Conceptos Generales.. Definición Estructura de datos jerárquica (no lineal) que puede representarse como un conjunto de nodos enlazados.](https://reader036.fdocuments.co/reader036/viewer/2022062404/553438955503464e688b4a78/html5/thumbnails/13.jpg)
Ejemplo
Árboles binarios de búsqueda (II)