You are on page 1of 5

c 

 

  

Y

YY  YYYY 


YY YY YY Y



c   

  

Y

Y

Y Y ›  
YYY

YY Y 
Y  Y   Y
 Y  Y Y

Y Y Y 
Y  Y
 Y Y  Y

YY Y Y  Y  Y YY



 Y   YY


 Y
 YY  Y  !Y  Y Y Y

 Y

Y Y 
Y Y 
Y  YY  Y  YY
 Y Y
 
  
Y

Y




c   

  



Definitie:

Graful cu muchii ponderate este un graf conex caruia ii este alaturata o functe w:EĺR+
care atribuie un numar real pozitiv tuturor muchiilor.

Observatie:

Daca am defini un graf neconex (V1,E1,w1) cu functia w pentru pondere si n


componente conexe, intodeauna ar exista un graf conex (V1,E1+{n-1 muchii care leaga
componentele conexe},

w2(x) = w1(x) - daca x in E1

’ - daca x nu este in E1

Notiuni:

Lant optim intre x si y - lantul L cu w(L) minim si x,y capete

Acesta nu poate contine un ciclu deoarece ar implica existent unui lant mai scurt fara
acesta

Lanturile incluse in acesta sunt si ele optime deoarece existent unui lant mai scurt intre
doua elemente continute ar implica existent uni lant mai scurt prin lantul acesta

Distanta dintre doua varfuri - suma ponderilor muchiilor lantului optim dintre doua puncte.

Proprietati:

d(x, x) = 0 prin conventie

d(x, y) = d(y, x) evident

d(x, y) ” d(x, z) + d(z, y) inegalitatea triunghiului

Demonstratie :

Presupunem d(x, y) > d(x, z) + d(z, y), Lz1 = lantul corespunzator d(x, z) , Lz2 =
lantul corespunzator d(z,y) , Lz = lantul corespunzator d(x, y)

=> w(Lz1+Lz2) < w(Lz) => Lz nu este lant optim

Intr-un graf simplu conex cu w(x) = 1

Excentricitatea unui varf ± distanta maxima catre orice alt varf



c   

  

Raza unui graf ± excentricitatea minima a unui varf din graf

Diametrul unui graf-excentricitatea maxima a unui varf dintr-un graf

Centrul unui graf-varful cu excentricitatea minima

Observatie:

Rad(G) ” Diam(G) ” 2*Rad(G)

Prima inegalitate rezulta din definitie

A doua egalitate rezulta din inegalitatea triunghiului

Daca x,y = capetele diametrului si c = centru atunci w(x, y) ” w(x,c) + w(c,y)

Ô   - este arborele partial T al lui G(V,E,w) cu proprietatea ca orice x, y


din V au aceeasi distanta si T si in G

Acesta poate fi generat prinÔ


    

Este repetat urmatorul pas pana cand arborele este format (are n-1 muchii)

Daca T este arborele economic neformat, este adugat varful cu distanta minima fata de toate
varfurile introduce in arbore la momentul respective.

Un posibil pseudocod:


  Π   
 min_distance  Œ    ’
 parent  Œ    Ê 
 minimum_adjacency_list  Π   empty list
 is_in_Q  Π   true
 min_distance  initial vertex  - 
add to minimum-heap m all vertices in graph, keyed by min_distance
//WIKIPEDIA



c   

  

Ô         - este arborele partial T al lui G(V,E,w) cu proprietatea
ca orice x din V are aceeasi distanta fata de varful desemnat in T si in G

Acesta poate fi generat prinÔ


     

Arborele este format prin desemnarea unui scor pentru drumul minim

Este repetat urmatorul pas pana cand arborele este format (are n-1 muchii)

Pentru toate varfurile conectate verifica daca scorul varfului selectat + w(varf selectat, varful
legat) < scorul varfului legat. Daca da, scorul varfului legat devine scorul varfului selectat +
w(varf selectat, varful legat).

Ordinea de parcurgere este ca in cazul parcurgerii in latime.

Un posibil pseudocod:

   Dijkstra(„,   ):
2   vertex Œ in „:

Ê-Ê
3 dist[Œ] := infinity

ÊÊÊ Ê  Ê Ê     Œ


4 previous[Œ] := undefined

 Œ  Ê Ê     


5 dist[  ] := 0

Ê      
6  := the set of all nodes in „

 Ê  Ê    Ê-      Ê 


7     empty:

 Ê 
8 := vertex in  with smallest dist[]
9  dist[ ] = infinity:
10  

  ÊÊ Œ    Ê    


11 remove from 
12   neighbor Πof :

  Œ  Ê    Ê  Œ   


13  := dist[ ] + dist_between( , Œ)
14   < dist[Œ]:

   Œ
15 dist[Œ] := 
16 previous[Œ] :=
17   dist[]
//WIKIPEDIA