11.07.2015 Views

Chapitre 5 Les graphes et leurs algorithmes - UQAC

Chapitre 5 Les graphes et leurs algorithmes - UQAC

Chapitre 5 Les graphes et leurs algorithmes - UQAC

SHOW MORE
SHOW LESS
  • No tags were found...

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

X[v] = 0 si le somm<strong>et</strong> v n’est pas dans le TAS. Si maintenant le somm<strong>et</strong> v est stocké dans la locationH[i], alors X[v] prendra la valeur i. <strong>Les</strong> opérations sur l’ensemble frontiere peuvent être implantéescomme suit :v• Ajouter (x, frontiere) : utiliser T comme un TAS <strong>et</strong> insérer x . À chaque fois qu’un élément de Test mis à jour (T[i] =j) m<strong>et</strong>tre à jour aussi le vecteur X (X[j] = i).• Supprimer minimum (x, frontiere) : utiliser T comme un TAS <strong>et</strong> y supprimer x. De plus, àchaque fois qu’une location du TAS est effacée par un indice j, m<strong>et</strong>tre à jour le vecteur X enfaisant X[j] =i. <strong>et</strong> aussi, comme x est supprimé de l’ensemble frontiere, son indice doit aussiêtre supprimé (X[x] = 0).• Modification de poids (x,frontiere): le nouveau poids de x est donné par T[x]. Par ail<strong>leurs</strong>, Tdoit être maintenu comme un TAS en le remontant à sa bonne location vers la racine. Chaquefois qu’un élément de T est mise à jour (T[i] =j), on doit aussi m<strong>et</strong>tre à jour aussi le vecteur X(X[j] = i).La complexité de ces opérations est comme suit :Ajouter(x,frontiere) : O (log n)Supprimer-minimum(x,frontiere) : O (log n)Membre(x,frontiere) : O (1)Modification de poids(x, frontiere) : O (log n)Par conséquent, la complexité de l’algorithme de Dijkstra est comme suit :O( n +n log n + e +max( n log n,elogn))initialisation supprimer_min Membre ajouter modifierfrontiere poidsL’algorithme de Dijkstra <strong>et</strong> les distances négatives : C<strong>et</strong> algorithme ne génère pas la bonne solutionsi les poids des arêtes sont négatifs. Par exemple, considérons le graphe ci-dessous :A2B3C-233

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!