Documente Academic
Documente Profesional
Documente Cultură
Mexicanos"
Estructura de datos
Alumna:
Profesor:
Periodo escolar:
Introducción
A las estructuras de datos no lineales se les llama también estructuras de datos
multienlazadas ya que cada elemento puede estar enlazado a cualquier otro
componentes puede tener varios sucesores y/o varios predecesores.
En esta unidad se debe conocer, identificar y aplicar las estructuras no lineales en
la solución de problemas del mundo real. Utilizando java o C++ podemos
implementar las operaciones básicas (insertar, eliminar, buscar) en un árbol binario
de búsqueda, así como los recorridos en PreOrden, InOrden y PostOrden. Además
de que conoceremos algunas de las operaciones básicas, concepto entre otras
acerca de los árboles y grafos.
Arboles
Clasificación de Arboles Binarios
Existen cuatro tipos de árbol binario:
Distinto: Se dice que dos árboles binarios son distintos cuando sus estructuras son
diferentes.
Similares: Dos árboles binarios son similares cuando sus estructuras son idénticas,
pero la información que contienen sus nodos es diferente.
Equivalentes: Son aquellos árboles que son similares y que además los nodos
contienen la misma información.
"Año del Centenario de la Promulgación de la Constitución Política de los Estados Unidos
Mexicanos"
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.
Sin embargo es importante notar que el primer nodo que se imprime no es la raíz
pues en este recorrido la raíz de cada Sub-Árbol es procesado al final, ya que toda
su descendencia ha sido procesada
Recorrido in-orden (IRD): Se recorre en in-orden el primer sub-árbol, luego se
recorre la raíz y al final se recorre en in-orden los demás sub-árboles
Grafos
Representación
Matriz de Adyacencia (estática): Se utiliza una matriz de tamaño n × n donde las
filas y las columnas hacen referencia a los vértices para almacenar en cada casilla
la longitud entre cada par de vértices del grafo. La celda [i, j] almacena la longitud
entre el vértice i y el vértice j. Si su valor es infinito significa que no existe arista
entre esos vértices, y [i, i] = 0.
Lista de Adyacencia (dinámica): se asocia a cada nodo del grafo una lista que
contenga todos aquellos nodos que sean adyacentes a él.
Los vértices forman una lista.
Cada vértice tiene una lista para representar sus relaciones (arcos).
Operaciones básicas
"Año del Centenario de la Promulgación de la Constitución Política de los Estados Unidos
Mexicanos"
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: Consiste en añadir una nueva entrada en la tabla de vértices
(estructura de datos que almacena los vértices) para el nuevo nodo. A partir de ese
momento el grafo tendrá un vértice más, inicialmente aislado, ya que ninguna arista
llegará a él.
Insertar arista: 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: En este caso el procedimiento a realizar es la eliminación de la
tabla de vértices del vértice en sí. A continuación habrá que eliminar las aristas que
tuviesen al vértice borrado como origen o destino.
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.
Recorrido de grafos: Recorrer un grafo significa visitar todos sus nodos partiendo
de un nodo de salida, es muy importante asegurarnos de no ir en círculos. Existen
dos tipos básicos de recorridos:
En anchura: recorrer el grafo en niveles (de los nodos más cercanos a los
más lejanos).
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.
Conclusiones:
Conocimos, identificamos y aplicamos las estructuras no lineales en la solución de
problemas del mundo real. Al igual conocimos un poco acerca de las teorías de esta
unidad así como el aprendizaje utilizando un lenguaje de programación podemos
implementar las operaciones básicas (insertar, eliminar, buscar) en un árbol binario
de búsqueda, así como los recorridos en PreOrden, InOrden y PostOrden asi como
algunas operaciones básicas de los arboles binarios como la forma en que se
pueden recorrer entre otros, la importancia y eficiencia de estos dependerá del
contexto en que se vaya aplicar y cuál es el problema al que se le busca solución.
Bibliográfica:
Bernal, W. (21 de abril de 2015). ESTRUCTURAS DE DATOS II. Obtenido de
http://estructuras2tat.blogspot.com/2015/02/algoritmo-de-dijkstra-el-algoritmo-de.html