SD 12 Graf
SD 12 Graf
Struktur Data
nur.zahrati@polibatam.ac.id
Definisi Graf
Jenis-jenis Graf
Overview Istilah pada Graf
Representasi Graf
Struktur non linear
Kumpulan dari simpul dan busur
digunakan untuk merepresentasikan objek-objek diskrit dan
Definisi Graf hubungan antara objek-objek tersebut
Rembang
Kudus
Brebes Demak
Tegal Pemalang Kendal
Semarang
Pekalongan
Temanggung Salatiga
Purwodadi
Blora
Wonosobo
Purbalingga
Purwokerto
Sragen
Banjarnegara Boyolali Solo
Kroya Sukoharjo
Cilacap Kebumen Magelang
Klaten
Purworejo
Wonogiri
Undirected graph
Karakteristik:
Urutan simpul tidak diperhatikan
1-2 sama dengan 2-1
Graf Tak
Berarah
Directed graph
Karakteristik:
Urutan simpul diperhatikan
1-2 tidak sama dengan 2-1
Graf Berarah
Setiap busur memiliki sebuah nilai yang menyatakan hubungan
antara dua buah simpul
Graf Berbobot
Graf Graf yang mempunyai busur (hubungan antara dua buah simpul)
paling banyak satu
Sederhana Bisa berarah ataupun tak berarah
(Simple Graph) Contoh-contoh graf sebelumnya adalah graf sederhana
Complex graph, multi graph
Paling sedikit dua buah simpul yang mempunyai hubungan lebih dari
satu, atau ada busur yang membentuk loop
Graf Tak
Sederhana
Bersisian (Incidency)
Apabila e merupakan busur dengan simpul-simpulnya adalah v
dan w, e disebut bersisian (incident) dengan v dan w
Istilah pada
Graf
e w
v
Ketetanggaan (Adjacent)
Pada graf tak berarah: dua buah simpul dikatakan bertetangga bila
keduanya terhubung langsung.
e w
Istilah pada
Graf
v
Pada graf berarah: sebuah simpul v disebut bertetangga
(adjacent) dengan simpul w apabila ada busur dari w ke v
e w
v
Derajat (Degree)
Derajat suatu simpul adalah jumlah busur yang bersisian dengan
simpul tersebut.
Istilah pada Notasi: d(v)
Graf Contoh
d(10) = 1
d(4) = ?
Pada graf berarah,
din(v) = derajat-masuk (in-degree)
= jumlah busur yang masuk ke simpul v
Istilah pada
Graf dout(v) = derajat-keluar (out-degree)
= jumlah busur yang keluar dari simpul v
Istilah pada
Graf
Siklus (Cycle) atau Sirkuit (Circuit)
Lintasan yang berawal dan berakhir pada simpul yang sama
disebut sirkuit atau siklus
Istilah pada
Graf
Matrix:
Adjacency Matrix
Inverse Adjacency Matrix
Incidence Matrix
Representasi Vector Matrix
Graph Linked List
Adjacency List
Inverse Adjacency List
Untuk N simpul, Adjacency matrix-nya adalah array A berukuran
NxN sedemikian hingga
A[i][j] = 1 jika ada busur E(i,j)
= 0 jika tidak
Adjacency Untuk graf tak berarah, A[i][j] = A[j][i]
Matrix
Untuk graf berbobot,
A[i][j] = bobot busur, jika ada busur E(i,j)
= konstanta yang menyatakan tidak ada busur (misal: nilai
yang sangat besar atau sangat kecil)
Adjacency Untuk graf tak berarah
Matrix
int A[6][6] = {0, 0, 1, 0, 0, 0,
0, 0, 0, 1, 0, 0,
1, 0, 0, 1, 1, 1,
0, 1, 1, 0, 1, 0,
0, 0, 1, 1, 0, 0,
0, 0, 1, 0, 0, 0};
Adjacency Untuk graf berarah
Matrix
int A[6][6] = {0, 0, 1, 0, 0, 0,
0, 0, 0, 1, 0, 0,
0, 0, 0, 1, 0, 1,
0, 1, 0, 0, 1, 0,
0, 0, 1, 0, 0, 0,
0, 0, 0, 0, 0, 0};
Representasi dengan adjacency matrix membutuhkan memory
yang sangat besar
Jika graf lengkap atau hampir lengkap (memiliki banyak busur di
antara simpulnya), maka adjacency matrix bagus untuk digunakan
Tetapi jika busur sangat sedikit dibandingkan jumlah simpul,
Adjacency List representasi ini memboroskan space
Adjacency list dapat menangani hal ini dengan optimal
Setiap vertex memiliki linked list yang berisi simpul yang
terhubung dengannya
Graf tak berarah
Adjacency List
Untuk graf berarah
Adjacency List
Apa saja yang sudah Anda pelajari hari ini?
25