Prima un Kraskala algoritmu salīdzinājums

Preview:

DESCRIPTION

Prima un Kraskala algoritmu salīdzinājums. Nākošais. Iepriekšējais. V2. V2. 15. 15. Pauze. 6. 6. V3. V3. 18. 18. 8. Turpināt. 8. 11. V1. 11. V1. V4. V4. Beigt. 7. 7. 10. 10. 8. 8. 5. 5. V7. V7. 9. 9. 15. 15. V6. V6. V5. V5. - PowerPoint PPT Presentation

Citation preview

Prima un Kraskala algoritmu salīdzinājums

V1

V2

V3

V4

V5 V6

V7

615

8

18 8

59

7

15

10

Nākošais

Iepriekšējais

Beigt

Pauze

Turpināt 11 V1

V2

V3

V4

V5 V6

V7

615

8

18 8

59

7

15

10

11

Šajā piemērā tiks salīdzināta Prima un Kraskala algoritmu

darbība vienā un tajā pašā grafā

Prima un Kraskala algoritmu salīdzinājums

V1

V2

V3

V4

V5 V6

V7

615

8

18 8

59

7

15

10

Nākošais

Iepriekšējais

Beigt

Pauze

Turpināt 11 V1

V2

V3

V4

V5 V6

V7

615

8

18 8

59

7

15

10

11

Abi algoritmi meklē grafa minimālo

karkasu un ir vienādi efektīvi

Prima un Kraskala algoritmu salīdzinājums

V1

V2

V3

V4

V5 V6

V7

615

8

18 8

59

7

15

10

Nākošais

Iepriekšējais

Beigt

Pauze

Turpināt 11 V1

V2

V3

V4

V5 V6

V7

615

8

18 8

59

7

15

10

11

Algoritmu pielietošanas gaitā tiek izmantota kopa

Q- tā satur minimālā karkasa lokus

Q Q

Prima un Kraskala algoritmu salīdzinājums

V1

V2

V3

V4

V5 V6

V7

615

8

18 8

59

7

15

10

Nākošais

Iepriekšējais

Beigt

Pauze

Turpināt 11 V1

V2

V3

V4

V5 V6

V7

615

8

18 8

59

7

15

10

11

Prima algoritms lieto vēl vienu kopu- T, kura satur

virsotnes, kas pieder minimālajam karkasam

Q

T

Q

Prima un Kraskala algoritmu salīdzinājums

V1

V2

V3

V4

V5 V6

V7

615

8

18 8

59

7

15

10

Nākošais

Iepriekšējais

Beigt

Pauze

Turpināt 11 V1

V2

V3

V4

V5 V6

V7

615

8

18 8

59

7

15

10

11

Prima algoritms Kraskala algoritms

QQ

T

Katrā iterācijā Prima algoritms minimālajam karkasam pievieno

loku ar minimālo svaru, kurā incidents kādai no virsotnēm kopā T un pievienošanas rezultātā neveido

ciklus ar jau iekļautajiem lokiem

Prima un Kraskala algoritmu salīdzinājums

V1

V2

V3

V4

V5 V6

V7

615

8

18 8

59

7

15

10

Nākošais

Iepriekšējais

Beigt

Pauze

Turpināt 11 V1

V2

V3

V4

V5 V6

V7

615

8

18 8

59

7

15

10

11

Prima algoritms Kraskala algoritms

QQ

T

Katrā iterācijā Kraskala algoritms minimālajam karkasam pievieno

loku ar minimālu svaru, kurš pievienošanas rezultātā neveido ciklus ar jau iekļautajiem lokiem,

neatkarīgi no loka atrašanās vietas grafā

Prima un Kraskala algoritmu salīdzinājums

V1

V2

V3

V4

V5 V6

V7

615

8

18 8

59

7

15

10

Nākošais

Iepriekšējais

Beigt

Pauze

Turpināt 11 V1

V2

V3

V4

V5 V6

V7

615

8

18 8

59

7

15

10

11

Prima algoritms Kraskala algoritms

QQ

T V1

Par sākuma virsotni Prima algoritmam uzskatīsim virsotni V1, to ievieto kopā

T

0. Iterācija

Prima un Kraskala algoritmu salīdzinājums

V1

V2

V3

V4

V5 V6

V7

615

8

18 8

59

7

15

10

Nākošais

Iepriekšējais

Beigt

Pauze

Turpināt 11 V1

V2

V3

V4

