BAB 2
LANDASAN TEORI
Bab ini akan menjelaskan masalah-masalah teoritis yang berkaitan dalam pembuatan program menentukan Minimum Spanning Tree menggunakan algoritma Kruskal
dengan bahasa pemrograman C
2.1 Pengertian Algoritma
Dalam matematika dan komputasi, algoritma atau algoritme merupakan kumpulan perintah untuk menyelesaikan suatu masalah. Perintah-perintah ini dapat
diterjemahkan secara bertahap dari awal hingga akhir. Masalah tersebut dapat berupa apa saja, dengan catatan untuk setiap masalah, ada kriteria kondisi awal yang harus
dipenuhi sebelum menjalankan algoritma. Algoritma akan dapat selalu berakhir untuk semua kondisi awal yang memenuhi kriteria, hal ini berbeda dengan heuristik.
Algoritma sering mempunyai langkah pengulangan iterasi atau memerlukan keputusan sampai tugasnya selesai.
Universitas Sumatera Utara
2.2 Sejarah Graf
Menurut catatan sejarah, masalah jembatan Konigsberg adalah masalah yang pertama kali mengggunakan graf tahun 1736. Di kota Konigsberg sebelah timur
negara bagian Prussia, Jerman, sekarang bernama kota Kaliningrad, terdapat sungai Pregal yang mengalir mengitari pulau Kneiphof lalu bercabang menjadi dua buah
anak sungai. Ada tujuh buah jembatan yang menghubungkan daratan yang dibelah oleh sungai tersebut. Masalahnya adalah apakah mungkin melalui ketujuh buah
jembatan itu masing-masing tepat satu kali, dan kembali lagi ke tempat semula? Tahun 1736, seorang matematikawan Swiss, L.Euler, adalah orang pertama yang
berhasil menemukan jawaban masalah itu dengan pembuktian yang sedrhana. Ia memodelkan masalah ini ke dalam graf. Daratan titik-titik yang dihubungkan oleh
jembatan dinyatakannya sebagai titiknoktah – yang disebut simpulvertex- dan
jembatan dinyatakan sebagai garis yang disebutedge. Karena tidak semua simpul berderajat genap, maka tidak mungkin dilakukan perjalanan beberapa sirkuityang
dinamakan sirkuit Euler pada graf tersebut.
2.3 Teori Graf
Teori graf merupakan pokok bahasan yang sudah tua usianya namun memiliki banyak terapan sampai saat ini. Graf digunakan untuk merepresentasikan objek-
objek diskrit dan hubungan antara objek-objek tersebut. Representasi visual dari graf
Universitas Sumatera Utara
adalah dengan menyatakan objek dinyatakan sebagai noktah, bulatan, atau titik sedangkan hubungan antara objek dinyatakan denagan baris.
Secara matematis graf didefinisikan seperti berikut ini graf G didefinisikan sebagai pasangan himpunan V, E, ditulis dengan G=V, E, yang dalam hal ini V
adalah himpunan tidak kosong dari simpul-simpul vertices atau node dan E adalah himpunan sisi edges atau arcs yang menghubungkan sepasang simpul. Simpul pada
graf dapat dinomori dengan huruf seperti a, b, c, …, v, w, …, dengan bilangan asli 1,
2, 3, .., atau gabungan keduanya. Sedangkan sisi yang menghubungkan simpul u dengan simpul v dinyatakan dengan pasangan u, v atau dinyatakan dengan lambang
e
1,
e
2
, … .Dengan kata lain, jika e adalah sisi yang menghubungkan simpul u dengan simpul v, maka e dapat ditulis sebagai berikut : e=v , v
2.3.1 Graf Sederhana Simple Graph
Graf yang tidak mengandung gelang maupun sisi-ganda dinamakan graf sederhana. Pada graf sederhana, sisi adalah pasangan tak-terurut unordered pairs. Jadi
menuliskan sisi u, v sama saja dengan v, u. Kita dapat juga mendefinisikan graf sederhana G = V, E terdiri dari himpunan tidak kosong simpul-simpul dari E adalah
himpunan pasangan tak-terurutyang berbeda yang disebut sisi.
Universitas Sumatera Utara
2.3.2 Graf Tak-Berarah Undirected Graph
Graf tak-berarah yaitu graf yang sisinya tidak mempunyai orientasi arah. Pada graf tak-berarah, urutan pasangan simpul yang dihubungkan oleh sisi tidak diperhatiakan.
Jadi, u, v = v, u adalah sisi yang sama.
2.3.3 Graf Berbobot
Bobot pada setiap sisi dapat berbeda-beda bergantung pada masalah yang dimodelkan dengan graf. Bobot dapt menyatakan jarak antara dua buah kota, biaya
perjalanan antara dua buah kota, waktu tempuh message dari sebauh simpul komunikasi ke simpul komunikasi lain dalam jaringan komputer, ongkos produksi,
dan sebagainnya.
Istilah lain yang sering dikaitkan dengan graf berbobot adalah graf berlabel. Namun graf berlabel sesungguhnya lebih luas lagi definisinya. Label tidak hanya
diberikan pada sisi, tetapi juga pada simpul. Sisi diberi label berupa bilangan tak negatif, sedangkan simpul diberi label berupa data lain. Misalnya pada graf yang
memodelkan kota-kota, simpul diberi nama kota-kota, sedangkan label pada sisi menyatakan jarak antara kota-kota.
Universitas Sumatera Utara
2.4 Pohon