Ordenamiento Topológico

Slides:



Advertisements
Presentaciones similares
ALGORITMOS DE KRUSKAL Y PRIM
Advertisements

PRACTICO N° 6 GRAFOS año: 2012.
GRAFOS Presentado por: Oscar Leonardo Ramírez John Freddy Sandoval
Árboles Grafo que no contiene ciclos, es decir es un grafo también acíclico, pero a su vez es conexo.
GRAFOS ESTRUCTURAS DE DATOS.
GRAFOS: ALGORITMOS FUNDAMENTALES
MATEMÁTICAS DISCRETAS.
“GRAFOS” Chacón Zamora José Christian González García Andrea
Investigación Operativa II
PROGRAMACION DE Pilas o Stacks y Colas
ESTRUCTURAS DE DATOS AVANZADAS
Método de Ford-Fulkerson
Grafos dualmente cordales y sus relaciones con otros tipos de grafos


Definiciones: conjuntos, grafos, y árboles
Diplomado en Informática Aplicada
Recurrencia Programación II 3-4 de febrero de 2009.

AED I. Estructuras de Datos.
Cecilia Laborde González
Ordenamiento topológico
GRAFOS HUGO ARAYA CARRASCO.
Estructuras de datos y algoritmos
1 Algoritmos Elementales de Grafos Agustín J. González ELO-320: Estructura de Datos Y Algoritmos 1er.Sem
Programación entera y grafos
1 Kapitel 8: Graphalgorithmen 8.1 Grundlagen 8.2 Tiefen- und Breitensuche 8.3 Prim- und Kruskal-Algorithmus 8.4 Kürzeste Wege in Graphen 8.5 Eulersche.
Matemáticas para Ciencias de la Computación MCC3182
PROGRAMACIÓN PARALELA EN ALGORITMOS SOBRE GRAFOS
Material de apoyo Unidad 4 Estructura de datos
Ejemplos de Grafos: Red de tráfico con caminos y cruces.
Grafos. Un Grafo G es un par de conjuntos (V, E), donde V es un conjunto no vacío de elementos llamados vértices o nodos y E es un conjunto formado por.
Ciudad de Könisberg, Prusia, en XVIII:
Coloración de Grafos Planos
Definiciones: conjuntos, grafos, y árboles
Teoría de Grafos lógica y algoritmos.
Trabajo presentado por: LUIS FERNANDO OBANDO ING
Árbol recubridor mínimo Distancias
Single-Source Shortest Paths “Camino más corto desde/hacia una fuente”
Matemáticas Discretas
Diseño y análisis de algoritmos

Teoría de Grafos.-Clase 2

Agustín J. González ELO-320: Estructura de Datos y Algoritmos
Agustín J. González ELO320: Estructura de Datos y Algoritmos
Aclaraciones TP Especial 2006 Primera Entrega Enunciado del problema Diseño sugerido Interfaz básica sugerida Interfaz extendida sugerida Sugerencias para.
Estructuras de datos para Grafos
Tópicos I Árboles, montículos y grafos
1 Single-Source Shortest Paths “Camino más corto desde/hacia una fuente” Agustín J. González ELO320: Estructura de Datos y Algoritmos 1.er. Sem
Relaciones y Grafos Análisis y Diseño de Algoritmos.
Minimum Spanning Tree (Árbol de Expansión Mínima)
Definiciones: conjuntos, grafos, y árboles
1 Flujo Máximo Agustín J. González ELO320: Estructura de Datos y Algoritmos.
Agustín J. González ELO-320: Estructura de Datos Y Algoritmos
Agustín J. González ELO320: Estructura de Datos y Algoritmos
Minimum Spanning Tree (Árbol de Expansión Mínima)
Algoritmos y Estructura de Datos
Flujo en redes Def: una red N es un grafo orientado conexo que tiene dos nodos distinguidos una fuente s con grado de salida positivo y un sumidero t con.
Cecilia Laborde González
Estructura de Datos 4 Grafos Dirigidos
UNIDAD 2 Grafos Árboles abarcadores mínimos Caminos más cortos.
ARBOLES GENERALIZADOS
BUSQUEDA EN ANCHURA Y PROFUNDIDAD
GRAFOS.
M.C. Meliza Contreras González
Matemáticas Discretas MISTI
PROGRAMACION DE Pilas o Stacks y Colas
Recorridos de grafos Segunda Parte M.C. Meliza Contreras González.
Grafos. Concepto: Un Grafo no es más que un conjunto de nodos o vértices que se encuentran relacionados con unas aristas. Además, los vértices tienen.
Transcripción de la presentación:

Ordenamiento Topológico

