dibimbing.id - Struktur Data Graph: Jenis, Fungsi, Operasi, dan Contoh

Struktur Data Graph: Jenis, Fungsi, Operasi, dan Contoh

Irhan Hisyam Dwi Nugroho

•

18 December 2024

•

179

Image Banner

Struktur Data Graph adalah pondasi di balik banyak teknologi canggih, Warga Bimbingan. Dari algoritma pencarian sampai rekomendasi teman di media sosial, semuanya memanfaatkan graph.

Tapi jangan kira graph cuma buat hal rumit, ya. Di balik itu, konsep ini juga dipakai buat hal sehari-hari seperti nyari rute tercepat atau optimasi jaringan.

Di artikel ini, MinDi bakal jelasin jenis, fungsi, operasi, dan contoh implementasi graph dengan gaya yang simpel dan seru. Yuk, mulai eksplorasi ini bareng MinDi! 


Apa itu Struktur Data Graph?


Struktur Data Graph adalah representasi hubungan antar objek menggunakan simpul (vertex) dan garis penghubung (edge). 

Simpul merepresentasikan entitas seperti kota atau pengguna, sedangkan sisi menggambarkan koneksi antar simpul. 

Graph dapat berbentuk berarah, tak berarah, berbobot, atau tanpa bobot, dan digunakan di berbagai aplikasi seperti peta digital, jaringan sosial, dan algoritma pencarian. 

Memahami graph membantu menganalisis data yang kompleks dan menemukan solusi lebih efisien.

Baca juga : 10 Tugas Data Analyst untuk Sukses dalam Dunia Kerja


Jenis-Jenis Data Graph


Sumber: Canva

Graph hadir dalam berbagai bentuk, masing-masing dengan karakteristik unik yang cocok untuk kebutuhan tertentu. Yuk, kita kenali jenis-jenis graph berikut ini!


1. Graph Berarah (Directed Graph)


Graph berarah adalah graph di mana setiap sisi memiliki arah, menunjukkan hubungan satu arah antar simpul. Contohnya adalah alur kerja atau sistem "following" di media sosial. 

Hubungan ini hanya berlaku searah, kecuali ada edge tambahan yang mengarah balik. Graph ini cocok untuk memodelkan proses atau alur tertentu.


2. Graph Tak Berarah (Undirected Graph)


Graph tak berarah adalah graph di mana setiap sisi tidak memiliki arah, sehingga hubungan antar simpul bersifat dua arah. Jika A terhubung ke B, maka B juga otomatis terhubung ke A. 

Contoh penggunaannya adalah jaringan pertemanan atau koneksi komunitas. Sifat dua arah ini membuatnya sederhana dan cocok untuk hubungan timbal balik.


3. Graph Berbobot (Weighted Graph)


Graph berbobot adalah graph di mana setiap sisi memiliki nilai atau bobot yang menunjukkan intensitas atau jarak antar simpul. Contohnya adalah peta jalan, di mana bobot merepresentasikan jarak antara dua lokasi. 

Graph ini membantu menyelesaikan masalah seperti mencari rute tercepat. Bobot menambah fleksibilitas dalam memodelkan hubungan antar data.


4. Graph Tidak Berbobot (Unweighted Graph)


Graph tidak berbobot adalah graph di mana sisi hanya menunjukkan ada atau tidaknya hubungan antar simpul tanpa nilai tambahan. Contohnya adalah jaringan sosial sederhana yang hanya menunjukkan koneksi antar pengguna. 

Meski tanpa bobot, graph ini efektif untuk analisis hubungan dasar. Sifatnya yang sederhana membuatnya mudah diimplementasikan.

Baca juga : 5 Contoh Pekerjaan Data Analyst beserta Jenis dan Gaji


Fungsi Struktur Data Graph


Sumber: Canva

Struktur Data Graph sangat berguna untuk memodelkan hubungan kompleks dan menyelesaikan berbagai masalah. Berikut adalah beberapa fungsinya:


1. Mewakili Jaringan


Graph digunakan untuk merepresentasikan jaringan seperti komputer, jalan, atau sosial. Simpul merepresentasikan entitas, dan sisi menunjukkan koneksi antar mereka. Contohnya, jaringan transportasi dengan simpul sebagai lokasi dan sisi sebagai rute.


2. Menemukan Jalur Terpendek


Graph membantu mencari jalur terpendek antar simpul, seperti dalam navigasi GPS. Algoritma seperti Dijkstra digunakan untuk efisiensi. Fungsi ini penting untuk logistik, transportasi, dan pengiriman.


3. Analisis Jaringan Sosial


