330 likes | 527 Views
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.
E N D
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 Š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 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 Abi algoritmi meklē grafa minimālo karkasu un ir vienādi efektīvi
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 Algoritmu pielietošanas gaitā tiek izmantota kopa Q- tā satur minimālā karkasa lokus 15 15 V6 V6 V5 V5
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 Prima algoritms lieto vēl vienu kopu- T, kura satur virsotnes, kas pieder minimālajam karkasam 15 15 V6 V6 V5 V5
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 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 15 15 V6 V6 V5 V5 Prima algoritms Kraskala algoritms
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 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ā 15 15 V6 V6 V5 V5 Prima algoritms Kraskala algoritms
Prima un Kraskala algoritmu salīdzinājums Nākošais 0. Iterācija 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 Par sākuma virsotni Prima algoritmam uzskatīsim virsotni V1, to ievieto kopā T 15 15 V6 V6 V5 V5 Prima algoritms Kraskala algoritms
Prima un Kraskala algoritmu salīdzinājums Nākošais 1. Iterācija Iepriekšējais [V1, 6] V2 V2 15 15 Pauze 6 6 V3 V3 [0, ∞] 18 18 8 Turpināt 8 11 V1 11 V1 V4 V4 [V1, 11] Beigt 7 7 10 10 8 8 5 [0, ∞] 5 V7 V7 9 9 [0, ∞] 15 15 V6 V6 V5 V5 [V1, 5] Prima algoritms grafa virsotnēm piešķir iezīmes Prima algoritms Kraskala algoritms
Prima un Kraskala algoritmu salīdzinājums Nākošais 1. Iterācija Iepriekšējais [V1, 6] V2 V2 15 15 Pauze 6 6 V3 V3 [0, ∞] 18 18 8 Turpināt 8 11 V1 11 V1 V4 V4 [V1, 11] Beigt 7 7 10 10 8 8 5 [0, ∞] 5 V7 V7 9 9 [0, ∞] 15 15 V6 V6 V5 V5 [V1, 5] Abi algoritmi, atbilstoši to nosacījumiem, atrod loku ar mazāko svaru Prima algoritms Kraskala algoritms
Prima un Kraskala algoritmu salīdzinājums Nākošais 1. Iterācija Iepriekšējais [V1, 6] V2 V2 15 15 Pauze 6 6 V3 V3 [0, ∞] 18 18 8 Turpināt 8 11 V1 11 V1 V4 V4 [V1, 11] Beigt 7 7 10 10 8 8 5 [0, ∞] 5 V7 V7 9 9 [0, ∞] 15 15 V6 V6 V5 V5 Atrastos lokus pievieno kopām Q [V1, 5] Prima algoritms Kraskala algoritms
Prima un Kraskala algoritmu salīdzinājums Nākošais 1. Iterācija Iepriekšējais [V1, 6] V2 V2 15 15 Pauze 6 6 V3 V3 [0, ∞] 18 18 8 Turpināt 8 11 V1 11 V1 V4 V4 [V1, 11] Beigt 7 7 10 10 8 8 5 [0, ∞] 5 V7 V7 9 9 [0, ∞] Prima algoritms kopai T pievieno virsotni V5 15 15 V6 V6 V5 V5 [V1, 5] Prima algoritms Kraskala algoritms
Prima un Kraskala algoritmu salīdzinājums Nākošais 2. Iterācija Iepriekšējais [V1, 6] V2 V2 15 15 Pauze 6 6 V3 V3 [0, ∞] 18 18 8 Turpināt 8 11 V1 11 V1 V4 V4 [V1, 11] Beigt 7 7 10 10 8 8 5 [V5, 9] 5 V7 V7 9 9 [V5, 15] 15 15 V6 V6 V5 V5 Prima algoritms atjauno grafa iezīmes Prima algoritms Kraskala algoritms
Prima un Kraskala algoritmu salīdzinājums Nākošais 2. Iterācija Iepriekšējais [V1, 6] V2 V2 15 15 Pauze 6 6 V3 V3 [0, ∞] 18 18 8 Turpināt 8 11 V1 11 V1 V4 V4 [V1, 11] Beigt 7 7 10 10 8 8 5 [V5, 9] 5 V7 V7 9 9 [V5, 15] 15 15 V6 V6 V5 V5 Abi algoritmi, atbilstoši to nosacījumiem, atrod loku ar mazāko svaru Prima algoritms Kraskala algoritms
Prima un Kraskala algoritmu salīdzinājums Nākošais 2. Iterācija Iepriekšējais [V1, 6] V2 V2 15 15 Pauze 6 6 V3 V3 [0, ∞] 18 18 8 Turpināt 8 11 V1 11 V1 V4 V4 [V1, 11] Beigt 7 7 10 10 8 8 5 [V5, 9] 5 V7 V7 9 9 [V5, 15] 15 15 V6 V6 V5 V5 Atrastos lokus pievieno kopām Q Prima algoritms Kraskala algoritms
Prima un Kraskala algoritmu salīdzinājums Nākošais 2. Iterācija Iepriekšējais [V1, 6] V2 V2 15 15 Pauze 6 6 V3 V3 [0, ∞] 18 18 8 Turpināt 8 11 V1 11 V1 V4 V4 [V1, 11] Beigt 7 7 10 10 8 8 5 [V5, 9] 5 V7 V7 9 9 [V5, 15] 15 15 V6 V6 V5 V5 Prima algoritms pievieno virsotni V2 kopai T Prima algoritms Kraskala algoritms
Prima un Kraskala algoritmu salīdzinājums Nākošais 3. Iterācija Iepriekšējais V2 V2 15 15 Pauze 6 6 V3 V3 [V2,15] 18 18 8 Turpināt 8 11 V1 11 V1 V4 V4 [V1, 11] Beigt 7 7 10 10 8 8 5 [V5, 9] 5 V7 V7 9 9 [V5, 15] 15 15 V6 V6 V5 V5 Prima algoritms atjauno grafa virsotņu iezīmes Prima algoritms Kraskala algoritms
Prima un Kraskala algoritmu salīdzinājums Nākošais 3. Iterācija Iepriekšējais V2 V2 15 15 Pauze 6 6 V3 V3 [V2,15] 18 18 8 Turpināt 8 11 V1 11 V1 V4 V4 [V1, 11] Beigt 7 7 10 10 8 8 5 [V5, 9] 5 V7 V7 9 9 [V5, 15] 15 15 V6 V6 V5 V5 Abi algoritmi, atbilstoši to nosacījumiem, atrod loku ar mazāko svaru Prima algoritms Kraskala algoritms
Prima un Kraskala algoritmu salīdzinājums Nākošais 3. Iterācija Iepriekšējais V2 V2 15 15 Pauze 6 6 V3 V3 [V2,15] 18 18 8 Turpināt 8 11 V1 11 V1 V4 V4 [V1, 11] Beigt 7 7 10 10 8 8 5 [V5, 9] 5 V7 V7 9 9 [V5, 15] 15 15 V6 V6 V5 V5 Atrastos lokus pievieno kopām Q Prima algoritms Kraskala algoritms
Prima un Kraskala algoritmu salīdzinājums Nākošais 3. Iterācija Iepriekšējais V2 V2 15 15 Pauze 6 6 V3 V3 [V2,15] 18 18 8 Turpināt 8 11 V1 11 V1 V4 V4 [V1, 11] Beigt 7 7 10 10 8 8 5 [V5, 9] 5 V7 V7 9 9 [V5, 15] 15 15 V6 V6 V5 V5 Prima algoritms pievieno virsotni V7 kopai T Prima algoritms Kraskala algoritms
Prima un Kraskala algoritmu salīdzinājums Nākošais 4. Iterācija Iepriekšējais V2 V2 15 15 Pauze 6 6 V3 V3 [V2,15] 18 18 8 Turpināt 8 11 V1 11 V1 V4 V4 [V7, 7] Beigt 7 7 10 10 8 8 5 5 V7 V7 9 9 [V5, 15] 15 15 V6 V6 V5 V5 Prima algoritms atjauno grafa virsotņu iezīmes Prima algoritms Kraskala algoritms
Prima un Kraskala algoritmu salīdzinājums Nākošais 4. Iterācija Iepriekšējais V2 V2 15 15 Pauze 6 6 V3 V3 [V2,15] 18 18 Turpināt 8 8 11 V1 11 V1 V4 V4 [V7, 7] Beigt 7 7 10 10 8 8 5 5 V7 V7 9 9 [V5, 15] 15 15 V6 V6 V5 V5 Abi algoritmi, atbilstoši to nosacījumiem, atrod loku ar mazāko svaru Prima algoritms Kraskala algoritms
Prima un Kraskala algoritmu salīdzinājums Nākošais 4. Iterācija Iepriekšējais V2 V2 15 15 Pauze 6 6 V3 V3 [V2,15] 18 18 Turpināt 8 8 11 V1 11 V1 V4 V4 [V7, 7] Beigt 7 7 10 10 8 8 5 5 V7 V7 9 9 [V5, 15] 15 15 V6 V6 V5 V5 Prima algoritms pievieno virsotni V4 kopai T Prima algoritms Kraskala algoritms
Prima un Kraskala algoritmu salīdzinājums Nākošais 5. Iterācija Iepriekšējais V2 V2 15 15 Pauze 6 6 V3 V3 [V4, 8] 18 18 Turpināt 8 8 11 V1 11 V1 V4 V4 Beigt 7 7 10 10 8 8 5 5 V7 V7 9 9 [V4, 10] 15 15 V6 V6 V5 V5 Prima algoritms atjauno grafa virsotņu iezīmes Prima algoritms Kraskala algoritms
Prima un Kraskala algoritmu salīdzinājums Nākošais 5. Iterācija Iepriekšējais V2 V2 15 15 Pauze 6 6 V3 V3 [V4, 8] 18 18 Turpināt 8 8 11 V1 11 V1 V4 V4 Beigt 7 7 10 10 8 8 5 5 V7 V7 9 9 [V4, 10] 15 15 V6 V6 V5 V5 Abi algoritmi, atbilstoši to nosacījumiem, atrod loku ar mazāko svaru Prima algoritms Kraskala algoritms
Prima un Kraskala algoritmu salīdzinājums Nākošais 5. Iterācija Iepriekšējais V2 V2 15 15 Pauze 6 6 V3 V3 [V4, 8] 18 18 Turpināt 8 8 11 V1 11 V1 V4 V4 Beigt 7 7 10 10 8 8 5 5 V7 V7 9 9 [V4, 10] 15 15 V6 V6 V5 V5 Atrastie loki tiek pievienoti kopām Q Prima algoritms Kraskala algoritms
Prima un Kraskala algoritmu salīdzinājums Nākošais 5. Iterācija Iepriekšējais V2 V2 15 15 Pauze 6 6 V3 V3 [V4, 8] 18 18 Turpināt 8 8 11 V1 11 V1 V4 V4 Beigt 7 7 10 10 8 8 5 5 V7 V7 9 9 [V4, 10] 15 15 V6 V6 V5 V5 Prima algoritms pievieno virsotni V3 kopai T Prima algoritms Kraskala algoritms
Prima un Kraskala algoritmu salīdzinājums Nākošais 6. Iterācija Iepriekšējais V2 V2 15 15 Pauze 6 6 V3 V3 18 18 Turpināt 8 8 11 V1 11 V1 V4 V4 Beigt 7 7 10 10 8 8 5 5 V7 V7 9 9 [V4, 10] 15 15 V6 V6 V5 V5 Prima algoritms atjauno grafa virsotņu iezīmes Prima algoritms Kraskala algoritms
Prima un Kraskala algoritmu salīdzinājums Nākošais 6. Iterācija Iepriekšējais V2 V2 15 15 Pauze 6 6 V3 V3 18 18 Turpināt 8 8 11 V1 11 V1 V4 V4 Beigt 7 7 10 10 8 8 5 5 V7 V7 9 9 [V4, 10] 15 15 V6 V6 V5 V5 Abi algoritmi, atbilstoši to nosacījumiem, atrod loku ar mazāko svaru Prima algoritms Kraskala algoritms
Prima un Kraskala algoritmu salīdzinājums Nākošais 6. Iterācija Iepriekšējais V2 V2 15 15 Pauze 6 6 V3 V3 18 18 Turpināt 8 8 11 V1 11 V1 V4 V4 Beigt 7 7 10 10 8 8 5 5 V7 V7 9 9 [V4, 10] 15 15 V6 V6 V5 V5 Atrastie loki tiek pievienoti kopām Q Prima algoritms Kraskala algoritms
Prima un Kraskala algoritmu salīdzinājums Nākošais 6. Iterācija Iepriekšējais V2 V2 15 15 Pauze 6 6 V3 V3 18 18 Turpināt 8 8 11 V1 11 V1 V4 V4 Beigt 7 7 10 10 8 8 5 5 V7 V7 9 9 [V4, 10] 15 15 V6 V6 V5 V5 Prima algoritms pievieno virsotni V6 kopai T Prima algoritms Kraskala algoritms
Prima un Kraskala algoritmu salīdzinājums Nākošais 6. Iterācija Iepriekšējais V2 V2 15 15 Pauze 6 6 V3 V3 18 18 Turpināt 8 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 Abi algoritmi darbu beidz, jo kopās Q katrā ir n-1 loki, kur n- virsotņu skaits grafā Prima algoritms Kraskala algoritms
Prima un Kraskala algoritmu salīdzinājums Nākošais 6. Iterācija Iepriekšējais V2 V2 15 15 Pauze 6 6 V3 V3 18 18 Turpināt 8 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 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 algoritms Kraskala algoritms
Prima un Kraskala algoritmu salīdzinājums Nākošais 6. Iterācija Iepriekšējais V2 V2 15 15 Pauze 6 6 V3 V3 18 18 Turpināt 8 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 Abos gadījumos iegūtā minimālā karkasa kopējais svars ir: 6+5+9+7+8+10=45 Prima algoritms Kraskala algoritms