programación 3: algoritmo de prim y de kruskal
TRANSCRIPT
![Page 1: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/1.jpg)
UNIVERSIDAD DE CUENCA
Autor: Edisson Fernando Sigua LojaTema: Algoritmo de Prim y de Kruskal
Materia: Programación 3: Estructura de Archivos.Docente: Ing. Ángel Vásquez
![Page 2: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/2.jpg)
Contenido
• Intoducción• Grafo• Ejemplo de Grafo• Árbol Recubridor Mínimo• Algoritmo de Prim• Implementación de Algoritmo de Prim• Algoritmo de Kruskal• Implementación de Algoritmo de Kruskal• Conclusiones• Bibliografía
![Page 3: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/3.jpg)
Introducción
![Page 4: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/4.jpg)
Grafo
En la vida real existen muchos problemas relacionados a conexiones entre dos o más entes (ejemplo: comunicación telefónica, circuitos eléctricos, comunicación entre calles, etc.). Este tipo de problemas se pueden modelar usando un tipo de representación simbólica llamada grafos.¿Qué son los grafos?Los grafos son un conjunto de nodos y aristas conectadas entre sí.En el ámbito de las ciencias de la computación es un tipo abstracto de datos (TAD), que consiste en un conjunto de nodos (también llamados vértices) y un conjunto de arcos (aristas) que establecen relaciones entre los nodos.
![Page 5: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/5.jpg)
Ejemplo de Grafo
• Ejemplo de grafo que representa las relaciones de amistad entre un grupo de personas de la red social Facebook.
![Page 6: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/6.jpg)
Árbol Recubridor Mínimo
• Una propiedad que interesa conocer de los grafos es si para todo par de vértices hay un camino que los una. Si el grafo cumple con esta propiedad podemos decir que el grafo es conexo.
• ¿Qué es un árbol?Un árbol, en una red, es un subconjunto G’ del grafo G que está conectado y sin ciclos. Los árboles tienen dos propiedades importantes:
1. Todo árbol de n vértices contiene exactamente n‑1 aristas.2. Si se añade una arista a un árbol, se obtiene un ciclo.
![Page 7: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/7.jpg)
Árbol Recubridor Mínimo
• El problema del árbol de expansión mínimo ó árbol de expansión de coste mínimo consiste en buscar un árbol que abarque todos los vértices del grafo, con suma de pesos de aristas mínimo.• Todo grafo tiene un bosque recubridor mínimo.
![Page 8: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/8.jpg)
Algoritmo de Prim
![Page 9: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/9.jpg)
Algoritmo de Prim
• Diseñado por primera vez en 1930 por el matemático Vojtech Jarnik y luego de manera independiente por el científico Robert C. Prim en 1957 y redescubierto por Dijkstra en 1959. Debido a esto a este algoritmo se lo conoce también como algoritmo DJP o algoritmo de Jarnik.• El algoritmo de Prim encuentra un árbol de expansión de
un grafo, cuyas aristas sumadas nos den el peso mínimo.
![Page 10: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/10.jpg)
Algoritmo de Prim
Ejecución de algoritmo• Se marca un vértice cualquiera como vértice de partida.• Seleccionamos una arista de menor valor del vértice
marcado previamente y marcamos el otro nodo con el que se conecta la arista.• Repetimos el paso anterior siempre que la arista elegida
enlace un nodo marcado con otro que no lo esté.• El proceso termina cuando tenemos todos los vértices del
grafo marcados.
![Page 11: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/11.jpg)
Ejemplo de aplicación
A
D
B
C
E
FG
7
5
9
6
15
8
57
11
98
![Page 12: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/12.jpg)
Ejemplo de aplicación
A
D
B
C
E
FG
7
5
9
6
15
8
57
11
98
![Page 13: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/13.jpg)
Ejemplo de aplicación
A
D
B
C
E
FG
7
5
9
6
15
8
57
11
98
![Page 14: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/14.jpg)
Ejemplo de aplicación
A
D
B
C
E
FG
7
5
9
6
15
8
57
11
98
![Page 15: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/15.jpg)
Ejemplo de aplicación
A
D
B
C
E
FG
7
5
9
6
15
8
57
11
98
![Page 16: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/16.jpg)
Ejemplo de aplicación
A
D
B
C
E
FG
7
5
9
6
15
8
57
11
98
![Page 17: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/17.jpg)
Ejemplo de aplicación
A
D
B
C
E
FG
7
5
9
6
15
8
57
11
98
![Page 18: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/18.jpg)
Ejemplo de aplicación
A
D
B
C
E
FG
7
5
9
6
15
8
57
11
98
![Page 19: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/19.jpg)
Ejemplo de aplicación
A
D
B
C
E
FG
7
5
9
6
15
8
57
11
98
![Page 20: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/20.jpg)
Ejemplo de aplicación
A
D
B
C
E
FG
7
5
9
6
15
8
57
11
98
![Page 21: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/21.jpg)
Ejemplo de aplicación
A
D
B
C
E
FG
7
5
9
6
15
8
57
11
98
![Page 22: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/22.jpg)
Ejemplo de aplicación
A
D
B
C
E
FG
7
5
9
6
15
8
57
11
98
![Page 23: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/23.jpg)
Ejemplo de aplicación
A
D
B
C
E
FG
7
5
9
6
15
8
57
11
98
![Page 24: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/24.jpg)
Ejemplo de aplicación
A
D
B
C
E
FG
7
5
9
6
15
8
57
11
98
![Page 25: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/25.jpg)
Ejemplo de aplicación
A
D
B
C
E
FG
7
5
6
57
9
Coste = 39
![Page 26: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/26.jpg)
Implementación de Algoritmo de Prim
Para la Implementación se utilizaron dos paquetes:• Paquete Grafo
• Paquete Algoritmo_Prim
![Page 27: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/27.jpg)
Matriz de Pesos
![Page 28: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/28.jpg)
![Page 29: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/29.jpg)
Clase Vértice
![Page 30: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/30.jpg)
![Page 31: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/31.jpg)
Clase GrafMatPeso
![Page 32: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/32.jpg)
![Page 33: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/33.jpg)
![Page 34: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/34.jpg)
![Page 35: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/35.jpg)
Clase Algoritmo_Prim
![Page 36: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/36.jpg)
![Page 37: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/37.jpg)
![Page 38: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/38.jpg)
Clase Main_Prim
![Page 39: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/39.jpg)
![Page 40: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/40.jpg)
![Page 41: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/41.jpg)
![Page 42: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/42.jpg)
![Page 43: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/43.jpg)
Ejecución
![Page 44: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/44.jpg)
![Page 45: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/45.jpg)
Complejidad
•El algoritmo de Prim tiene una complejidad de O(n^2). Sin embargo si dicho algoritmo se implementa con montículos, el tiempo requerido por este algoritmo es O(a log n).
![Page 46: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/46.jpg)
Algoritmo de Kruskal
![Page 47: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/47.jpg)
Algoritmo de Kruskal
• Fue escrito por Joshep Kruskal y publicado en 1956 cuando trabajaba de investigador en Math Center.• El objetivo del algoritmo de kruskal es construir un árbol formado por aristas sucesivamente seleccionadas de mínimo peso a partir de un grafo con pesos en las aristas.
![Page 48: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/48.jpg)
Algoritmo de Kruskal
Ejecución del algoritmo• Seleccionar la arista de menor costo.• Si la arista seleccionada conecta dos vértices distintos, entonces marcamos la arista verificando que no se formen ciclos.• Continuamos el proceso hasta marcar todas los vértices.
![Page 49: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/49.jpg)
Ejemplo de aplicación
A
D
B
C
E
FG
7
5
9
6
15
8
57
11
98
![Page 50: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/50.jpg)
Ejemplo de aplicación
A
D
B
C
E
FG
7
5
9
6
15
8
57
11
98
![Page 51: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/51.jpg)
Ejemplo de aplicación
A
D
B
C
E
FG
7
5
9
6
15
8
57
11
98
![Page 52: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/52.jpg)
Ejemplo de aplicación
A
D
B
C
E
FG
7
5
9
6
15
8
57
11
98
![Page 53: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/53.jpg)
Ejemplo de aplicación
A
D
B
C
E
FG
7
5
9
6
15
8
57
11
98
![Page 54: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/54.jpg)
Ejemplo de aplicación
A
D
B
C
E
FG
7
5
9
6
15
8
57
11
98
![Page 55: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/55.jpg)
Ejemplo de aplicación
A
D
B
C
E
FG
7
5
9
6
15
8
57
11
98
![Page 56: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/56.jpg)
Ejemplo de aplicación
A
D
B
C
E
FG
7
5
9
6
15
8
57
11
98
![Page 57: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/57.jpg)
Ejemplo de aplicación
A
D
B
C
E
FG
7
5
9
6
15
8
57
11
98
![Page 58: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/58.jpg)
Ejemplo de aplicación
A
D
B
C
E
FG
7
5
9
6
15
8
57
11
98
![Page 59: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/59.jpg)
Ejemplo de aplicación
A
D
B
C
E
FG
7
5
9
6
15
8
57
11
98
![Page 60: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/60.jpg)
Ejemplo de aplicación
A
D
B
C
E
FG
7
5
9
6
15
8
57
11
98
![Page 61: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/61.jpg)
Ejemplo de aplicación
A
D
B
C
E
FG
7
5
9
6
15
8
57
11
98
![Page 62: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/62.jpg)
Ejemplo de aplicación
A
D
B
C
E
FG
7
5
9
6
15
8
57
11
98
![Page 63: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/63.jpg)
Ejemplo de aplicación
A
D
B
C
E
FG
7
5
9
6
15
8
57
11
98
![Page 64: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/64.jpg)
Ejemplo de aplicación
A
D
B
C
E
FG
7
5
9
6
15
8
57
11
98
![Page 65: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/65.jpg)
Ejemplo de aplicación
A
D
B
C
E
FG
7
5
9
6
15
8
57
11
98
![Page 66: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/66.jpg)
Ejemplo de aplicación
A
D
B
C
E
FG
7
5
6
57
9
Coste = 39
![Page 67: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/67.jpg)
Implementación de Algoritmo de Kruskal
Para la Implementación se utilizaron dos paquetes:• Paquete Grafo
• Paquete Algoritmo_Kruskal
![Page 68: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/68.jpg)
Matriz de Pesos
![Page 69: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/69.jpg)
![Page 70: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/70.jpg)
Clase AlgoritmoKruskal
![Page 71: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/71.jpg)
![Page 72: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/72.jpg)
![Page 73: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/73.jpg)
![Page 74: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/74.jpg)
Clase Main_Kruskal
![Page 75: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/75.jpg)
![Page 76: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/76.jpg)
![Page 77: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/77.jpg)
![Page 78: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/78.jpg)
![Page 79: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/79.jpg)
Ejecución
![Page 80: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/80.jpg)
![Page 81: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/81.jpg)
Complejidad
•El algoritmo de Kruskal requiere un tiempo que está en O(a log n). Para un grafo denso, “a” tiende a n(n-1)/2, por lo que el algoritmo requiere un tiempo que está en O(n^2 log n). En un grafo disperso, “a” tiende a n-1, por lo que el algoritmo de Kruskal requiere un tiempo que está en O(n log n).
![Page 82: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/82.jpg)
Conclusiones
![Page 83: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/83.jpg)
Conclusiones
Se puede concluir que:• El algoritmo de Prim y Kruskal tienen una gran importancia pues nos ayudan a modelar y resolver problemas de la vida real.• El algoritmo de Kruskal es mas eficiente que el de Prim.• Ambos algoritmos hacen uso de la matriz de pesos y adyacencia para poder calcular el árbol mínimo.
![Page 84: Programación 3: algoritmo de Prim y de Kruskal](https://reader038.vdocuments.net/reader038/viewer/2022102421/5889d5d41a28ab83478b54ad/html5/thumbnails/84.jpg)
Bibliografía
• Yojanes, A. L., & Zohonero, M. I. (2008). Estructuras de datos en Java. Madrid, ES: McGraw-Hill España. Retrieved from http://www.ebrary.com• Moreno, E., & Ramírez, H. (2009). Grafos:
fundamentos y algoritmos. Santiago de Chile, CL: Editorial ebooks Patagonia - J.C. Sáez Editor. Retrieved from http://www.ebrary.com