Algoritma Prim: Perbedaan antara revisi
Konten dihapus Konten ditambahkan
k robot Adding: sr:Примов алгоритам |
Hadithfajri (bicara | kontrib) Tidak ada ringkasan suntingan |
||
(23 revisi perantara oleh 18 pengguna tidak ditampilkan) | |||
Baris 1:
'''
Langkah-langkahnya adalah sebagai berikut:
Baris 8:
** hubungkan cabang tersebut ke pohon
Dengan struktur data [[binary heap]] sederhana,
== Contoh ==
{| border=1 cellspacing=0 cellpadding=5
|[[
|Ini adalah graf berbobot awal. Graf ini bukan pohon karena ada circuit. Nama yang lebih tepat untuk diagram ini adalah graf atau jaringan. Angka-angka dekat garis penghubung adalah bobotnya. Belum ada garis yang ditandai, dan node '''D''' dipilih secara sembarang sebagai titik awal.
|-
|[[
|Node kedua yang dipilih adalah yang terdekat ke '''D''': '''A''' jauhnya 5, '''B''' 9, '''E''' 15, dan '''F''' 6. Dari keempatnya, 5 adalah yang terkecil, jadi kita tandai node '''A''' dan cabang '''DA'''.
|-
|[[
|Node berikutnya yang dipilih adalah yang terdekat dari '''D''' ''atau'' '''A'''. '''B''' jauhnya 9 dari '''D''' dan 7 dari '''A''', '''E''' jauhnya 15, dan '''F''' 6. 6 adalah yang terkecil, jadi kita tandai node '''F''' dan cabang '''DF'''.
|-
|[[
|
|-
|[[
|Dalam hal ini, kita dapat memilih antara '''C''', '''E''', dan '''G'''. '''C''' jauhnya 8 dari '''B''', '''E''' 7 dari '''B''', dan '''G''' 11 dari '''F'''. '''E''' yang terdekat, jadi kita tandai node '''E''' dan cabang '''EB'''. Dua cabang lain ditandai merah, karena kedua node yang terhubung telah digunakan.
|-
|[[
|Di sini, node yang tersedia adalah '''C''' dan '''G'''. '''C''' jauhnya 5 dari '''E''', dan '''G''' 9 dari '''E'''. '''C''' dipilih, jadi ditandai bersama dengan cabang '''EC'''. Cabang '''BC''' juga ditandai merah.
|-
|[[
|Node '''G''' adalah satu-satunya yang tersisa. Jauhnya 11 dari '''F''', dan 9 dari '''E'''. '''E''' lebih dekat, jadi kita tandai cabang '''EG'''. Sekarang semua node telah terhubung, dan pohon rentang minimum ditunjukkan dengan warna hijau, bobotnya 39.
|}
== Bukti ==
Misalkan ''P'' adalah sebuah graf terhubung berbobot. Pada setiap iterasi
:''w''(''f'') ≥ ''w''(''e'').
Baris 41:
Misalkan ''Y<sub>2</sub>'' adalah graf yang diperoleh dengan menghapus ''f'' dan menambahkan ''e'' dari ''Y<sub>1</sub>''. Dapat ditunjukkan bahwa ''Y<sub>2</sub>'' terhubung, memiliki jumlah cabang yang sama dengan ''Y<sub>1</sub>'', dan bobotnya tidak lebih besar daripada ''Y<sub>1</sub>'', karena itu ia adalah pohon rentang minimum dari ''P'' dan ia mengandung ''e'' dan semua cabang-cabang yang ditambahkan sebelumnya selama konstruksi ''V''. Ulangi langkah-langkah di atas dan kita akan mendapatkan sebuah pohon rentang minimum dari ''P'' yang identis dengan ''Y''. Hal ini menunjukkan bahwa ''Y'' adalah pohon rentang minimum.
== Rujukan ==
* R. C. Prim: ''Shortest connection networks and some generalisations''. In: ''Bell System Technical Journal'', 36 (1957), pp.
* D. Cherition and [[Robert Tarjan|R. E. Tarjan]]: ''Finding minimum spanning trees''. In: ''SIAM Journal of Computing'', 5 (Dec. 1976), pp.
* [[Thomas H. Cormen]], [[Charles E. Leiserson]], [[Ronald L. Rivest]], and [[Clifford Stein]]. ''[[Introduction to Algorithms]]'', Second Edition. MIT Press and McGraw-Hill, 2001. ISBN
== Pranala luar ==
{{commons|Category:Prim's Algorithm|Prim's Algorithm}}
* [http://www-b2.is.tokushima-u.ac.jp/~ikeda/suuri/dijkstra/Prim.shtml Minimum Spanning Tree Problem: Prim's Algorithm] {{Webarchive|url=https://web.archive.org/web/20070505070612/http://www-b2.is.tokushima-u.ac.jp/~ikeda/suuri/dijkstra/Prim.shtml |date=2007-05-05 }}
* [http://www.cut-the-knot.org/Curriculum/Games/Mazes.shtml Create and Solve Mazes by Kruskal's and Prim's algorithms] at [[cut-the-knot]]
* [http://students.ceid.upatras.gr/~papagel/project/prim.htm Animated example of Prim's algorithm]
* [http://www.mincel.com/java/prim.html Prim's Algorithm (Java Applet)] {{Webarchive|url=https://web.archive.org/web/20060712152157/http://www.mincel.com/java/prim.html |date=2006-07-12 }}
* [http://www.algorithm-code.com/wiki/Prim%27s_algorithm Prim's algorithm code]
{{Authority control}}
[[Kategori:Teori graf]]
|