Documente Academic
Documente Profesional
Documente Cultură
11
15
8
10 5 3
2
20
9
5
3
6
4 2
1
11
15
8
10 5 3
2
20
9
5
3
6
4 2
1 s= 1
11
15
8
10 5 3
2
20
9
5
3
6
4 2
1 1
11
15
8
10 5 3
2
20
9
5
3
6
4 2
1 1
11 11
15
8
10 5 3 3
2
20
9
5
3
6
4 2
1 1
11 11
15
8
10 5 3 3
2
20
9
5
3
6
4 2
1 1
11 11
15
8 8
10 5 3 5 3
2
20
9
5
3
6
4 2
1 1
11 11
15
8 8
10 5 3 5 3
2
20
9
5
3
6
4 2
1 1
11 11
15
8 8
10 5 3 5 3
2
20
9 9
5
3
6 6
4 2
1 1
11 11
15
8 8
10 5 3 5 3
2
20
9 9
5
3
6 6
4 2
1 1
11 11
15
8 8
10 5 3 5 3
2
20
9 9
5
3
6 6
4 2 4 2
1 1
11 11
15
8 8
10 5 3 5 3
2
20
9 9
5
3
6 6
4 2 4 2
1 1
11 11
15
8 8
10 5 3 5 3
2 2
20
9 9
5
3 3
6 6
4 2 4 2
s= 1
11
1
11
15 3
8 9
8
10 5 3
2 5
20 6
9
5 2
3
6
4
4 2
3
2
Cum evitm s comparam de fiecare dat
toate muchiile cu o extremitate n arbore
i cealalt nu.
Exemplu:
Dup ce vrfurile 1 i 5 au fost adugate n
arbore, muchiile (2,1) i (2,5) sunt comparate la
fiecare pas, dei w(2,1)>w(2,5), deci (2,1) nu va
fi selectat niciodat
Pentru un vrf (neselectat) memorm doar
muchia minim care l unete cu un vrf din
arbore (selectat)
acest vrf din abore penru care se
realizeaz minimul
Avem
cheie[u] = w(u, tata[u])
Asociem fiecrui vrf urmtoarele informaii
(etichete):
d[u] = costul minim al unei muchii de la u la
un vrf selectat deja n arbore
tata[u] = acest vrf din abore penru care se
realizeaz minimul
Avem
Iniializare
n * extragere vrf minim
actualizare etichete vecini
Complexitate
Varianta 1 cu vector de vizitat
Iniializri ->
n * extragere vrf minim ->
actualizare etichete vecini ->
Complexitate
Varianta 1 cu vector de vizitat
Iniializri -> O(n)
n * extragere vrf minim -> O(n2)
actualizare etichete vecini -> O(m)
O(n2)
1 11
15 8
10 5 3
2
20 9
3 5
4 6
2
1 2 3 4 5 6
d/tata= [0/0, /0, /0, /0, /0, /0 ]
Sel. 1: [ - , 15/1, 11*/1, /0, /0, /0 ]
Sel. 3: [ - , 15/1, - , /0, 8*/3, 9/3 ]
Sel. 5: [ - , 10/5 , - , /0, - , 9*/3 ]
Sel. 6: [ - , 5/6 , - , 2*/6 , - , - ]
Sel. 4: [ - , 3/5 , - , - , - , - ]
Sel. 2: [ - , 3/5, - , - , - , - ]
1 11 1
15 8
10 5 3
2
20 9
3 5
4 6
2
1 2 3 4 5 6
d/tata= [ 0/0, /0, /0, /0, /0, /0 ]
Sel. 1: [ - , 15/1, 11*/1, /0, /0, /0 ]
Sel. 3: [ - , 15/1, - , /0, 8*/3, 9/3 ]
Sel. 5: [ - , 10/5 , - , /0, - , 9*/3 ]
Sel. 6: [ - , 5/6 , - , 2*/6 , - , - ]
Sel. 4: [ - , 3/5 , - , - , - , - ]
Sel. 2: [ - , 3/5, - , - , - , - ]
1 11 1
15 8
10 5 3
2
20 9
3 5
4 6
2
1 2 3 4 5 6
d/tata= [ 0/0, /0, /0, /0, /0, /0 ]
Sel. 1: viz [1] = 1 (vom reprezenta prin - )Sel. 3: [
- , 15/1, - , /0, 8*/3, 9/3 ]
Sel. 5: [ - , 10/5 , - , /0, - , 9*/3 ]
Sel. 6: [ - , 5/6 , - , 2*/6 , - , - ]
Sel. 4: [ - , 3/5 , - , - , - , - ]
Sel. 2: [ - , 3/5, - , - , - , - ]
1 11 1
15 8
10 5 3
2
20 9
3 5
4 6
2
1 2 3 4 5 6
d/tata= [ 0/0, /0, /0, /0, /0, /0 ]
Sel. 1: actualizm etichetele vecinilorSel. 3: [ - ,
15/1, - , /0, 8*/3, 9/3 ]
Sel. 5: [ - , 10/5 , - , /0, - , 9*/3 ]
Sel. 6: [ - , 5/6 , - , 2*/6 , - , - ]
Sel. 4: [ - , 3/5 , - , - , - , - ]
Sel. 2: [ - , 3/5, - , - , - , - ]
1 11 1
15 8
10 5 3
2
20 9
3 5
4 6
2
1 2 3 4 5 6
d/tata= [ 0/0, /0, /0, /0, /0, /0 ]
Sel. 1: [ - , 15/1, 11/1, /0, /0, /0 ]
Sel. 3: [ - , 15/1, - , /0, 8*/3, 9/3 ]
Sel. 5: [ - , 10/5 , - , /0, - , 9*/3 ]
Sel. 6: [ - , 5/6 , - , 2*/6 , - , - ]
Sel. 4: [ - , 3/5 , - , - , - , - ]
Sel. 2: [ - , 3/5, - , - , - , - ]
1 11 1 11
15 8
10 5 3 3
2
20 9
3 5
4 6
2
1 2 3 4 5 6
d/tata= [ 0/0, /0, /0, /0, /0, /0 ]
Sel. 1: [ - , 15/1, 11/1, /0, /0, /0 ]
Sel. 3: [ - , 15/1, - , /0, 8*/3, 9/3 ]
Sel. 5: [ - , 10/5 , - , /0, - , 9*/3 ]
Sel. 6: [ - , 5/6 , - , 2*/6 , - , - ]
Sel. 4: [ - , 3/5 , - , - , - , - ]
Sel. 2: [ - , 3/5, - , - , - , - ]
1 11 1 11
15 8
10 5 3 3
2
20 9
3 5
4 6
2
1 2 3 4 5 6
d/tata= [ 0/0, /0, /0, /0, /0, /0 ]
Sel. 1: [ - , 15/1, 11/1, /0, /0, /0 ]
Sel. 3: [ - , 15/1, - , /0, 8/3, 9/3 ]
Sel. 5: [ - , 10/5 , - , /0, - , 9*/3 ]
Sel. 6: [ - , 5/6 , - , 2*/6 , - , - ]
Sel. 4: [ - , 3/5 , - , - , - , - ]
Sel. 2: [ - , 3/5, - , - , - , - ]
1 11 1 11
15 8 8
10 5 3 5 3
2
20 9
3 5
4 6
2
1 2 3 4 5 6
d/tata= [ 0/0, /0, /0, /0, /0, /0 ]
Sel. 1: [ - , 15/1, 11/1, /0, /0, /0 ]
Sel. 3: [ - , 15/1, - , /0, 8/3, 9/3 ]
Sel. 5: [ - , 10/5 , - , /0, - , 9*/3 ]
Sel. 6: [ - , 5/6 , - , 2*/6 , - , - ]
Sel. 4: [ - , 3/5 , - , - , - , - ]
Sel. 2: [ - , 3/5, - , - , - , - ]
1 11 1 11
15 8 8
10 5 3 5 3
2
20 9
3 5
4 6
2
1 2 3 4 5 6
d/tata= [ 0/0, /0, /0, /0, /0, /0 ]
Sel. 1: [ - , 15/1, 11/1, /0, /0, /0 ]
Sel. 3: [ - , 15/1, - , /0, 8/3, 9/3 ]
Sel. 5: [ - , 10/5 , - , /0, - , 9/3 ]
Sel. 6: [ - , 5/6 , - , 2*/6 , - , - ]
Sel. 4: [ - , 3/5 , - , - , - , - ]
Sel. 2: [ - , 3/5, - , - , - , - ]
1 11 1 11
15 8 8
10 5 3 5 3
2
20 9 9
3 5
4 6 6
2
1 2 3 4 5 6
d/tata= [ 0/0, /0, /0, /0, /0, /0 ]
Sel. 1: [ - , 15/1, 11/1, /0, /0, /0 ]
Sel. 3: [ - , 15/1, - , /0, 8/3, 9/3 ]
Sel. 5: [ - , 10/5 , - , /0, - , 9/3 ]
Sel. 6: [ - , 5/6 , - , 2*/6 , - , - ]
Sel. 4: [ - , 3/5 , - , - , - , - ]
Sel. 2: [ - , 3/5, - , - , - , - ]
1 11 1 11
15 8 8
10 5 3 5 3
2
20 9 9
3 5
4 6 6
2
1 2 3 4 5 6
d/tata= [ 0/0, /0, /0, /0, /0, /0 ]
Sel. 1: [ - , 15/1, 11/1, /0, /0, /0 ]
Sel. 3: [ - , 15/1, - , /0, 8/3, 9/3 ]
Sel. 5: [ - , 10/5 , - , /0, - , 9/3 ]
Sel. 6: [ - , 5/6 , - , 2/6, - , - ]
Sel. 4: [ - , 3/5 , - , - , - , - ]
Sel. 2: [ - , 3/5, - , - , - , - ]
1 11 1 11
15 8 8
10 5 3 5 3
2
20 9 9
3 5
6 4 6
4 2 2
1 2 3 4 5 6
d/tata= [ 0/0, /0, /0, /0, /0, /0 ]
Sel. 1: [ - , 15/1, 11/1, /0, /0, /0 ]
Sel. 3: [ - , 15/1, - , /0, 8/3, 9/3 ]
Sel. 5: [ - , 10/5 , - , /0, - , 9/3 ]
Sel. 6: [ - , 5/6 , - , 2/6, - , - ]
Sel. 4: [ - , 3/5 , - , - , - , - ]
Sel. 2: [ - , 3/5, - , - , - , - ]
1 11 1 11
15 8 8
10 5 3 5 3
2
20 9 9
3 5
6 4 6
4 2 2
1 2 3 4 5 6
d/tata= [ 0/0, /0, /0, /0, /0, /0 ]
Sel. 1: [ - , 15/1, 11/1, /0, /0, /0 ]
Sel. 3: [ - , 15/1, - , /0, 8/3, 9/3 ]
Sel. 5: [ - , 10/5 , - , /0, - , 9/3 ]
Sel. 6: [ - , 5/6 , - , 2/6, - , - ]
Sel. 4: [ - , 3/4 , - , - , - , - ]
Sel. 2: [ - , 3/5, - , - , - , - ]
1 11 1 11
15 8 8
10 5 3 5 3
2 2
20 9 9
3 5 3
6 4 6
4 2 2
1 2 3 4 5 6
d/tata= [ 0/0, /0, /0, /0, /0, /0 ]
Sel. 1: [ - , 15/1, 11/1, /0, /0, /0 ]
Sel. 3: [ - , 15/1, - , /0, 8/3, 9/3 ]
Sel. 5: [ - , 10/5 , - , /0, - , 9/3 ]
Sel. 6: [ - , 5/6 , - , 2/6, - , - ]
Sel. 4: [ - , 3/4 , - , - , - , - ]
Sel. 2: [ - , 3/5, - , - , - , - ]
1 11 1 11
15 8 8
10 5 3 5 3
2 2
20 9 9
3 5 3
6 4 6
4 2 2
1 2 3 4 5 6
d/tata= [ 0/0, /0, /0, /0, /0, /0 ]
Sel. 1: [ - , 15/1, 11/1, /0, /0, /0 ]
Sel. 3: [ - , 15/1, - , /0, 8/3, 9/3 ]
Sel. 5: [ - , 10/5 , - , /0, - , 9/3 ]
Sel. 6: [ - , 5/6 , - , 2/6, - , - ]
Sel. 4: [ - , 3/4 , - , - , - , - ]
Sel. 2: [ - , - , - , - , - , - ]
Varianta 2 memorarea vrfurilor din ntr-un
min-heap Q (min-ansamblu)