Orden Topológico Sea G un grafo conexo, dirigido y acíclico. Y sean a y b vértices del grafo. Si existe un camino de a hasta b, entonces b aparece después de a en el ordenamiento topológico. 2 1 3 4 5

Orden Topológico Inicialmente el algoritmo se inicializa con una cola vacía. Se agrega a la cola todos los nodos con indegree = 0 2 1 3 4 5

Orden Topológico Inicialmente el algoritmo se inicializa con una cola vacía. Se agrega a la cola todos los nodos con indegree = 0 2 1 3 4 5

Orden Topológico Inicialmente el algoritmo se inicializa con una cola vacía. Se agrega a la cola todos los nodos con indegree = 0 2 1 3 1 4 5

Orden Topológico Inicialmente el algoritmo se inicializa con una cola vacía. Se agrega a la cola todos los nodos con indegree = 0 2 1 3 4 5 1

Orden Topológico Inicialmente el algoritmo se inicializa con una cola vacía. Se agrega a la cola todos los nodos con indegree = 0 2 1 3 4 5 1

Orden Topológico 2 1 3 4 5 1 Mientras la cola no este vacía: Sacar elemento de la cola. Se ingresa a la lista en orden. Se decrementa en 1 el indegree de los vertices adyacentes al nodo. Si indegree de algun nodo igual a cero, se agrega a la cola. 2 1 3 4 5 1 Lista en Orden:

Orden Topológico 2 1 3 4 5 Mientras la cola no este vacía: Sacar elemento de la cola. Se ingresa a la lista en orden. Se decrementa en 1 el indegree de los vertices adyacentes al nodo. Si indegree de algun nodo igual a cero, se agrega a la cola. 2 1 3 4 5 Lista en Orden: 1-

Orden Topológico 2 1 3 4 5 Mientras la cola no este vacía: Sacar elemento de la cola. Se ingresa a la lista en orden. Se decrementa en 1 el indegree de los vertices adyacentes al nodo. Si indegree de algun nodo igual a cero, se agrega a la cola. 2 1 3 4 5 Lista en Orden: 1-

Orden Topológico 2 1 3 4 5 Mientras la cola no este vacía: Sacar elemento de la cola. Se ingresa a la lista en orden. Se decrementa en 1 el indegree de los vertices adyacentes al nodo. Si indegree de algun nodo igual a cero, se agrega a la cola. 2 1 3 4 5 Lista en Orden: 1-

Orden Topológico 2 1 3 3 4 5 Mientras la cola no este vacía: Sacar elemento de la cola. Se ingresa a la lista en orden. Se decrementa en 1 el indegree de los vertices adyacentes al nodo. Si indegree de algun nodo igual a cero, se agrega a la cola. 2 1 3 3 4 5 Lista en Orden: 1-

Orden Topológico 2 1 3 4 5 3 Mientras la cola no este vacía: Sacar elemento de la cola. Se ingresa a la lista en orden. Se decrementa en 1 el indegree de los vertices adyacentes al nodo. Si indegree de algun nodo igual a cero, se agrega a la cola. 2 1 3 4 5 3 Lista en Orden: 1-

Orden Topológico 2 1 3 4 5 3 Mientras la cola no este vacía: Sacar elemento de la cola. Se ingresa a la lista en orden. Se decrementa en 1 el indegree de los vertices adyacentes al nodo. Si indegree de algun nodo igual a cero, se agrega a la cola. 2 1 3 4 5 3 Lista en Orden: 1-

Orden Topológico 2 1 3 4 5 Mientras la cola no este vacía: Sacar elemento de la cola. Se ingresa a la lista en orden. Se decrementa en 1 el indegree de los vertices adyacentes al nodo. Si indegree de algun nodo igual a cero, se agrega a la cola. 2 1 3 4 5 Lista en Orden: 1- 3 -

Orden Topológico 2 1 3 4 5 Mientras la cola no este vacía: Sacar elemento de la cola. Se ingresa a la lista en orden. Se decrementa en 1 el indegree de los vertices adyacentes al nodo. Si indegree de algun nodo igual a cero, se agrega a la cola. 2 1 3 4 5 Lista en Orden: 1- 3 -

Orden Topológico 2 1 3 4 5 Mientras la cola no este vacía: Sacar elemento de la cola. Se ingresa a la lista en orden. Se decrementa en 1 el indegree de los vertices adyacentes al nodo. Si indegree de algun nodo igual a cero, se agrega a la cola. 2 1 3 4 5 Lista en Orden: 1- 3 -

Orden Topológico 2 1 3 4 5 2 Mientras la cola no este vacía: Sacar elemento de la cola. Se ingresa a la lista en orden. Se decrementa en 1 el indegree de los vertices adyacentes al nodo. Si indegree de algun nodo igual a cero, se agrega a la cola. 2 1 3 4 5 2 Lista en Orden: 1- 3 -

