Escolar Documentos
Profissional Documentos
Cultura Documentos
2023
➢ Algoritmo prim
➢ Em 1930 foi descoberto por um matemático:
Vojtech Jarník.
➢ Em 1957 por um cientista da computação:
Robert Clay Prim
➢ Em 1959 redescoberto pelo matemático:
Edsger Dijkstra.
Você já deve ter aprendido sobre Algoritmo de
Kruskal e sua utilidade para calcular a Árvore
Geradora Mínima de um Grafo.
Deve também ter aprendido ou irá aprender
sobre o Algoritmo de Dijkstra e como calcular
o menor caminho de um vértice a todos os
outros.
O algoritmo de Prim é uma aplicação em teoria
de grafos e sua função é encontrar a árvore
geradora mínima para um grafo conexo com
pesos.
Princípio:
➢ Incluir, 1 a 1, os vértices da arvore geradora
mínima,
➢ O algoritmo parte de qualquer vértice do grafo
e, a cada passo, acrescenta a aresta de menor
peso incidente ao conjunto dos vértices que já
foram selecionados a que possui uma
extremidade em vértices no conjunto de não
selecionados.
Dado um grafo não-dirigido conexo G com
custos nas arestas, o algoritmo de Prim cultiva
uma subárvore de G até que ela se torne
geradora. No fim do processo, a árvore é uma
arvore geradora mínima
Casos em que o prim não funciona:
➢ Grafos desconexos
➢ Grafos direcionados
Podemos agora descrever o algoritmo de maneira
precisa.
➢ Cada iteração começa com uma sub-árvore T.
No início da primeira iteração, T consiste em
um único vértice.
➢ O processo iterativo consiste no seguinte:
enquanto a sub-árvore T não estiver vazia,
1. escolha uma aresta da sub-árvore que tenha
custo mínimo,
2. seja u-v a aresta escolhida, com u em T,
3. acrescente a aresta u-v e o vértice v a T
Entrada: Grafo G = (V, A) e matriz de pesos
D={dij} para todas as arestas {i, j}