V5 V6

V7

615

8

18 8

59

7

15

10

11

Prima algoritms Kraskala algoritms

QQ

T V1

1. Iterācija

Prima algoritms grafa virsotnēm piešķir iezīmes

[V1, 5]

[V1, 6]

[V1, 11]

[0, ∞]

[0, ∞][0, ∞]

Prima un Kraskala algoritmu salīdzinājums

V1

V2

V3

V4

V5 V6

V7

615

8

18 8

59

7

15

10

Nākošais

Iepriekšējais

Beigt

Pauze

Turpināt 11 V1

V2

V3

V4

V5 V6

V7

615

8

18 8

59

7

15

10

11

Prima algoritms Kraskala algoritms

QQ

T V1

1. Iterācija

Abi algoritmi, atbilstoši to nosacījumiem,

atrod loku ar mazāko svaru

[V1, 5]

[V1, 6]

[V1, 11]

[0, ∞]

[0, ∞][0, ∞]

[0, ∞]

Prima un Kraskala algoritmu salīdzinājums

V1

V2

V3

V4

V5 V6

V7

615

8

18 8

59

7

15

10

Nākošais

Iepriekšējais

Beigt

Pauze

Turpināt 11 V1

V2

V3

V4

V5 V6

V7

615

8

18 8

59

7

15

10

11

Prima algoritms Kraskala algoritms

Q (V1, V5)Q (V1, V5)

T V1

1. Iterācija

Atrastos lokus pievieno kopām Q

[V1, 5]

[V1, 6]

[V1, 11]

[0, ∞]

[0, ∞]

[0, ∞]

Prima un Kraskala algoritmu salīdzinājums

V1

V2

V3

V4

V5 V6

V7

615

8

18 8

59

7

15

10

Nākošais

Iepriekšējais

Beigt

Pauze

Turpināt 11 V1

V2

V3

V4

V5 V6

V7

615

8

18 8

59

7

15

10

11

Prima algoritms Kraskala algoritms

Q (V1, V5)Q (V1, V5)

T V1, V5

1. Iterācija

Prima algoritms kopai T pievieno

virsotni V5[V1, 5]

[V1, 6]

[V1, 11]

[0, ∞]

[0, ∞]

[V5, 15]

Prima un Kraskala algoritmu salīdzinājums

V1

V2

V3

V4

V5 V6

V7

615

8

18 8

59

7

15

10

Nākošais

Iepriekšējais

Beigt

Pauze

Turpināt 11 V1

V2

V3

V4

V5 V6

V7

615

8

18 8

59

7

15

10

11

Prima algoritms Kraskala algoritms

Q (V1, V5)Q (V1, V5)

T V1, V5

2. Iterācija

Prima algoritms atjauno grafa

iezīmes

[V1, 6]

[V1, 11]

[0, ∞]

[V5, 9]

[V5, 15]

Prima un Kraskala algoritmu salīdzinājums

V1

V2

V3

V4

V5 V6

V7

615

8

18 8

59

7

15

10

Nākošais

Iepriekšējais

Beigt

Pauze

Turpināt 11 V1

V2

V3

V4

V5 V6

V7

615

8

18 8

59

7

15

10

11

Prima algoritms Kraskala algoritms

Q (V1, V5)Q (V1, V5)

T V1, V5

2. Iterācija[V1, 6]

[V1, 11]

[0, ∞]

[V5, 9]

Abi algoritmi, atbilstoši to nosacījumiem,

atrod loku ar mazāko svaru

[V5, 15]

Prima un Kraskala algoritmu salīdzinājums

V1

V2

V3

V4

V5 V6

V7

615

8

18 8

59

7

15

10

Nākošais

Iepriekšējais

Beigt

Pauze

Turpināt 11 V1

V2

V3

V4

V5 V6

V7

615

8

18 8

59

7

15

10

11

Prima algoritms Kraskala algoritms

Q (V1, V5), (V1, V2)Q (V1, V5), (V1, V2)

T V1, V5

2. Iterācija[V1, 6]

[V1, 11]

[0, ∞]

[V5, 9]

Atrastos lokus pievieno kopām Q

[V5, 15]

Prima un Kraskala algoritmu salīdzinājums

V1

V2

V3

V4

V5 V6

V7

615

8

18 8

59

7

15

10

Nākošais

Iepriekšējais

Beigt

Pauze

Turpināt 11 V1

V2

V3

V4

V5 V6

V7

615

