Dalam Informatika, Graph dan Tree itu ibarat “pintu masuk” ke labirin yang sangat dalam. Di buku paket, kamu cuma diajari cara melihat pintunya, tapi di olimpiade (seperti OSN Informatika), kamu disuruh masuk ke dalam labirinnya.
Ini alasan kenapa materinya bisa jadi sangat sulit di olimpiade meski teorinya pendek:
1. Masalah Optimasi (Mencari yang “Ter-“)
Di buku, kamu cuma diminta tahu apa itu edge dan node. Di olimpiade, kamu diminta mencari:
- Shortest Path: Rute terpendek dari titik A ke Z (Algoritma Dijkstra).
- Minimum Spanning Tree (MST): Bagaimana menghubungkan semua titik dengan kabel sependek mungkin agar hemat biaya.
2. Kombinasi dengan Logika Matematika
Soal olimpiade sering kali tidak memberitahu kalau itu soal Graph.
Contoh: “Ada 10 orang di pesta, setiap orang bersalaman dengan orang yang belum dikenal…”
Kamu harus sadar sendiri kalau orang itu adalah Node dan salaman adalah Edge.
3. Representasi Data yang Rumit
Di sekolah, kita menggambar Graph di kertas. Di kompetisi, kamu harus tahu cara menuangkan gambar itu ke dalam kode program (Adjacency Matrix atau Adjacency List) agar komputer bisa memprosesnya.
4. Jenis-jenis yang Lebih Spesifik
- Directed Graph: Garisnya punya panah (jalan satu arah).
- Weighted Graph: Garisnya punya bobot/angka (misal: jarak atau biaya).
- Binary Tree: Setiap dahan maksimal cuma punya dua cabang (ini dasar dari algoritma pencarian cepat/ binary search).
Bab 2 bagian A berfokus pada Struktur Data, khususnya dua konsep yang sangat penting dalam informatika: Graf (Graph) dan Pohon (Tree).
Struktur data adalah cara mengatur dan menyimpan data agar dapat diakses dan diolah secara efisien. Di Kelas IX, kita mempelajari struktur yang bersifat non-linear.
1. Graf (Graph)
Graf adalah sekumpulan noktah (simpul/ node) yang dihubungkan oleh garis (sisi/ edge). Graf digunakan untuk merepresentasikan jaringan.
- Komponen Graf:
- Simpul (Vertex/Node): Titik yang mewakili objek (contoh: nama kota, akun media sosial).
- Sisi (Edge): Garis yang menghubungkan dua simpul (contoh: jalan raya yang menghubungkan kota, pertemanan di medsos).
- Contoh Penerapan: Peta navigasi (Google Maps), jaringan pertemanan di media sosial, dan rute penerbangan pesawat.
2. Pohon (Tree)
Pohon adalah jenis graf khusus yang tidak memiliki siklus (lintasan yang kembali ke titik asal) dan biasanya bersifat hierarkis.
- Karakteristik Pohon:
- Akar (Root): Simpul paling atas yang menjadi awal mula.
- Anak (Child): Simpul yang berada di bawah simpul lain.
- Daun (Leaf): Simpul paling bawah yang tidak memiliki anak lagi.
- Induk (Parent): Simpul yang berada di atas simpul lain dan terhubung langsung.
- Contoh Penerapan: Struktur organisasi sekolah, silsilah keluarga, dan susunan folder di dalam komputer.
Perbedaan Utama Graf vs Pohon
| Karakteristik | Graf | Pohon |
| Hubungan | Antar objek secara bebas (jaring) | Hierarkis (bertingkat) |
| Siklus | Boleh ada lintasan tertutup (berputar) | Tidak boleh ada siklus |
| Akar | Tidak memiliki akar khusus | Memiliki satu simpul utama (Root) |
Poin Penting untuk Ujian:
Dalam menyelesaikan masalah menggunakan Graf dan Pohon, kuncinya adalah kemampuan Visualisasi. Jika kamu diberikan soal rute atau silsilah, gambarlah titik dan garisnya terlebih dahulu untuk mempermudah mencari jawaban terkecil atau tercepat.