Documente Academic
Documente Profesional
Documente Cultură
NICOLAS DE HIDALGO
1. DEFINICION.
A los árboles ordenados de grado dos se les conocen como árboles binarios ya que
cada nodo del árbol no tendrá más de dos descendientes directos. Las aplicaciones
de los árboles binarios son muy variadas ya que se les puede utilizar para
representar una estructura en la cual es posible tomar decisiones con dos opciones
en distintos puntos.
Ejemplo de un árbol:
2. CONCEPTO.
Un árbol es una estructura no lineal en la que cada nodo puede apuntar a uno o
varios nodos. También se suele dar una definición recursiva: un árbol es una
estructura en compuesta por un dato y varios árboles.
Esto son definiciones simples. Pero las características que implican no lo son tanto.
Un árbol es una estructura no lineal en la que cada nodo puede apuntar a uno o
varios nodos.
A. Distinto.
B. Similares.
C. Equivalentes.
D. Completos.
A continuación, se hará una breve descripción de los diferentes tipos de árbol binario
así como un ejemplo de cada uno de ellos.
A. A. DISTINTO: Se dice que dos árboles binarios son distintos cuando sus
estructuras son diferentes.
B. B. SIMILARES: Dos árboles binarios son similares cuando sus estructuras son
idénticas, pero la información que contienen sus nodos es diferente.
C. C. EQUIVALENTES: Son aquellos árboles que son similares y que además los
nodos contienen la misma información.
D. D. COMPLETOS: Son aquellos árboles en los que todos sus nodos excepto los
del ultimo nivel, tiene dos hijos; el subárbol izquierdo y el subárbol derecho.
4. EJEMPLOS.
5. OPERACIONES BÁSICAS SOBRE ARBOLES BINARIOS.
Salvo que trabajemos con árboles especiales, como los que veremos más adelante,
las inserciones serán siempre en punteros de nodos hoja o en punteros libres de
nodos rama. Con estas estructuras no es tan fácil generalizar, ya que existen
muchas variedades de árboles. De nuevo tenemos casi el mismo repertorio de
operaciones de las que disponíamos con las listas: Añadir o insertar elementos.
Buscar o localizar elementos. Borrar elementos. Moverse a través del árbol.
Recorrer el árbol completo. Los algoritmos de inserción y borrado dependen en gran
medida del tipo de árbol que estemos implementando, de modo que por ahora los
pasaremos por alto y nos centraremos más en el modo de recorrer árboles.
6. APLICACIONES.
7. GRAFOS
8. TERMINOLOGIA.
Grado de un nodo:
Numero de aristas que contiene ese nodo. Si el grado de un nodo es 0, se dice que
es un nodo aislado.
Grado de un grafo:
Números de vértices de ese grafo.
Camino:
Un camino C de longitud N de un nodo V1 a un nodo V2, se define como la
secuencia de nodos por los que hay que pasar para llegar del nodo V1 a V2. La
longitud es el número de aristas que comprende el camino. El camino es cerrado si
empieza y termina en el mismo nodo. El camino es simple si todos los nodos de
dicho camino son distintos a excepción de los de los extremos que pueden ser
iguales.
Bucles:
Aristas cuyos extremos son idénticos.
Aristas múltiples:
Dos o más aristas que conectan los mismos nodos
Tipos de grafos:
Grafo desconectado:
Aquel en que existen nodos que no están unidos por ningún camino
Grafo dirigido:
Cada arista tiene asignada una dirección (identificada por un par ordenado).
Grafo no dirigido:
La arista está definida por un par no ordenado.
Grafo sencillo:
Aquel que no tiene ni bucles ni aristas múltiples.
Grafo completo:
Cada nodo del grafo es adyacente a todos los demás.
Peso de un camino:
La suma de los pesos de las aristas del camino.
Cada posición M (i, j) indica si hay una conexión o no entre los nodos que están
asociados a la posición i y j de la matriz.
Con memoria dinámica. Se utilizan 2 listas enlazadas:
9. OPERACIONES.
En los grafos, como en todas las estructuras de datos, las dos operaciones básicas
son insertar y borrar. En este caso, cada una de ellas se desdobla en dos, para
insertar/eliminar vértices e insertar/eliminar aristas.
Insertar vértice
Insertar arista
Esta operación es también muy sencilla. Cuando se inserte una nueva arista en el
grafo, habrá que añadir un nuevo nodo a la lista de adyacencia (lista que almacena
los nodos a los que un vértice puede acceder mediante una arista) del nodo origen,
así si se añade la arista (A,C), se deberá incluir en la lista de adyacencia de A el
vértice C como nuevo destino.
Eliminar vértice
Eliminar arista
Mediante esta operación se borra un arco del grafo. Para llevar a cabo esta acción
es necesario eliminar de la lista de adyacencia del nodo origen el nodo
correspondiente al nodo destino.
Otras operaciones
Las operaciones adicionales que puede incluir un grafo son muy variadas. Además
de las clásicas de búsqueda de un elemento o recorrido del grafo, también podemos
encontrarnos con ejecución de algoritmos que busquen caminos más cortos entre
dos vértices, o recorridos del grafo que ejecuten alguna operación sobre todos los
vértices visitados, por citar algunas operaciones de las más usuales.