8

18 8

59

7

15

10

11

Prima algoritms Kraskala algoritms

Q (V1, V5), (V1, V2)Q (V1, V5), (V1, V2)

T V1, V5, V2

2. Iterācija[V1, 6]

[V1, 11]

[0, ∞]

[V5, 9]

Prima algoritms pievieno virsotni V2

kopai T

[V5, 15]

Prima un Kraskala algoritmu salīdzinājums

V1

V2

V3

V4

V5 V6

V7

615

8

18 8

59

7

15

10

Nākošais

Iepriekšējais

Beigt

Pauze

Turpināt 11 V1

V2

V3

V4

V5 V6

V7

615

8

18 8

59

7

15

10

11

Prima algoritms Kraskala algoritms

Q (V1, V5), (V1, V2)Q (V1, V5), (V1, V2)

T V1, V5, V2

3. Iterācija

[V1, 11]

[V2,15]

[V5, 9]

Prima algoritms atjauno grafa

virsotņu iezīmes

[V5, 15]

Prima un Kraskala algoritmu salīdzinājums

V1

V2

V3

V4

V5 V6

V7

615

8

18 8

59

7

15

10

Nākošais

Iepriekšējais

Beigt

Pauze

Turpināt 11 V1

V2

V3

V4

V5 V6

V7

615

8

18 8

59

7

15

10

11

Prima algoritms Kraskala algoritms

Q (V1, V5), (V1, V2)Q (V1, V5), (V1, V2)

T V1, V5, V2

3. Iterācija

[V1, 11]

[V2,15]

[V5, 9]

Abi algoritmi, atbilstoši to nosacījumiem,

atrod loku ar mazāko svaru

[V5, 15]

Prima un Kraskala algoritmu salīdzinājums

V1

V2

V3

V4

V5 V6

V7

615

8

18 8

59

7

15

10

Nākošais

Iepriekšējais

Beigt

Pauze

Turpināt 11 V1

V2

V3

V4

V5 V6

V7

615

8

18 8

59

7

15

10

11

Prima algoritms Kraskala algoritms

Q (V1, V5), (V1, V2), (V7, V4)Q (V1, V5), (V1, V2), (V5, V7)

T V1, V5, V2

3. Iterācija

[V1, 11]

[V2,15]

[V5, 9]

Atrastos lokus pievieno kopām Q

[V5, 15]

Prima un Kraskala algoritmu salīdzinājums

V1

V2

V3

V4

V5 V6

V7

615

8

18 8

59

7

15

10

Nākošais

Iepriekšējais

Beigt

Pauze

Turpināt 11 V1

V2

V3

V4

V5 V6

V7

615

8

18 8

59

7

15

10

11

Prima algoritms Kraskala algoritms

Q (V1, V5), (V1, V2), (V7, V4)Q (V1, V5), (V1, V2), (V5, V7)

T V1, V5, V2, V7

3. Iterācija

[V1, 11]

[V2,15]

[V5, 9]

Prima algoritms pievieno virsotni V7 kopai T

[V5, 15]

Prima un Kraskala algoritmu salīdzinājums

V1

V2

V3

V4

V5 V6

V7

615

8

18 8

59

7

15

10

Nākošais

Iepriekšējais

Beigt

Pauze

Turpināt 11 V1

V2

V3

V4

V5 V6

V7

615

8

18 8

59

7

15

10

11

Prima algoritms Kraskala algoritms

Q (V1, V5), (V1, V2), (V7, V4)Q (V1, V5), (V1, V2), (V5, V7)

T V1, V5, V2, V7

4. Iterācija

[V7, 7]

[V2,15]

Prima algoritms atjauno grafa virsotņu iezīmes

[V5, 15]

Prima un Kraskala algoritmu salīdzinājums

V1

V2

V3

V4

V5 V6

V7

615

8

18 8

59

7

15

10

Nākošais

Iepriekšējais

Beigt

Pauze

Turpināt 11 V1

V2

V3

V4

V5 V6

V7

615

8

188

59

7

15

10

11

Prima algoritms Kraskala algoritms

Q (V1, V5), (V1, V2), (V7, V4)Q (V1, V5), (V1, V2), (V5, V7)

T V1, V5, V2, V7

4. Iterācija

[V7, 7]

[V2,15]

Abi algoritmi, atbilstoši to nosacījumiem,

atrod loku ar mazāko svaru

[V5, 15]

