Pourquoi avons-nous besoin d'une file d'attente prioritaire dans l'Algorithme de Prim

Que ma question parle, je veux savoir pourquoi avons-nous utiliser la file d'attente de Priorité dans L'Algorithme de Prim?
Comment il nous sauve de l'aide de l'naïf façon (oui j'en ai entendu parler mais je ne sais pas pourquoi).

Je serais très heureux si quelqu'un pouvait expliquer étape par étape pour la liste d'adjacence . Je suis à l'aide de Cormen du livre.

Le pseudo-code :

Prim(G,w,r) //what is w (weight?) and r?
  For each u in V[G]
    do key[u]   //what is key?
       π[u]  NIL  
  key[r]  0
  Q  V[G]  
  While Q  Ø
    do u  EXTRACT-MIN(Q)
       for each v in Adj[u]
            if v is in Q and w(u,v) < key[v]
                 then π[v]  u
                       key[v]  w(u,v)

Je pense utiliser std::vector puis std::make_heap(); file d'attente de priorité pour le stockage des bords.

n'est-il pas expliqué dans le livre?
Que voulez-vous utiliser à la place d'une file d'attente de priorité? Qu'est ce qui influence cela aurait-il sur l'efficacité et l'exactitude?
où, dans ce pseudo-voulez-vous ajouter à la mstree?

OriginalL'auteur Mr.Anubis | 2011-08-12