TIPS: Rangkuman ini hanya sebagai pemahaman secara umum. Pastikan Anda juga membaca BMP (Buku Materi Pokok) versi cetak atau digital di Ruang Baca Virtual (RBV) untuk pemahaman lebih mendalam.
DILARANG: Memperjualbelikan seluruh konten atau latihan soal yang terdapat di portal ini. Pelanggaran akan dikenakan sanksi sesuai ketentuan yang berlaku.
Graph
Kegiatan Belajar 1: Pengantar Graph
A. Definisi dan Sejarah Graph
1. Pengertian Graph
Graph: cara merepresentasikan hubungan antara pasangan objek (Goodrich, 2014). Koleksi objek (vertex) dan koleksi relasi (edge) antar vertex.
Perbedaan dengan tree: termasuk non-linear data structure, tetapi graph tidak mengenal konsep level dan dapat memiliki cycle.
Contoh: peta jalan (vertex = persimpangan, edge = jalan), kerjasama peneliti menulis paper, peta jembatan Königsberg.
2. Sejarah Graph
Leonhard Euler (abad ke-18) memecahkan masalah Jembatan Königsberg di Polandia.
Terdapat 4 land area (vertex A, B, C, D) dan 7 jembatan (edge a, b, c, d, e, f, g).
B. Terminologi Graph
1. Komponen Dasar
Vertex: titik/node pada graph yang merepresentasikan objek.
Edge: garis yang menghubungkan dua vertex.
Adjacent: dua vertex yang terhubung langsung oleh edge. Vertex yang adjacent disebut neighbor.
Weight: nilai/bobot pada edge yang menghubungkan vertex adjacent (misal: jarak, waktu, biaya).
Path: rangkaian edge dari satu vertex menuju vertex lain (contoh: I → H → G → F).
Cycle: path yang berakhir pada vertex awal. Graph tanpa cycle = tree. Jika graph non-directed dengan N vertex memiliki > N-1 edge, maka terdapat cycle.
C. Jenis-Jenis Graph
1. Berdasarkan Konektivitas
Connected graph: setiap vertex memiliki minimal satu path menuju setiap vertex lainnya.
Non-connected graph: terdapat vertex yang tidak memiliki path menuju vertex lain.
2. Berdasarkan Weight
Weighted graph: edge memiliki label numerik (weight). Definisi: w(e) untuk setiap edge e, dengan w(u,v) = w(e) untuk edge e = (u,v).
Unweighted graph: edge tanpa label/bobot.
D. Representasi Awal Graph
1. Adjacency Matrix
Matriks N×N untuk graph ber-N vertex. Isi 1 jika ada relasi, 0 jika tidak.
Identity diagonal: relasi vertex terhadap dirinya sendiri selalu 0.
Contoh: graph 4 vertex (A,B,C,D) → matriks 4×4 dengan baris dan kolom A,B,C,D.
2. Adjacency List
Tabel dengan kolom Vertex dan List. Setiap baris mencantumkan vertex yang berelasi.
Contoh: vertex A berelasi B,C,D → List: B → C → D.
Kegiatan Belajar 2: Representasi Graph
A. Representasi Graph Menjadi Matriks
1. Proses Pembuatan Matriks
Untuk graph dengan 12 vertex (0-11), buat matriks 12×12.
Aturan: baris = vertex asal, kolom = vertex tujuan. Isi 1 jika ada edge, 0 jika tidak.