Árvore de extensão mínima: diferenças entre revisões

Conteúdo apagado Conteúdo adicionado
Kaktus Kid (discussão | contribs)
arvore -> árvore
Linha 22:
 
== Algoritmos ==
O primeiro algoritmo a encontrar uma arvoreárvore de extensão mínima foi desenvolvido pelo cientista checo [[Otakar Borůvka]] em [[1926]] (veja [[algoritmo de Boruvka]]). Seu propósito era fornecer uma cobertura elétrica eficiente na área rural da cidade de [[Morávia do Sul (região)|Morávia do Sul]]. Existem hoje dois algoritmos comummente usados, o [[algoritmo de Prim]] e o [[algoritmo de Kruskal]]. Todos são [[algoritmo guloso|algoritmos gulosos]] que rodam em tempo polinomial, então o problema de encontrar tais árvores pertence a classe de complexidade [[p (complexidade)|P]].
 
O mais rápido algoritmo de árvore mínima de extensão foi desenvolvido por [[Bernard Chazelle]], e foi baseado no algoritmo de Borůvka. Ele roda em um tempo de ''[[notação O|O]]''(''m'' α(''m'',''n'')), onde ''m'' é o número de arestas, ''n'' refere-se ao número de vértices e α é a clássica função inversa da [[função de Ackermann]]. A função α cresce de forma extremamente lenta, então para todos os propósitos práticos ele pode ser considerado uma constante não maior que quatro; portanto o algoritmo de Chazelle chega muito perto de um tempo ''O''(''m'').