Graph memodelkan hubungan sosial seperti pertemanan atau pengikut. Simpul mewakili individu, dan sisi menunjukkan hubungan. Ini berguna untuk analisis pengaruh atau penyebaran informasi.


4. Optimasi Masalah Kompleks


Graph digunakan untuk optimasi seperti menentukan rute atau jaringan distribusi terbaik. Contohnya adalah minimum spanning tree untuk efisiensi biaya. Fungsi ini relevan dalam logistik dan infrastruktur.

Baca juga : 7 Cara Belajar Data Analyst untuk Pemula dari Dasar


Operasi Dasar Struktur Data Graph


Berikut adalah beberapa operasi dasar dalam Struktur Data Graph yang sering digunakan:

  1. Menambah Simpul (Vertex): Menambahkan simpul baru ke dalam graph untuk merepresentasikan entitas baru.
  2. Menambah Sisi (Edge): Membuat koneksi baru antara dua simpul, dengan atau tanpa bobot.
  3. Menghapus Simpul (Vertex): Menghapus simpul tertentu beserta semua koneksi yang terkait dengannya.
  4. Menghapus Sisi (Edge): Menghapus sisi tertentu untuk memutuskan koneksi antar simpul.
  5. Mencari Jalur (Path): Menemukan jalur antara dua simpul menggunakan algoritma seperti BFS atau DFS.

Baca juga : Contoh Data Regresi: Pengertian, Jenis, dan Penjelasan


Contoh Implementasi


Sumber: Canva

Struktur Data Graph dapat dengan mudah diimplementasikan dalam berbagai bahasa pemrograman. Berikut adalah contoh implementasi sederhana menggunakan Python:

python

# Representasi Graph dengan List Adjacency

graph = {

  'A': ['B', 'C'],

  'B': ['A', 'D'],

  'C': ['A', 'D'],

  'D': ['B', 'C']

}


# Fungsi untuk menambahkan simpul

def tambah_simpul(graph, simpul):

  if simpul not in graph:

    graph[simpul] = []


# Fungsi untuk menambahkan sisi

def tambah_sisi(graph, simpul1, simpul2):

  if simpul1 in graph:

    graph[simpul1].append(simpul2)

  if simpul2 in graph:

    graph[simpul2].append(simpul1)


# Menampilkan Graph

def tampilkan_graph(graph):

  for simpul in graph:

    print(f"{simpul} -> {', '.join(graph[simpul])}")


# Contoh penggunaan

tambah_simpul(graph, 'E')

tambah_sisi(graph, 'D', 'E')

tampilkan_graph(graph)


Output:

A -> B, C 

B -> A, D 

C -> A, D 

D -> B, C, E 

E -> D  

Contoh ini menunjukkan bagaimana membuat graph sederhana, menambah simpul dan sisi, serta menampilkan koneksi antar simpul. Dengan pendekatan ini, kita bisa membangun aplikasi seperti jaringan sosial atau sistem navigasi.

Baca juga : Contoh Data Nominal, Ordinal, Interval, dan Rasio


Pelajari Struktur Data Graph untuk Tingkatkan Skill Data Science!


Setelah memahami jenis, fungsi, operasi dasar seperti BFS dan DFS, serta contoh implementasi struktur data graph, kini saatnya kamu melangkah lebih jauh untuk mendalami data science!

Yuk, ikuti Bootcamp Data Science di dibimbing.id! Di sini, kamu akan belajar langsung dari mentor berpengalaman tentang konsep struktur data seperti graph, algoritma pencarian, analisis data, dan teknik machine learning yang banyak digunakan di industri.

Dengan kurikulum praktis, studi kasus nyata, dan dukungan belajar yang terstruktur, kamu akan siap menghadapi tantangan dunia data science.

Lebih dari 700+ hiring partner siap membuka peluang karier terbaik untukmu, dengan 90% tingkat keberhasilan alumni yang telah berhasil menembus perusahaan ternama.

Jadi, tunggu apa lagi? Hubungi di sini dan daftar sekarang di dibimbing.id untuk memulai perjalananmu menjadi Data Scientist profesional. #BimbingSampeJadi 


Referensi


  1. What is a Data Graph? - Explanation & Examples [Buka]

Share

Author Image

Irhan Hisyam Dwi Nugroho

Irhan Hisyam Dwi Nugroho is an SEO Specialist and Content Writer with 4 years of experience in optimizing websites and writing relevant content for various brands and industries. Currently, I also work as a Content Writer at Dibimbing.id and actively share content about technology, SEO, and digital marketing through various platforms.

Hi!👋

Kalau kamu butuh bantuan,

hubungi kami via WhatsApp ya!