Orden Topológico 2 1 3 4 5 2 Mientras la cola no este vacía: Sacar elemento de la cola. Se ingresa a la lista en orden. Se decrementa en 1 el indegree de los vertices adyacentes al nodo. Si indegree de algun nodo igual a cero, se agrega a la cola. 2 1 3 4 5 2 Lista en Orden: 1- 3 -

Orden Topológico 2 1 3 4 5 Mientras la cola no este vacía: Sacar elemento de la cola. Se ingresa a la lista en orden. Se decrementa en 1 el indegree de los vertices adyacentes al nodo. Si indegree de algun nodo igual a cero, se agrega a la cola. 2 1 3 4 5 Lista en Orden: 1- 3 - 2

Orden Topológico 2 1 3 4 5 Mientras la cola no este vacía: Sacar elemento de la cola. Se ingresa a la lista en orden. Se decrementa en 1 el indegree de los vertices adyacentes al nodo. Si indegree de algun nodo igual a cero, se agrega a la cola. 2 1 3 4 5 Lista en Orden: 1- 3 - 2

Orden Topológico 2 1 3 4 5 4 Mientras la cola no este vacía: Sacar elemento de la cola. Se ingresa a la lista en orden. Se decrementa en 1 el indegree de los vertices adyacentes al nodo. Si indegree de algun nodo igual a cero, se agrega a la cola. 2 1 3 4 5 4 Lista en Orden: 1- 3 - 2

Orden Topológico 2 1 3 4 5 4 Mientras la cola no este vacía: Sacar elemento de la cola. Se ingresa a la lista en orden. Se decrementa en 1 el indegree de los vertices adyacentes al nodo. Si indegree de algun nodo igual a cero, se agrega a la cola. 2 1 3 4 5 4 Lista en Orden: 1- 3 - 2

Orden Topológico 2 1 3 4 5 Mientras la cola no este vacía: Sacar elemento de la cola. Se ingresa a la lista en orden. Se decrementa en 1 el indegree de los vertices adyacentes al nodo. Si indegree de algun nodo igual a cero, se agrega a la cola. 2 1 3 4 5 Lista en Orden: 1- 3 - 2 - 4 -

Orden Topológico 2 1 3 4 5 Mientras la cola no este vacía: Sacar elemento de la cola. Se ingresa a la lista en orden. Se decrementa en 1 el indegree de los vertices adyacentes al nodo. Si indegree de algun nodo igual a cero, se agrega a la cola. 2 1 3 4 5 Lista en Orden: 1- 3 - 2 - 4 -

Orden Topológico 2 1 3 4 5 Mientras la cola no este vacía: Sacar elemento de la cola. Se ingresa a la lista en orden. Se decrementa en 1 el indegree de los vertices adyacentes al nodo. Si indegree de algun nodo igual a cero, se agrega a la cola. 2 1 3 4 5 Lista en Orden: 1- 3 - 2 - 4 -

Orden Topológico 2 1 3 4 5 5 Mientras la cola no este vacía: Sacar elemento de la cola. Se ingresa a la lista en orden. Se decrementa en 1 el indegree de los vertices adyacentes al nodo. Si indegree de algun nodo igual a cero, se agrega a la cola. 2 1 3 4 5 5 Lista en Orden: 1- 3 - 2 - 4 -

Orden Topológico 2 1 3 4 5 5 Mientras la cola no este vacía: Sacar elemento de la cola. Se ingresa a la lista en orden. Se decrementa en 1 el indegree de los vertices adyacentes al nodo. Si indegree de algun nodo igual a cero, se agrega a la cola. 2 1 3 4 5 5 Lista en Orden: 1- 3 - 2 - 4 -

Orden Topológico 2 1 3 4 5 Mientras la cola no este vacía: Sacar elemento de la cola. Se ingresa a la lista en orden. Se decrementa en 1 el indegree de los vertices adyacentes al nodo. Si indegree de algun nodo igual a cero, se agrega a la cola. 2 1 3 4 5 Lista en Orden: 1- 3 - 2 - 4 - 5

Orden Topológico El orden topológico del grafo es: 1- 3 - 2 - 4 - 5 2

Orden Topológico El orden topológico no es unico. Por ejemplo, en este grafo: 2 - 1 -3 y 1 - 2 -3 son ordenes correctos. 2 3 1

Orden Topológico Los costos de realizar el orden topológico depende de la forma que está implementado el grafo: Con lista de adyacencia el costo es O(n + e), donde n es el numero de vértices y e el numero de arcos. Con matriz de adyacencia el costo es de O(n2), donde n es el numero de vértices.