Documentos de Académico
Documentos de Profesional
Documentos de Cultura
El presente material tiene como cometido facilitar la exposición gráfica del tema
“Árboles” que se aborda en la unidad de aprendizaje “Estructuras de Datos”
que corresponde al tercer semestre de la Licenciatura en Ingeniería de
Software.
2
ARBOLES -ÍNDICE -
Tema Diapositiva
Definición 5
Representación 11
Recorridos 27
Operaciones 32
3
Árboles.
Subtemas: Al término de la unidad temática, los
estudiantes serán capaces, de desarrollar
Definición. aplicaciones con el uso de estructuras de
datos jerárquicas utilizando un lenguaje de
Representación. programación.
Recorridos.
Operaciones.
4
ARBOLES - DEFINICIÓN -
5
ARBOLES - DEFINICIÓN -
árbol genealógico
6
ARBOLES - DEFINICIÓN -
Estructura no lineal y de dos
dimensiones de datos.
Normalmente se dibujan en
forma opuesta a los árboles
en la naturaleza.
7
Punt Izq Info Punt Der
ARBOLES - VOCABULARIO -
Inicio Raíz Padre o Antepasado N0
N3
Hojas
Sub-árbol Der
Nodo: 0,1,2 hijos
El nível Nx de un nodo, distancia a la raíz. Raíz Nivel 0 Todos los nodos son
Número máximo de nodos de cualquier nivel es 2N descendientes de 8la raíz
ARBOLES - árbol binario -
Características
Sus nodos contienen dos enlaces.
El valor de sus nodos pudiese se NULL.
El nodo raíz es el primer nodo de un árbol.
Cada enlace en el nodo raíz se refiere a un hijo.
El hijo izquierdo es el elemento menor a su raíz.
El hijo derecho es el elemento mayor a la raíz.
Los hijos de un nodo se conocen como descendientes.
Un nodo sin hijos se conoce como nodo de hoja. 9
ARBOLES - árbol binario -
• Subtemas:
Definición.
Representación.
Recorridos.
Operaciones.
10
ARBOLES - Representación -
Construir un
árbol binario,
con la siguiente
información.
11
ARBOLES - Representación - raíz
NULL NULL
14 12
ARBOLES - Representación - 15>14
NULL
NULL NULL
14 15 13
4<14
ARBOLES - Representación -
14 15 4 14
ARBOLES - Representación -
NULL NULL
NULL
9<14 y 9>4
NULL NULL
14 15 4 9 15
ARBOLES - Representación -
NULL NULL
NULL
NULL
7<14 y 7>4 y 7<9
NULL NULL
14 15 4 9 7 16
ARBOLES - Representación -
NULL
NULL
14 15 4 9 7 18 17
ARBOLES - Representación -
NULL NULL
14 15 4 9 7 18 3 18
ARBOLES - Representación -
NULL
NULL NULL
14 15 4 9 7 18 3 5 19
ARBOLES - Representación -
NULL
NULL NULL
14 15 4 9 7 18 3 5 16 20
ARBOLES - Representación -
Note que, 4 no es
mayor ni menor que NULL
4, motivo por el cual
NULL NULL NULL
la condición se hace NULL
falsa y no inserta
NULL NULL NULL
NULL NULL
14 15 4 9 7 18 3 5 16 4 21
ARBOLES - Representación -
NULL
¿Qué condiciones se NULL NULL
cumplieron para insertar NULL
el 20?
NULL NULL NULL NULL NULL
NULL NULL
14 15 4 9 7 18 3 5 16 4 20 22
ARBOLES - Representación -
NULL
NULL NULL
NULL
¿Y para el 17?
NULL NULL NULL NULL
14 15 4 9 7 18 3 5 16 4 20 17 23
ARBOLES - Representación -
NULL
NULL NULL
NULL
¿Por qué el 9, 14 y 5
no se insertan?
NULL NULL NULL NULL
14 15 4 9 7 18 3 5 16 4 20 17 9 14 5 24
ARBOLES - Representación -
25
ARBOLES - árbol binario -
• Subtemas:
Definición.
Representación.
Recorridos.
Operaciones.
26
ARBOLES - Recorridos -
Pre-Orden.
• 1. Visitar la raíz
• 2. Recorrer el sub-árbol izquierdo en pre-orden
• 3. Recorrer el sub-árbol derecho en pre-orden
In-Orden.
• 1. Recorrer el sub-árbol izquierdo en in-orden
• 2. Visitar la raíz
• 3. Recorrer el sub-árbol derecho en in-orden
22
Post-Orden.
• 1. Recorrer el sub-árbol izquierdo en post-orden
• 2. Recorrer el sub-árbol derecho en post-orden
• 3. Visitar la raíz 27
Pre-Orden
3 9 18
7 16 20
5 17
14, 4, 3, 9, 7,5, 15,18, 16,17,20 28
In-Orden
3 9 18
7 16 20
5 17
3, 4,5,7,9,14,15,16,17,18,20. 29
Post-Orden
3 9 18
7 16 20
5 17
30
3,5,7,9,4,17,16,20,18,15,14.
ARBOLES - árbol binario -
• Subtemas:
Definición.
Representación.
Recorridos.
Operaciones.
31
ARBOLES - Operaciones -
Creación de un árbol crearArbol(nombreArbol)
Comprobación del estado arbolVacío(nombreArbol)->Booleano
Inserción de nodos Insertar(padre, valorInfo, posicion)
Borrado de nodos borrar(nombreArbol, valorInfo)
Búsqueda de un nodo pertenece(nombreArbol, dato)-> Booleano
buscar(nombreArbol, información)->referenciaNodo
Recorrido del árbol recorrer(nombreArbol, tipoRecorrido)
Acceso a los nodos info(referenciaNodo)->Información
izq(referenciaNodo)->enlace
der(referenciaNodo)->enlace
eshoja(referenciaNodo)->Booleano
Modificación de los nodos asignarInfo(referenciaNodo, valorInformacion)
asignarIzq(referenciaNodo, valorEnlace)
asignarDer(referenciaNodo, valorEnlace) 32