Kruskal

1 206 vues

Publié le

0 commentaire
0 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

  • Soyez le premier à aimer ceci

Aucun téléchargement
Vues
Nombre de vues
1 206
Sur SlideShare
0
Issues des intégrations
0
Intégrations
432
Actions
Partages
0
Téléchargements
16
Commentaires
0
J’aime
0
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

Kruskal

  1. 1. Permite hallar el árbol de mínima expansión de cualquier grafico valorado (con capacidades)
  2. 2. Árbol de máximo alcance cuyo valor es mínimo, es decir, la suma de sus aristas es mínima.
  3. 3. http://www.youtube.com/watch?v=AR_Y88kkh58
  4. 4. 1 función Kruskal (G)  2 para cada vértice v en G hacer  3 Definir un elemental grupo C (v) ← {v}.  4 Iniciar una cola de prioridad Q para contener todas las aristas de G, usando los pesos como claves.  5 Definición de un árbol T ← Ø / / T en última instancia, contienen los bordes del MST  6 / / n es El Número total de vértices  7, mientras que T tiene menos de n-1 aristas hacer  8 / / u orilla, v es la ruta mínima ponderada de / v  9 (u, v) ← Q.removeMin ()
  5. 5. 10 / / ciclos previene en u SUMA T., T v en solitario si no se contiene Una arista Que Una uy v. 11 / / Nótese QuE el grupo contiene Vértice Si Una arista une un par 12 / / Que Han SIDO vértices añadidos al árbol. 13 Sea C (v) la v de clústeres que contiene, y sea C (u) es el cluster que contiene u. 14 si C (v) ≠ C (u), entonces 15 Agregar borde (v, u) a T. 16 Combinar C (v) y C (u) en un clúster, es decir, la unión C (v) y C (u). 17 T retorno árbol
  6. 6. kruskalMST(G,n,F) Construir una cola de prioridad cp con los lados; Inicializar componente conexa; F=0; while ((vacia(cp) != false) && (jFj < n - 1)) arista = obtenerMin(cp); borrarMin(cp); u = Componente(De(arista)); v = Componente(A(arista)); if (NumeroComponente(u) != NumeroComponente(v)) a~nadir arista a F; unirComponentes(u,v);

×