Prima un Kraskala algoritmu salīdzinājums

V1

V2

V3

V4

V5 V6

V7

615

8

18 8

59

7

15

10

Nākošais

Iepriekšējais

Beigt

Pauze

Turpināt 11 V1

V2

V3

V4

V5 V6

V7

615

8

188

59

7

15

10

11

Prima algoritms Kraskala algoritms

Q (V1, V5), (V1, V2), (V7, V4), (V4, V3)Q (V1, V5), (V1, V2), (V5, V7), (V7, V4)

T V1, V5, V2, V7, V4

4. Iterācija

[V7, 7]

[V2,15]

Prima algoritms pievieno virsotni

V4 kopai T

[V4, 10]

Prima un Kraskala algoritmu salīdzinājums

V1

V2

V3

V4

V5 V6

V7

615

8

18 8

59

7

15

10

Nākošais

Iepriekšējais

Beigt

Pauze

Turpināt 11 V1

V2

V3

V4

V5 V6

V7

615

8

188

59

7

15

10

11

Prima algoritms Kraskala algoritms

Q (V1, V5), (V1, V2), (V7, V4), (V4, V3)Q (V1, V5), (V1, V2), (V5, V7), (V7, V4)

T V1, V5, V2, V7, V4

5. Iterācija

[V4, 8]

Prima algoritms atjauno grafa

virsotņu iezīmes

[V4, 10]

Prima un Kraskala algoritmu salīdzinājums

V1

V2

V3

V4

V5 V6

V7

615

8

188

59

7

15

10

Nākošais

Iepriekšējais

Beigt

Pauze

Turpināt 11 V1

V2

V3

V4

V5 V6

V7

615

8

188

59

7

15

10

11

Prima algoritms Kraskala algoritms

Q (V1, V5), (V1, V2), (V7, V4), (V4, V3)Q (V1, V5), (V1, V2), (V5, V7), (V7, V4)

T V1, V5, V2, V7, V4

5. Iterācija

[V4, 8]

Abi algoritmi, atbilstoši to nosacījumiem,

atrod loku ar mazāko svaru

[V4, 10]

Prima un Kraskala algoritmu salīdzinājums

V1

V2

V3

V4

V5 V6

V7

615

8

188

59

7

15

10

Nākošais

Iepriekšējais

Beigt

Pauze

Turpināt 11 V1

V2

V3

V4

V5 V6

V7

615

8

188

59

7

15

10

11

Prima algoritms Kraskala algoritms

Q (V1, V5), (V1, V2), (V7, V4), (V4, V3), (V5, V7)

Q (V1, V5), (V1, V2), (V5, V7), (V7, V4), (V4, V3)

T V1, V5, V2, V7, V4

5. Iterācija

[V4, 8]

Atrastie loki tiek pievienoti kopām

Q

[V4, 10]

Prima un Kraskala algoritmu salīdzinājums

V1

V2

V3

V4

V5 V6

V7

615

8

188

59

7

15

10

Nākošais

Iepriekšējais

Beigt

Pauze

Turpināt 11 V1

V2

V3

V4

V5 V6

V7

615

8

188

59

7

15

10

11

Prima algoritms Kraskala algoritms

Q (V1, V5), (V1, V2), (V7, V4), (V4, V3), (V5, V7)

Q (V1, V5), (V1, V2), (V5, V7), (V7, V4), (V4, V3)

T V1, V5, V2, V7, V4, V3

5. Iterācija

[V4, 8]

Prima algoritms pievieno virsotni V3

kopai T

[V4, 10]

Prima un Kraskala algoritmu salīdzinājums

V1

V2

V3

V4

V5 V6

V7

615

8

188

59

7

15

10

Nākošais

Iepriekšējais

Beigt

Pauze

Turpināt 11 V1

V2

V3

V4

V5 V6

V7

615

8

188

59

7

15

10

11

Prima algoritms Kraskala algoritms

Q (V1, V5), (V1, V2), (V7, V4), (V4, V3), (V5, V7)

Q (V1, V5), (V1, V2), (V5, V7), (V7, V4), (V4, V3)

T V1, V5, V2, V7, V4, V3

6. Iterācija

Prima algoritms atjauno grafa

virsotņu iezīmes

[V4, 10]

Prima un Kraskala algoritmu salīdzinājums

V1

V2

V3

V4

V5 V6

V7

615

8

188

59

7

15

10

Nākošais

Iepriekšējais

Beigt

Pauze

