Objektif :
1. Mahasiswa Memahami Konsep Graf Berarah
2. Mahasiswa Memahami Derajat
3. Mahasiswa Memahami Lintasan
4. Mahasiswa Memahami Konektivitas
5. Mahasiswa Memahami Matriks Ketetanggan
6. Mahasiswa Memahami Matriks bersisian
Kita akan menulis G(V, E) saat kita ingin menekankan kedua bagian G, kita juga menulis V(G) dan E(G)
untuk menotasikan, berturut-turut, himpunan vertex dan himpunan sisi(edge) suatu graf G .
Misalkan e = (u, v) adalah suatu sisi terarah dalam suatu digraf G. Maka istilah ini digunakan:
e dimulai di u dan berakhir di v
u adalah asal atau titik asal dari e, dan v adalah tujuan atau titik terminal dari e
v adalah successor (penerus) dari u
u bersebelahan dengan v, dan v bersebelahan dari u
1
Perhatikan graf terarah G pada gambar dibawah ini. graf ini terdiri dari empat verteks, A, B, C, D,
yang artinya V(G) = {A, B, C, D} dan tujuh sisi berikut:
E(G) = { , } = {(A, D), (B, A), (D, B), (B, C), (D, C), (B, B)}
Sisi dan disebut sejajar (pararel) karena keduanya dimulai di B dan berakhir di A. Sisi merupakan
loop karena dimulai dan berakhir di B
5.2. Derajat
Misalkan G adalah suatu graf terarah. Outdrgree (pranala Iuar/derajat ke luar) dari suatu verteks
dari G. yang dituliskan outdeg( ), adalah jumiah sisi yang dimulai di . dan indrgree (pranala dalam/derajat
ke dalam) dari . yang dituliskan indeg( ), adalah jumlah sisi-sisi yang berakhir di . Karena setiap sisi
dimulai dan berakhir di suatu verteks kita dapat segera memperoleh tcorema berikut.
Jumlah outdegree dari verteks-verteks suatu digraf G adalah sama dengan jumiah indegree dari
verteks-verteks tersebut, yang adalah sama dengan jumlah sisi-sisi dalam G.
Suatu verteks dengan indegree nol disebut source (sumber) dan suatu verteks dengan
outdegree nol disebut sink (muara)
Sebagaimana disuga, jumlah outdegree-nya sama dengan jumlah indegree-nya, yang adalah sama dengan
jumlah 7 sisi-sisinya. Vertex C adalah suatu sink karena tidak ada sisi yang dimulai di C. graf ini tidak
memiliki source.
5.3. Lintasan
Misalkan G sebagai suatu graf terarah. Konsep-konsep tentang lintasan, lintasan sederhana. trail
dan siklus diambil dari graf-graf tak terarah dan diterapkan pada graf-graf terarah dengan pengecualian arah
sisi-sisinya harus sesusi dengan arah lintasannya.
2
Tepatnya:
Suatu lintasan (terarah) P dalam G adalah suatu barisan bergantian antara ventcks-verteks dan
sisi-isi terarah misainya,
o P=( , , , , , …, , )
Sedemikian sehingga sisi dimulai di dan berkhir di , jika tidak menimbulkan kerancuan, kita
menuliskan P dengan menggunakan barisan vertex-verteksnya atau barisan sisi-sisinya.
Panjang lintasan P adalah n, jumlah sisi-sisinya
Lintasan sederhana adalah suatu lintasan yang memiliki verteks-verteks yang unik. Trail adalah
lintasan dengan sisi-sisi yang unik
Lintasan tertutup memiliki verteks awal dan akhir yang sama
Lintasan merentang berisi semua verteks dari G
Siklus (atau sirkuit) adalah lintasan tertutup yang memiliki verteks-verteks yang unik
Semilintasan sama dengan lintasan dengan pengecualian sisi dapat dimulai di atau dan
berakhir di verteks yang satunya
5.4. Konektivitas
Ada tiga jenis konektivitas (keterhubungan) dalam suatu graf terarah G:
(i) G terhubung secara kuat (atau kuat saja) jika, untuk setiap pasangan verteks dan dalam G. ada suatu
lintasan dari ke dan suatu lintasan dari ke . artinya, masing-masing dapat dijangkau dari yang
lainnya.
(ii) G terhubung secara unilateral atau unilateral saja) jika, untuk sembarang pasangan verteks dan
dalam G.ada suatu lintasan dari ke atau suatu lintasan dari ke , artinya, salah satu dari mereka dapat
dijangkau dari yang lainnya.
(ii) G terhubung secara lemah (atau lemah saja) jika ada suatu semilintasan antara sembarang pasangan
verteks dan dalam G.
Misalkan G' sebagai graf (tak terarah) yang diperoleh dari graf terarah G dengan cara menjadikan
semua sisi dalam G menjadi tak terarah. Jelaslah, G adalah terhubung secara lemah jika dan hanya jika graf
G' terhubung.
Perhatikan bahwa terhubung secara kuat mengimplikasikan terbubung secara unilateral yang
mengimplikasikan terhubung secara lemah. Kita mengatakan bahwa G faktual unilateral jika memang
unilateral tapi tidak kuat, dan kita mengatakan bahwa G faktual lemah jika memang lemah tapi tidak
unilateral.
Konektivitas dapat dikarakteristikkan dalam istilah lintasan membentang sebagai berikut:
Misalkan G sebagai suatu graf terarah yang terhingga. Maka:
G adalah kuat jika dan hanya jika G memiliki suatu lintasan membentang tertutup.
G adalah unilateral jika dan hanya jika G memiliki suatu lintasan membentang.
G adalah lemah jika dan hanya jika G memiliki suatu semilintasan membentang.
3
5.5. Matriks Ketetanggaan (Adjacency Matriks)
Jika G adalah graf dengan n simpul yaitu , , ….., maka matriks ketetanggaan dari graf G
adalah suatu matriks A(G) = ( ) berukuran n x n dimana adalah banyaknya sisi yang menghubungkan
simpul dan
Matriks ketetanggaan untuk graf sederhana dan tidak berarah selalu simetri sedangkan untuk graf
berarah matriks ketetanggaannya belum tentu simetri (akan simetri jika berupa graf berarah lengkap). Selain
itu diagonal utamanya selalu nol karena tidak terdapat sisi gelang(loop). Jumlah elemen matriks
ketetanggaan untuk graf dengan simpul adalah .
Keuntungan representasi dengan matriks ketetanggaan adalah matriksnya dapat diakses langsung
melalui indeks. Selain ga dapat menentukan dengan langsung apakah simpul i dan simpu bertetangga.
Derajat tiap simpul i dapat dihitung dari matriks ketetanggaan. Untuk graf berarah,
( ) ∑ ( ) ∑
4
Contoh Demo Program "Matriks Berarah" :
Dalam representasi daftar ketetanggaan graf, setiap simpul dalam graf diasosiasikan dengan kumpulan
simpul atau sisi tetangganya, yaitu, setiap simpul menyimpan daftar simpul yang berdekatan.
Sebagai contoh untuk grafik di atas, di bawah ini adalah representasi bergambar daftar kedekatannya:
#include <stdio.h>
#include <stdlib.h>
5
};
return graph;
}
printf("\n");
}
}
return 0;
}
6
Outputnya:
(0 —> 1)
(1 —> 2)
(2 —> 1) (2 —> 0)
(3 —> 2)
(4 —> 5)
(5 —> 4)
Matriks ketetanggaan adalah cara untuk merepresentasikan grafik sebagai matriks boolean (0 dan 1). Graf
berhingga dapat direpresentasikan dalam bentuk matriks bujur sangkar di komputer, di mana nilai boolean
matriks menunjukkan jika ada jalur langsung antara dua simpul.
Grafik ini dapat kita nyatakan dalam bentuk matriks seperti di bawah ini.
7
Setiap sel dalam tabel/matriks di atas direpresentasikan sebagai Aij, di mana i dan j adalah simpul. Nilai Aij
adalah 1 atau 0 tergantung pada apakah ada sisi dari simpul i ke simpul j.
Jika ada lintasan dari i ke j, maka nilai Aij adalah 1 jika tidak 0. Misalnya ada lintasan dari simpul 1 ke simpul
2, maka A12 adalah 1 dan tidak ada lintasan dari simpul 1 ke 3, jadi A13 adalah 0.
Dalam kasus graf tak berarah, matriksnya simetris terhadap diagonal karena setiap sisi (i,j), ada juga sisi
(j,i).
#include <stdio.h>
#define V 4
// Tambahkan sisi
void tambahSisi(int arr[][V], int i, int j) {
arr[i][j] = 1;
arr[j][i] = 1;
}
// Cetak matriks
void cetakAdjMatrix(int arr[][V]) {
int i, j;
// Program utama
int main() {
int adjMatrix[V][V];
init(adjMatrix);
tambahSisi(adjMatrix, 0, 1);
tambahSisi(adjMatrix, 0, 2);
tambahSisi(adjMatrix, 1, 2);
tambahSisi(adjMatrix, 0, 3);
cetakAdjMatrix(adjMatrix);
return 0;
}
8
Output:
0: 0 1 1 1
1: 1 0 1 0
2: 1 1 0 0
3: 1 0 0 0
Referensi
Daniel, F., & Taneo, P. N. (2019). Teori Graf. Yogyakarta: Deepublish.
Lipschutz, S. (2008). Matematika Diskrit (Schaum's Outlines). Jakarta: Erlangga.
Wilson, R. J. (2010). Pengantar Teori Graf. Jakarta: Erlangga
https://www.programiz.com/.