Este documento describe las estructuras de datos no lineales de árboles y grafos. Explica que los árboles están compuestos de nodos donde cada nodo almacena información y las direcciones de sus sucesores, y hay un nodo raíz que da acceso a todos los demás. Define términos como hijo, padre, hermano, hoja e interior. También describe cómo recorrer un árbol binario de manera inorden y en amplitud usando una cola.
1. INSTITUTO TECNOLÓGICO SUPERIOR DE FELIPE CARRILLO PUERTO
Carpeta de evidencia
Unidad 4: Estructuras no lineales
Alumna: Diana Karina Pech May
Materia: Estructura de datos
Docente: Niels Henryk Aranda cuevas
3° semestre
Grupo: «B»
Ing. sistemas computacionales
2. Arboles
Los árboles son estructuras de datos no lineales. Cada elemento conocido con el nombre de NODO
Un árbol se define como una colección de nodos donde cada uno además de almacenar información, guarda las direcciones de sus sucesores. Se conoce la dirección de uno de los nodos, llamado raíz y a partir de el se tiene acceso a todos los otros miembros de la estructura. Grafos, anidación de paréntesis y diagramas de venn.
Hijo: Es aquel nodo que siempre va a tener un nodo antecesor o padre, son aquellos que se encuentran en el mismo nivel
Padre: Es aquel que tiene hijos y también puede tener o no antecesores.
Hermano: Dos nodos son hermanos si son apuntados por el mismo nodo, es decir si tienen el mismo padre.
Raíz: Es el nodo principal de un árbol y no tiene antecesores.
Hoja o terminal: Son aquellos nodos que no tienen hijos o también los nodos finales de un árbol.
Interior: Se dice que un nodo es interior si no es raíz ni hoja.
Nivel de un nodo: Se dice que el nivel de un nodo es el número de arcos que deben ser recorridos, partiendo de la raíz para llegar hasta él.
Altura del árbol: Se dice que la altura de un árbol es el máximo de los niveles considerando todos sus nodos.
Grado de un nodo: se dice que el grado de un nodo es el número de hijos que tiene dicho nodo.
3. Grafos
Un diagrama de árbol es una herramienta que se utiliza para determinar todos los posibles resultados de un experimento aleatorio. En el cálculo de la probabilidad se requiere conocer el número de elementos que forman parte del espacio muestra, estos se pueden determinar con la construcción del diagrama de árbol
RECORRIDO EN ARBOL BINARIO INORDEN
void inordenArbin(Arbin a,Cola col) { if (!vacioArbin(a)) { inordenArbin(izqArbin(a),col); TipoA raiz = raizArbin(a); adicCola(col,raiz); inordenArbin(derArbin(a),col); } }
4. UN ÁRBOL BINARIO PUEDE DECLARARSE DE LA SIGUIENTE MANERA:
typedef struct tarbol
{
int clave;
struct tarbol *izq,*der;
} tarbol;
5. RECORRIDO EN AMPLITUD:
void amplitud(tarbol *a)
{
tCola cola; /* las claves de la cola serán de tipo árbol binario */ arbol *aux;
if (a != NULL) {
CrearCola(cola);
encolar(cola, a);
while (!colavacia(cola)) {
desencolar(cola, aux);
visitar(aux);
if (aux->izq != NULL) encolar(cola, aux->izq);
if (aux->der != NULL) encolar(cola, aux->der);
}
}
}