Turpināt 11 V1

V2

V3

V4

V5 V6

V7

615

8

188

59

7

15

10

11

Prima algoritms Kraskala algoritms

Q (V1, V5), (V1, V2), (V7, V4), (V4, V3), (V5, V7)

Q (V1, V5), (V1, V2), (V5, V7), (V7, V4), (V4, V3)

T V1, V5, V2, V7, V4, V3

6. Iterācija

Abi algoritmi, atbilstoši to nosacījumiem,

atrod loku ar mazāko svaru

[V4, 10]

Prima un Kraskala algoritmu salīdzinājums

V1

V2

V3

V4

V5 V6

V7

615

8

188

59

7

15

10

Nākošais

Iepriekšējais

Beigt

Pauze

Turpināt 11 V1

V2

V3

V4

V5 V6

V7

615

8

188

59

7

15

10

11

Prima algoritms Kraskala algoritms

Q (V1, V5), (V1, V2), (V7, V4), (V4, V3), (V5, V7), (V4, V6)

Q (V1, V5), (V1, V2), (V5, V7), (V7, V4), (V4, V3), (V4, V6)

T V1, V5, V2, V7, V4, V3

6. Iterācija

Atrastie loki tiek pievienoti kopām

Q

[V4, 10]

Prima un Kraskala algoritmu salīdzinājums

V1

V2

V3

V4

V5 V6

V7

615

8

188

59

7

15

10

Nākošais

Iepriekšējais

Beigt

Pauze

Turpināt 11 V1

V2

V3

V4

V5 V6

V7

615

8

188

59

7

15

10

11

Prima algoritms Kraskala algoritms

Q (V1, V5), (V1, V2), (V7, V4), (V4, V3), (V5, V7), (V4, V6)

Q (V1, V5), (V1, V2), (V5, V7), (V7, V4), (V4, V3), (V4, V6)

T V1, V5, V2, V7, V4, V3, V6

6. Iterācija

Prima algoritms pievieno virsotni V6

kopai T

Prima un Kraskala algoritmu salīdzinājums

V1

V2

V3

V4

V5 V6

V7

615

8

188

59

7

15

10

Nākošais

Iepriekšējais

Beigt

Pauze

Turpināt 11 V1

V2

V3

V4

V5 V6

V7

615

8

188

59

7

15

10

11

Prima algoritms Kraskala algoritms

Q (V1, V5), (V1, V2), (V7, V4), (V4, V3), (V5, V7), (V4, V6)

Q (V1, V5), (V1, V2), (V5, V7), (V7, V4), (V4, V3), (V4, V6)

T V1, V5, V2, V7, V4, V3, V6

6. Iterācija

Abi algoritmi darbu beidz, jo kopās Q katrā

ir n-1 loki, kur n- virsotņu skaits grafā

Prima un Kraskala algoritmu salīdzinājums

V1

V2

V3

V4

V5 V6

V7

615

8

188

59

7

15

10

Nākošais

Iepriekšējais

Beigt

Pauze

Turpināt 11 V1

V2

V3

V4

V5 V6

V7

615

8

188

59

7

15

10

11

Prima algoritms Kraskala algoritms

Q (V1, V5), (V1, V2), (V7, V4), (V4, V3), (V5, V7), (V4, V6)

Q (V1, V5), (V1, V2), (V5, V7), (V7, V4), (V4, V3), (V4, V6)

T V1, V5, V2, V7, V4, V3, V6

6. Iterācija

Kā redzams, abi algoritmi atraduši vienādus

minimālos karkasus turklāt vienādā skaitā

iterāciju, lai gan loki tika pievienoti atšķirīgā secībā

Prima un Kraskala algoritmu salīdzinājums

V1

V2

V3

V4

V5 V6

V7

615

8

188

59

7

15

10

Nākošais

Iepriekšējais

Beigt

Pauze

Turpināt 11 V1

V2

V3

V4

V5 V6

V7

615

8

188

59

7

15

10

11

Prima algoritms Kraskala algoritms

Q (V1, V5), (V1, V2), (V7, V4), (V4, V3), (V5, V7), (V4, V6)

Q (V1, V5), (V1, V2), (V5, V7), (V7, V4), (V4, V3), (V4, V6)

T V1, V5, V2, V7, V4, V3, V6

6. Iterācija

Abos gadījumos iegūtā minimālā karkasa kopējais svars ir:

6+5+9+7+8+10=45

Recommended