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