Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Arboles PDF
Arboles PDF
Estructuras de Datos
Tabla de contenidos
1. Conceptos básicos
2. Árboles binarios
1. Árboles perfectamente equilibrados
2. Árboles de búsqueda
1. Árboles simplemente equilibrados
2. Árboles óptimos
3. Árboles desplegados
3. Árboles de expresión
3. Árboles multicamino
1. Árboles B
4. Bibliografía
3
Conceptos básicos
4
Conceptos básicos
Árboles A
Nodos hermanos con un mismo padre Nodo Altura Profundidad Tamaño
A 3 0 8
B C D B 1 1 2
C 2 1 4
D 0 1 1
E 0 2 1
E F G
F 0 2 1
Antecesor y G 1 2 2
descendiente H 0 3 1
H
¿Grado del nodo C?
-Un nodo raíz
-Todos los nodos son conectados desde un único nodo (nodo padre) …¿y del árbol?
-Sólo hay un camino desde el nodo raíz a cada nodo
-Los nodos que no tienen hijos son nodos hoja
5
Conceptos básicos
a 1 i 21 = 2
nmax i 0
g
Ejercicio 1: ¿Cuál es el número máximo de nodos de un árbol de altura 5 y
grado 4?
6
Conceptos básicos
Árboles binarios
•Competiciones deportivas
•Árboles genealógicos
•Operaciones binarias
•…
8
Árboles binarios
B C
Izq Der
D E F
G H
Solución: A, B, D, C, E, F, G, H
9
Árboles binarios
B C
Izq Der
D E F
G H
Solución: D, B, A, E, C, G, F, H
10
Árboles binarios
B C
Izq Der
D E F
G H
Solución: D, B, E, G, H, F, C, A
11
Árboles binarios
Recorrido de un árbol
Ejercicio 3: Especifica el orden en el que se recorrerían los nodos del
siguiente árbol en caso de recorrerse en preorden, inorden y postorden
B C
F
D E
G H I
12
Árboles binarios
Recorrido de un árbol
Ejercicio 4: Escribe el pseudocódigo de un método recursivo que recorra
en preorden un árbol y refleje en pantalla el nivel en el que está situado el
nodo
13
Árboles binarios
Altura de un árbol
A
• Máxima
B
O(n)
C
…
• Mínima A
B C
O(log2n)
D E F G
14
n | ni nd | 1
n
ni nd
15
Algoritmo
1- Usar un nodo para la raíz
2- Generar el subárbol izquierdo con ni = n div 2 nodos
3- Generar el subárbol derecho con nd = n – ni – 1 nodos
APE
Altura mínima
Binarios
Ejercicio 6: Especifica si los siguientes árboles tienen altura mínima y si
son APE
A A
1) 2)
B D B C
C D E
17
18
Inserción
Ejercicio 7: Construye un árbol binario de búsqueda para una serie de
nodos cuya clave es:
10, 100, 60, 30, 2, -43, 70, 90, 23, 43, 65, 13, 230, 49, 7, 40, 50, 20, 15, 3
Ten en cuenta que los nodos han aparecido de uno en uno en orden, siendo
el primero de ellos el nodo con clave 10 y el último, el nodo con clave 3
Es decir, habrá que empezar con un árbol con un solo elemento (10) y
después el árbol crece a dos elementos (10, 100) y así sucesivamente hasta
el final
20
10
Árboles binarios de búsqueda
2 100
Inserción 60 230
-43 7
3 30 70
23
Ejercicio 8: ¿Cuál es la 43 65 90
diferencia entre recorrer el
árbol de búsqueda:
13
-En Inorden (primero izquierda) 40 49
y
-En Inorden (primero derecha)
20 50
15
21
Borrado
• No es tan fácil como la inserción
• Posibilidades
▫ Nodo terminal muy fácil 5
1 4 6 9
10
22
3 3 8
8
1 4 1 6 9
9
7 7
23
Borrado
Ejercicio 9: Dibuja cómo irá evolucionando el siguiente árbol binario de
búsqueda si se borran (en orden) los siguientes nodos: 46, 40, 15, 30, 70,
60, 90, 50
50
30 70
15 40 60 90
1 25 33 46 56 62 87 99
24
n | hi hd | 1
APE
n
AVL Altura mínima
Binarios
hi hd
ni nd
27
1) 2) 3) 4)
28
Inserción
• Cuando se inserta un nuevo nodo hay que
mantener el equilibrio
▫ Posibles desequilibrios
B A
Rotación simple (izq)
A
3 B
1
1 2
1 2 3
2
30
Inserción
• Posibles desequilibrios
C B
Rotación doble (izq)
A A C
B 4
2 3
1 1 4
2 3
1
2
31
Inserción
Ejercicio 12: Dibuja cómo irá evolucionando un árbol AVL si se insertan
(en orden) los siguientes nodos (corrigiendo los posibles desequilibrios): 6,
7, 15, 4, 1, 6.5, 9, 100, 150
32
12 30 72 85
5 18 40 74 99
33
Árboles óptimos
• Objetivo:
Conseguir realizar búsquedas realizando menos pasos para acceder a
los nodos que se visitan con más frecuencia
Nodo Probabilidad
A 0,30 * 1
A 0,30
B 0,20 (0,20 + 0,50)*2
B C
C 0,50
LMPCI = 1,70
Ejercicio 14: En función de la tabla de la derecha que Nodo Probabilidad
C, dibuja los dos mejores árboles y los dos peores (el B 0,35
Árboles desplegados
Ejemplo +
5 *
Árboles multicamino
•Modelos más complejos con los
binarios
•Reducen la altura del árbol
•Indicados para memoria secundaria
39
40
Árboles multicamino B
Árboles multicamino B
40 9 páginas
20 30 60, 70
10 12 14 16 21 22 23 24 35 38 46 50 51 61 66 68 71 78 88
Árboles multicamino B
Ejercicio 17: Construye un árbol B-4 para los siguientes
Inserción nodos: 60 10 20 30 40 50 70 80 90 15 25 35 45 55 65 12
14 16 18 21 87 89 96
• Queremos introducir un nodo con clave 27
43
Árboles multicamino B
Borrado
Ejercicio 18: Dibuja cómo irá evolucionando el árbol B-4 si se borran (en
orden) los siguientes nodos (corrigiendo los posibles desequilibrios): 40,
10, 12, 14, 66, 71, 70, 60, 35, 21, 22, 24, 29, 20, 23, 30, 78, 61, 16, 27, 38,
50
A 40
B 20 23 30 C 60, 70
10 12 14 16 21 22 24 27 29 35 38 46 50 51 61 66 68 71 78 88
D E J F G H I
44
Bibliografía
• WEISS, Mark Allen; (2000) Data Estructures & Problem Solving Using Java.
Addison Wesley. ISBN 03-2154-140-5.
• JOYANES AGUILAR, LUIS (2007) Estructuras de Datos en Java. McGraw Hill. ISBN:
9788448156312.
• STANDISH, Thomas A (1998). Data structures in Java. Addison Wesley ISBN 0-201-
30564-X.
• WEISS, Mark Allen; (2000) Estructuras de Datos en Java. Addison Wesley. ISBN 84-
7829-035-4.