SlideShare a Scribd company logo
STRUKTUR DATA
Struktur Data Graph
GRAPH
• Graph adalah kumpulan dari simpul dan
busur yang secara matematis dinyatakan
sebagai :
G = (V, E)
Dimana
G = Graph
V = Simpul atau Vertex, atau Node, atau Titik
E = Busur atau Edge, atau arc
Contoh graph :
C
E
Undirected graph
e3
e7
edge
e5
v1 A
e2
vertex v2
B
e1 e4
v4 D
e6 v5
v3
V terdiri dari v1, v2, …, v5
E terdiri dari e1, e2, … , e7
• Sebuah graph mungkin
hanya terdiri dari satu simpul
• Sebuah graph belum tentu
semua simpulnya terhubung
dengan busur
• Sebuah graph mungkin
mempunyai simpul yang tak
terhubung dengan simpul
yang lain
• Sebuah graph mungkin
semua simpulnya saling
berhubungan
Graph Berarah dan Graph Tak Berarah :
B
A C
E
B
C
E
Directed graph Undirected graph
Dapat dilihat dari bentuk busur yang artinya urutan
penyebutan pasangan 2 simpul.
e1 e3
e4
e7
e5
v1 A
e2
v2
v4 D
e6 v5
v3
v1
v2
v3
v5
D
v4
e1
e2
e3
e4
e5
e6
e7
e8 e9
e10
• Graph tak berarah (undirected graph atau
non-directed graph) :
• Urutan simpul dalam sebuah busur tidak
dipentingkan. Mis busur e1 dapat disebut
busur AB atau BA
• Graph berarah (directed graph) :
• Urutan simpul mempunyai arti. Mis busur AB
adalah e1 sedangkan busur BA adalah e8.
• Graph Berbobot (Weighted Graph)
• Jika setiap busur mempunyai nilai yang
menyatakan hubungan antara 2 buah simpul,
maka busur tersebut dinyatakan memiliki
bobot.
• Bobot sebuah busur dapat menyatakan
panjang sebuah jalan dari 2 buah titik, jumlah
rata-rata kendaraan perhari yang melalui
sebuah jalan, dll.
Graph Berbobot :
B
A C
E
C
E
Directed graph Undirected graph
Panjang busur (atau bobot) mungkin tidak digambarkan secara
panjang yang proposional dengan bobotnya. Misal bobot 5
digambarkan lebih panjang dari 7.
5 3
12
6
8
v1 A
4
v2
B
v4 D
3 v5
v3
v1
v2
v3
v5
D
v4
5
e2
3
12
8
3
6
4 7
10
Istilah pada graph
Incident
Jika e merupakan busur dengan simpul-
simpulnya adalah v dan w yang ditulis
e=(v,w), maka v dan w disebut “terletak”
pada e, dan e disebut incident dengan v
dan w.
Degree (derajat), indegree dan outdegree
Degree sebuah simpul adalah jumlah busur
yang incident dengan simpul tersebut.
Indegree sebuah simpul pada graph berarah
adalah jumlah busur yang kepalanya
incident dengan simpul tersebut, atau jumlah
busur yang “masuk” atau menuju simpul
tersebut.
Outdegree sebuah simpul pada graph
berarah adalah jumlah busur yang
ekornya incident dengan simpul tersebut,
atau jumlah busur yang “keluar” atau berasal
dari simpul tersebut.
3. Adjacent
Pada graph tidah berarah, 2 buah simpul
disebut adjacent bila ada busur yang
menghubungkan kedua simpul tersebut.
Simpul v dan w disebut adjacent.
w
e
v
Pada graph berarah, simpul v disebut
adjacent dengan simpul w bila ada busur
dari w ke v.
v
e w
4. Successor dan Predecessor
Pada graph berarah, bila simpul v adjacent
dengan simpul w, maka simpul v adalah
successor simpul w, dan simpul w adalah
predecessor dari simpul v.
5. Path
Sebuah path adalah serangkaian simpul-
simpul yang berbeda, yang adjacent secara
berturut-turut dari simpul satu ke simpul
berikutnya.
3 4 4 4 4
2
3
1 2 1 2 1 2 1
3 3
Representasi Graph dalam
bentuk matrix
• Adjacency Matrix Graph tak berarah
B
A C
D E
Graph
0 1 0 1 0
1 0 1 0 1
0 1 0 1 1
1 0 1 0 1
0 1 1 1 0
A
0
B C
1 2
A
B
C
E
4
D
3
D
E
0
1
2
4
3
Urut abjad
Degree simpul : 3
Representasi Graph dalam
bentuk matrix
• Adjacency Matrix Graph berarah
Graph
0 1 0 1 0
1 0 1 0 1
0 1 0 1 1
0 0 1 0 1
0 0 0 0 0
A
0
B C D
1 2 3
A
B
C
E
4
D
E
0
1
2
4
3
B
A C
D E
ke
dari
out
in
• Adjency List graph tak berarah
• Digambarkan sebagai sebuah simpul yang
memiliki 2 pointer.
• Simpul vertex : Simpul edge :
Representasi Graph dalam
bentuk Linked List
info info
Menunjuk ke simpul
vertex berikutnya,
dalam untaian simpul
yang ada.
Menunjuk ke simpul
edge pertama Menunjuk ke
simpul edge
berikutnya, bila
masih ada.
Menunjuk ke simpul
vertex tujuan yang
berhubungan dengan
simpul vertex asal.
left right left right
• Define struct untuk sebuah simpul yang
dapat digunakan sebagai vertex maupun
edge.
typedef struct tipeS {
tipeS *Left;
int INFO;
tipeS *Right;
};
tipeS *FIRST, *PVertex, *PEdge;
Contoh : untuk vertex A, memiliki 2
edge yang terhubung yaitu e1 dan e2.
A
C
D
B
E
e2
Graph
e1
B
A C
D E
e1
e3
e4
e7
e5
e2
e6
Urut abjad
Gambar di atas dapat disusun dengan
lebih sederhana, sbb :
A
C
D
B
E
D
A
B
A
B
C E
D E
C
C D
B
A C
D E
Graph
B
E
Adjency List graph berarah
A
C
D
B
E
D
A
B
C
E
C
B
E
B
A C
D E
Graph berarah dan
berbobot
B
A C
D E
5
3
2
14
12
6
7
12
0 5 0 2 0
6 0 3 0 0
0 0 0 0 12
0 0 12 0 7
0 14 0 0 0
A
0
A
B
C
D
B
1
C
2
D E
3 4
E
0
1
2
3
4
Perhatikan pemilihan nilai 0.
Penyelesaian kasus Graph
halaman sebelumnya :
• Define simpul untuk vertex dan edge
• Mengidentifikasi Simpul pertama sebagai
vertex yang pertama
• Tambahkan vertex sisanya
• Tambahkan edge pada masing-masing
vertex yang telah terbentuk
• Tampilkan representasi graph berikut
bobotnya
Hasil :
ALGORITMA DIJKSTRA
• Algoritme Dijkstra, (sesuai penemunya Edsger Dijkstra), adalah sebuah algoritma
yang dipakai dalam memecahkan permasalahan jarak terpendek (shortest path
problem) untuk sebuah graf berarah (directed graph).
• Algoritma ini dioublikasikan pada tahun 1959 jurnal Numerische Mathematik yang
berjudul “A Note on Two Problems in Connexion with Graphs” dan dianggap sebagai
algoritma greedy.
• Permasalahan rute terpendek dari sebuah titik ke akhir titik lain adalah sebuah
masalah klasik optimasi yang banyak digunakan untuk menguji sebuah algoritma
yang diusulkan. Permasalahan rute terpendek dianggap cukup baik untuk mewakili
masalah optimisasi, karena permasalahannya mudah dimengerti (hanya
menjumlahkan seluruh edge yang dilalui) namun memiliki banyak pilihan solusi.
• Menurut Andrew Goldberg peneliti Microsoft Research Silicon Valley,
mengatakan ada banyak alasan mengapa peneliti terus mempelajari masalah
pencarian jalan terpendek. “Jalan terpendek adalah masalah optimasi yang
relevan untuk berbagai macam aplikasi, seperti jaringan routing, game,
desain sirkuit, dan pemetaan”.
Contoh
Sebagai contoh hitunglah Jarak terdekat dari V1 ke V7 pada gambar berikut ini.
jawaban
Dengan demikian jarak terpendek dari V1 ke V7 adalah 16
dengan jalur V1->V2->V3->V5->V6->V7
[buku utama, bab 6.5]
GRAPH vs TREE
• Sebuah Graph memiliki ciri berbeda dengan Tree
• Dalam Graph, edge bebas menghubungkan node-node mana pun.
• Dalam Tree, satu node hanya boleh terhubung ke satu parent dan
beberapa child, tidak boleh ke beberapa parent.
• Dalam sebuah Graph bisa dirunut jalur edge yang membentuk jalur
putaran dari 1 node kembali ke node semula; ini tidak boleh terjadi
dalam Tree
By @Dikky Suryadi M.Kom
SPANNING TREE
• Spanning Tree adalah sebuah Tree yang dibuat dari
sebuah Graph dengan menghilangkan beberapa edge-
nya. Tree ini harus mengandung semua node yang
dimiliki Graph.
[buku utama, ilustrasi 6.3]
MINIMUM SPANNING TREE
• Jika Weighted Graph diubah menjadi
Spanning Tree, tiap kombinasi Tree yang
dapat dibuat memiliki total weight yang
berbeda-beda.
• Problem Minimum Spanning Tree (MST)
berusaha mencari Tree seperti apa yang
bisa dibuat dari sebuah Weighted Graph
dengan total weight seminimal mungkin.
MST DENGAN METODE
GREEDY
• Algoritma Prim-Dijkstra
• Ditemukan oleh Robert C. Prim di tahun 1957
dan oleh Edsger Dijkstra di tahun 1959.
• Algoritma Kruskal
• Ditemukan oleh Joseph Kruskal di tahun
1956.
By @Dikky Suryadi M.Kom
• Langkah-langkah algoritma Prim-Dijkstra :
1. Tentukan node awal, asumsikan semua edge berwarna hitam
2. Dari semua edge yang terhubung ke node awal tersebut, pilih
edge dengan bobot terkecil
3. Tandai edge yang dipilih dengan warna hijau
4. Apabila ada edge yang kedua node-nya sudah terkena jalur
hijau, tandai edge tersebut dengan warna merah (karena jika
dipilih akan membentuk jalur putaran à melanggar syarat tree)
5. Tentukan node-node yang berada di jalur hijau sebagai node
aktif
6. Bandingkan semua edge yang terhubung ke node aktif (hanya
edge hitam), pilih yang bobotnya terkecil
7. Tandai edge yang dipilih dengan warna hijau
8. Ulangi dari langkah ke-4 hingga semua node terlewati jalur
9. Ketika semua node telah dilewati jalur hijau, maka jalur hijau
ALGORITMA PRIM- DIJKSTRA
• Langkah-langkah algoritma Kruskal :
1. Asumsikan semua edge berwarna hitam
2. Bandingkan bobot semua edge hitam, pilih edge dengan bobot
terkecil
3. Tandai edge yang dipilih dengan warna hijau
4. Apabila ada edge yang kedua node-nya sudah terkena jalur
hijau, tandai edge tersebut dengan warna merah (karena jika
dipilih akan membentuk jalur putaran à melanggar syarat tree)
5. Ulangi dari langkah ke-2 hingga semua node terlewati jalur
hijau
6. Ketika semua node telah dilewati jalur hijau, maka jalur hijau
yang terbentuk adalah MST yang dicari
ALGORITMA KRUSKAL
By @Dikky Suryadi M.Kom
• Pelajari langkah-langkah algoritma pada :
• bab 6.5.1 (algoritma Prim-Dijkstra)
• bab 6.5.2 (algoritma Kruskal)
CONTOH PROBLEM MST
SHORTEST PATH
• Dalam sebuah Graph yang setiap edge yang memiliki weight
(bobot), jarak terpendek (shortest path) antara 2 node dapat dicari
dengan Metode Greedy
• Misal kita hendak mencari jalur terpendek (shortest path) dari node
A ke node F, bagaimana cara menghitungnya dengan Metode
Greedy?
[buku utama, bab 6.7]
By @Dikky Suryadi M.Kom
METODE GREEDY
SHORTEST PATH
• Langkah-langkah Metode Greedy
1.Berangkat dari node awal
2.Pilih edge yang memiliki bobot terkecil dari
node tersebut
3.Maju ke node yang dituju
4.Ulangi dari langkah ke-2 hingga mencapai
node tujuan
By @Dikky Suryadi M.Kom
CONTOH PROBLEM
SHORTEST PATH
[buku utama, bab 6.7]
By @Dikky Suryadi M.Kom
• Metode Greedy menghasilkan solusi yang cukup baik, tapi bukan
yang paling baik
• Diskusikan mengapa bisa begitu?
SOLUSI OPTIMAL?
• Benarkah solusi yang didaptkan dari Metode Greedy untuk Shortest
Path problem adalah benar-benar solusi terbaik?
• Coba bandingkan solusi berikut :
By @Dikky Suryadi M.Kom
• Diskusikan mengapa kadang Metode Greedy
gagal menghasilkan solusi terbaik!
LATIHAN
• Buatlah Minimum Spanning Tree menggunakan
algoritma Prim-Dijkstra dan algoritma Kruskal
• Carilah Shortest Path dari node A ke node F
dengan Metode Greedy!
By @Dikky Suryadi M.Kom
By @Dikky Suryadi M.Kom
REVIEW
• Apa yang sudah dipahami?
• Apa yang akan dibahas selanjutnya?

More Related Content

What's hot

Pertemuan 13 Graph
Pertemuan 13 GraphPertemuan 13 Graph
Pertemuan 13 Graph
Endang Retnoningsih
 
Penyederhanaan Karnaugh Map
Penyederhanaan Karnaugh MapPenyederhanaan Karnaugh Map
Penyederhanaan Karnaugh Map
Cheria Asyifa
 
8. Multi List (Struktur Data)
8. Multi List (Struktur Data)8. Multi List (Struktur Data)
8. Multi List (Struktur Data)
Kelinci Coklat
 
4.1 Operasi Dasar Singly Linked List 1 (primitive list)
4.1 Operasi Dasar Singly Linked List  1 (primitive list)4.1 Operasi Dasar Singly Linked List  1 (primitive list)
4.1 Operasi Dasar Singly Linked List 1 (primitive list)
Kelinci Coklat
 
Metode pencarian heuristik
Metode pencarian heuristikMetode pencarian heuristik
Metode pencarian heuristikBaguss Chandrass
 
Bab 5 penyederhanaan fungsi boolean
Bab 5 penyederhanaan fungsi booleanBab 5 penyederhanaan fungsi boolean
Bab 5 penyederhanaan fungsi booleanCliquerz Javaneze
 
Metode enkripsi caesar cipher
Metode enkripsi caesar cipherMetode enkripsi caesar cipher
Metode enkripsi caesar cipherBobby Chandra
 
Bab 2 Aljabar Relasional
Bab 2   Aljabar RelasionalBab 2   Aljabar Relasional
Bab 2 Aljabar RelasionalRatzman III
 
Contoh soal uts struktur data
Contoh soal uts struktur dataContoh soal uts struktur data
Contoh soal uts struktur data
Bina Sarana Informatika
 
Pertemuan 9 Tree dan BinaryTree
Pertemuan 9 Tree dan BinaryTreePertemuan 9 Tree dan BinaryTree
Pertemuan 9 Tree dan BinaryTree
Endang Retnoningsih
 
Graf ( Matematika Diskrit)
Graf ( Matematika Diskrit)Graf ( Matematika Diskrit)
Graf ( Matematika Diskrit)
zachrison htg
 
Aljabar boolean MK matematika diskrit
Aljabar boolean MK matematika diskritAljabar boolean MK matematika diskrit
Aljabar boolean MK matematika diskritriyana fairuz kholisa
 
Matematika diskrit (dual graf, lintasan dan sirkuit euler, lintasan dan sirku...
Matematika diskrit (dual graf, lintasan dan sirkuit euler, lintasan dan sirku...Matematika diskrit (dual graf, lintasan dan sirkuit euler, lintasan dan sirku...
Matematika diskrit (dual graf, lintasan dan sirkuit euler, lintasan dan sirku...Fatma Qolbi
 
6 Materi Kuliah Normalisasi Tabel Database
6 Materi Kuliah Normalisasi Tabel Database6 Materi Kuliah Normalisasi Tabel Database
6 Materi Kuliah Normalisasi Tabel Database
Simon Patabang
 
5 transformasi model data
5 transformasi model data5 transformasi model data
5 transformasi model data
Simon Patabang
 
Tugas mandiri struktur data
Tugas mandiri struktur dataTugas mandiri struktur data
Tugas mandiri struktur data
Asep Jaenudin
 
Materi Struktur Data Tree
Materi Struktur Data TreeMateri Struktur Data Tree
Materi Struktur Data Tree
Meta N
 
Perkuliahan ke 6 queue
Perkuliahan ke 6 queuePerkuliahan ke 6 queue
Perkuliahan ke 6 queue
Rakhmi Khalida, M.M.S.I
 
GRAPH BERARAH DAN NETWORK
GRAPH BERARAH DAN NETWORKGRAPH BERARAH DAN NETWORK
GRAPH BERARAH DAN NETWORK
Muhammad Alfiansyah Alfi
 

What's hot (20)

Pertemuan 13 Graph
Pertemuan 13 GraphPertemuan 13 Graph
Pertemuan 13 Graph
 
Penyederhanaan Karnaugh Map
Penyederhanaan Karnaugh MapPenyederhanaan Karnaugh Map
Penyederhanaan Karnaugh Map
 
8. Multi List (Struktur Data)
8. Multi List (Struktur Data)8. Multi List (Struktur Data)
8. Multi List (Struktur Data)
 
4.1 Operasi Dasar Singly Linked List 1 (primitive list)
4.1 Operasi Dasar Singly Linked List  1 (primitive list)4.1 Operasi Dasar Singly Linked List  1 (primitive list)
4.1 Operasi Dasar Singly Linked List 1 (primitive list)
 
Metode pencarian heuristik
Metode pencarian heuristikMetode pencarian heuristik
Metode pencarian heuristik
 
Bab 5 penyederhanaan fungsi boolean
Bab 5 penyederhanaan fungsi booleanBab 5 penyederhanaan fungsi boolean
Bab 5 penyederhanaan fungsi boolean
 
Metode enkripsi caesar cipher
Metode enkripsi caesar cipherMetode enkripsi caesar cipher
Metode enkripsi caesar cipher
 
Bab 2 Aljabar Relasional
Bab 2   Aljabar RelasionalBab 2   Aljabar Relasional
Bab 2 Aljabar Relasional
 
Contoh soal uts struktur data
Contoh soal uts struktur dataContoh soal uts struktur data
Contoh soal uts struktur data
 
Pertemuan 9 Tree dan BinaryTree
Pertemuan 9 Tree dan BinaryTreePertemuan 9 Tree dan BinaryTree
Pertemuan 9 Tree dan BinaryTree
 
Soal uas struktur data
Soal uas struktur dataSoal uas struktur data
Soal uas struktur data
 
Graf ( Matematika Diskrit)
Graf ( Matematika Diskrit)Graf ( Matematika Diskrit)
Graf ( Matematika Diskrit)
 
Aljabar boolean MK matematika diskrit
Aljabar boolean MK matematika diskritAljabar boolean MK matematika diskrit
Aljabar boolean MK matematika diskrit
 
Matematika diskrit (dual graf, lintasan dan sirkuit euler, lintasan dan sirku...
Matematika diskrit (dual graf, lintasan dan sirkuit euler, lintasan dan sirku...Matematika diskrit (dual graf, lintasan dan sirkuit euler, lintasan dan sirku...
Matematika diskrit (dual graf, lintasan dan sirkuit euler, lintasan dan sirku...
 
6 Materi Kuliah Normalisasi Tabel Database
6 Materi Kuliah Normalisasi Tabel Database6 Materi Kuliah Normalisasi Tabel Database
6 Materi Kuliah Normalisasi Tabel Database
 
5 transformasi model data
5 transformasi model data5 transformasi model data
5 transformasi model data
 
Tugas mandiri struktur data
Tugas mandiri struktur dataTugas mandiri struktur data
Tugas mandiri struktur data
 
Materi Struktur Data Tree
Materi Struktur Data TreeMateri Struktur Data Tree
Materi Struktur Data Tree
 
Perkuliahan ke 6 queue
Perkuliahan ke 6 queuePerkuliahan ke 6 queue
Perkuliahan ke 6 queue
 
GRAPH BERARAH DAN NETWORK
GRAPH BERARAH DAN NETWORKGRAPH BERARAH DAN NETWORK
GRAPH BERARAH DAN NETWORK
 

Similar to Graph-Struktur Data.pdf

Graph-Teori-Algoritma.pdf
Graph-Teori-Algoritma.pdfGraph-Teori-Algoritma.pdf
Graph-Teori-Algoritma.pdf
DikkySuryadiSKomMKom
 
Graph
GraphGraph
T Istrukdat11
T Istrukdat11T Istrukdat11
T Istrukdat11
Anindita Martadipura
 
Teori graf-complete
Teori graf-completeTeori graf-complete
Teori graf-complete
endah kurnia
 
285975_TEOREMA GRAPH_.ppt
285975_TEOREMA GRAPH_.ppt285975_TEOREMA GRAPH_.ppt
285975_TEOREMA GRAPH_.ppt
HadiWidjaja4
 
Graph, Bidirect Graph, Terminologi Graph, Implementasi
Graph, Bidirect Graph, Terminologi Graph, ImplementasiGraph, Bidirect Graph, Terminologi Graph, Implementasi
Graph, Bidirect Graph, Terminologi Graph, Implementasi
budiman
 
Teori Graf - Mtk Diskrit
Teori Graf - Mtk DiskritTeori Graf - Mtk Diskrit
Teori Graf - Mtk DiskritIndah Wijayanti
 
Teori graf-complete
Teori graf-completeTeori graf-complete
Teori graf-complete
Marwan Musa
 
Ppt graph
Ppt graphPpt graph
Gambar81 contoh-graf
Gambar81 contoh-grafGambar81 contoh-graf
Gambar81 contoh-graf
Romdoni4
 
Teori graf
Teori grafTeori graf
Teori graf
syahrunfacrezy
 
Diskret VII Graph
Diskret VII GraphDiskret VII Graph
Diskret VII Graph
Raden Maulana
 
Graph
GraphGraph
Matematika Diskrit graf
Matematika Diskrit grafMatematika Diskrit graf
Matematika Diskrit graf
Siti Khotijah
 
Graf_Isomorfik_Graf_Planar_Graf_Bidang_d.pdf
Graf_Isomorfik_Graf_Planar_Graf_Bidang_d.pdfGraf_Isomorfik_Graf_Planar_Graf_Bidang_d.pdf
Graf_Isomorfik_Graf_Planar_Graf_Bidang_d.pdf
IchanLingga1
 

Similar to Graph-Struktur Data.pdf (20)

Graph-Teori-Algoritma.pdf
Graph-Teori-Algoritma.pdfGraph-Teori-Algoritma.pdf
Graph-Teori-Algoritma.pdf
 
Graph
GraphGraph
Graph
 
T Istrukdat11
T Istrukdat11T Istrukdat11
T Istrukdat11
 
Babiv Graf
Babiv GrafBabiv Graf
Babiv Graf
 
Teori graf-complete
Teori graf-completeTeori graf-complete
Teori graf-complete
 
285975_TEOREMA GRAPH_.ppt
285975_TEOREMA GRAPH_.ppt285975_TEOREMA GRAPH_.ppt
285975_TEOREMA GRAPH_.ppt
 
Graph, Bidirect Graph, Terminologi Graph, Implementasi
Graph, Bidirect Graph, Terminologi Graph, ImplementasiGraph, Bidirect Graph, Terminologi Graph, Implementasi
Graph, Bidirect Graph, Terminologi Graph, Implementasi
 
Teori Graf - Mtk Diskrit
Teori Graf - Mtk DiskritTeori Graf - Mtk Diskrit
Teori Graf - Mtk Diskrit
 
Teori graf-complete
Teori graf-completeTeori graf-complete
Teori graf-complete
 
Pert 14
Pert 14Pert 14
Pert 14
 
Pertemuan 11 revisijan2013-mhs
Pertemuan 11 revisijan2013-mhsPertemuan 11 revisijan2013-mhs
Pertemuan 11 revisijan2013-mhs
 
Ppt graph
Ppt graphPpt graph
Ppt graph
 
Gambar81 contoh-graf
Gambar81 contoh-grafGambar81 contoh-graf
Gambar81 contoh-graf
 
Teori graf
Teori grafTeori graf
Teori graf
 
Pertemuan 14 ok
Pertemuan 14 okPertemuan 14 ok
Pertemuan 14 ok
 
Diskret VII Graph
Diskret VII GraphDiskret VII Graph
Diskret VII Graph
 
Graph
GraphGraph
Graph
 
Matematika Diskrit graf
Matematika Diskrit grafMatematika Diskrit graf
Matematika Diskrit graf
 
Graf_Isomorfik_Graf_Planar_Graf_Bidang_d.pdf
Graf_Isomorfik_Graf_Planar_Graf_Bidang_d.pdfGraf_Isomorfik_Graf_Planar_Graf_Bidang_d.pdf
Graf_Isomorfik_Graf_Planar_Graf_Bidang_d.pdf
 
Graf 2
Graf 2Graf 2
Graf 2
 

Recently uploaded

Pemaparan budaya positif di sekolah.pptx
Pemaparan budaya positif di sekolah.pptxPemaparan budaya positif di sekolah.pptx
Pemaparan budaya positif di sekolah.pptx
maulatamah
 
Kisi-kisi PAT IPS Kelas 8 semester 2.pdf
Kisi-kisi PAT IPS Kelas 8 semester 2.pdfKisi-kisi PAT IPS Kelas 8 semester 2.pdf
Kisi-kisi PAT IPS Kelas 8 semester 2.pdf
indraayurestuw
 
Chapter 19 Intermediate Accounting Kieso
Chapter 19 Intermediate Accounting KiesoChapter 19 Intermediate Accounting Kieso
Chapter 19 Intermediate Accounting Kieso
AryaMahardhika3
 
Pendampingan Individu 2 Modul 1 PGP 10 Kab. Sukabumi Jawa Barat
Pendampingan Individu 2 Modul 1 PGP 10 Kab. Sukabumi Jawa BaratPendampingan Individu 2 Modul 1 PGP 10 Kab. Sukabumi Jawa Barat
Pendampingan Individu 2 Modul 1 PGP 10 Kab. Sukabumi Jawa Barat
Eldi Mardiansyah
 
CP SEKOLAH DASAR KELAS 5 KURIKULUM MERDEKA.docx
CP SEKOLAH DASAR KELAS 5 KURIKULUM MERDEKA.docxCP SEKOLAH DASAR KELAS 5 KURIKULUM MERDEKA.docx
CP SEKOLAH DASAR KELAS 5 KURIKULUM MERDEKA.docx
HUSINKADERI
 
Laporan Pembina OSIS UNTUK PMMOK.pdf.pdf
Laporan Pembina OSIS UNTUK PMMOK.pdf.pdfLaporan Pembina OSIS UNTUK PMMOK.pdf.pdf
Laporan Pembina OSIS UNTUK PMMOK.pdf.pdf
OcitaDianAntari
 
Teori Fungsionalisme Kulturalisasi Talcott Parsons (Dosen Pengampu : Khoirin ...
Teori Fungsionalisme Kulturalisasi Talcott Parsons (Dosen Pengampu : Khoirin ...Teori Fungsionalisme Kulturalisasi Talcott Parsons (Dosen Pengampu : Khoirin ...
Teori Fungsionalisme Kulturalisasi Talcott Parsons (Dosen Pengampu : Khoirin ...
nasrudienaulia
 
MATERI SOSIALISASI PPDB JABAR utkMAS052024 (2).pdf
MATERI SOSIALISASI PPDB JABAR utkMAS052024 (2).pdfMATERI SOSIALISASI PPDB JABAR utkMAS052024 (2).pdf
MATERI SOSIALISASI PPDB JABAR utkMAS052024 (2).pdf
solihin kadar
 
Refleksi pembelajaran guru bahasa inggris.pptx
Refleksi pembelajaran guru bahasa inggris.pptxRefleksi pembelajaran guru bahasa inggris.pptx
Refleksi pembelajaran guru bahasa inggris.pptx
SholahuddinAslam
 
materi sosialisai perencanaan visi misi satuan pendidikan.pptx
materi sosialisai perencanaan visi misi satuan pendidikan.pptxmateri sosialisai perencanaan visi misi satuan pendidikan.pptx
materi sosialisai perencanaan visi misi satuan pendidikan.pptx
srihardiyanty17
 
2. PEMBELAJARAN YANG MENGUATKAN TRANSISI PAUD-SD Merancang Instrumen Asesmen ...
2. PEMBELAJARAN YANG MENGUATKAN TRANSISI PAUD-SD Merancang Instrumen Asesmen ...2. PEMBELAJARAN YANG MENGUATKAN TRANSISI PAUD-SD Merancang Instrumen Asesmen ...
2. PEMBELAJARAN YANG MENGUATKAN TRANSISI PAUD-SD Merancang Instrumen Asesmen ...
PikeKusumaSantoso
 
POKJA 1 Kelompok Kerja 1 TPP PKK 11.pptx
POKJA 1 Kelompok Kerja 1 TPP PKK 11.pptxPOKJA 1 Kelompok Kerja 1 TPP PKK 11.pptx
POKJA 1 Kelompok Kerja 1 TPP PKK 11.pptx
KotogadangKependuduk
 
PELAKSANAAN + Link2 Materi Pelatihan_ PENGAWASAN P3DN & TKDN_ pd PENGADAAN Ba...
PELAKSANAAN + Link2 Materi Pelatihan_ PENGAWASAN P3DN & TKDN_ pd PENGADAAN Ba...PELAKSANAAN + Link2 Materi Pelatihan_ PENGAWASAN P3DN & TKDN_ pd PENGADAAN Ba...
PELAKSANAAN + Link2 Materi Pelatihan_ PENGAWASAN P3DN & TKDN_ pd PENGADAAN Ba...
Kanaidi ken
 
ppt landasan pendidikan Alat alat pendidikan PAI 9_
ppt landasan pendidikan Alat alat pendidikan PAI 9_ppt landasan pendidikan Alat alat pendidikan PAI 9_
ppt landasan pendidikan Alat alat pendidikan PAI 9_
setiatinambunan
 
RANCANGAN TINDAKAN AKSI NYATA MODUL 1.4.pptx
RANCANGAN TINDAKAN AKSI NYATA MODUL 1.4.pptxRANCANGAN TINDAKAN AKSI NYATA MODUL 1.4.pptx
RANCANGAN TINDAKAN AKSI NYATA MODUL 1.4.pptx
SurosoSuroso19
 
705368319-Ppt-Aksi-Nyata-Membuat-Rancangan-Pembelajaran-Dengan-Metode-Fonik.pptx
705368319-Ppt-Aksi-Nyata-Membuat-Rancangan-Pembelajaran-Dengan-Metode-Fonik.pptx705368319-Ppt-Aksi-Nyata-Membuat-Rancangan-Pembelajaran-Dengan-Metode-Fonik.pptx
705368319-Ppt-Aksi-Nyata-Membuat-Rancangan-Pembelajaran-Dengan-Metode-Fonik.pptx
nimah111
 
ATP Kimia Fase E Kelas X bisa deigunakan ditahun ajaran 2024/2025
ATP Kimia Fase E Kelas X bisa deigunakan ditahun ajaran 2024/2025ATP Kimia Fase E Kelas X bisa deigunakan ditahun ajaran 2024/2025
ATP Kimia Fase E Kelas X bisa deigunakan ditahun ajaran 2024/2025
PreddySilitonga
 
ALur Tujuan Pembelajaran Materi IPA Kelas VII (1).pptx
ALur Tujuan Pembelajaran Materi IPA  Kelas VII (1).pptxALur Tujuan Pembelajaran Materi IPA  Kelas VII (1).pptx
ALur Tujuan Pembelajaran Materi IPA Kelas VII (1).pptx
rusinaharva1
 
JUKNIS SOSIALIASI PPDB JATENG 2024/2025.PDF
JUKNIS SOSIALIASI PPDB JATENG 2024/2025.PDFJUKNIS SOSIALIASI PPDB JATENG 2024/2025.PDF
JUKNIS SOSIALIASI PPDB JATENG 2024/2025.PDF
budimoko2
 
Ppt landasan pendidikan Pai 9 _20240604_231000_0000.pdf
Ppt landasan pendidikan Pai 9 _20240604_231000_0000.pdfPpt landasan pendidikan Pai 9 _20240604_231000_0000.pdf
Ppt landasan pendidikan Pai 9 _20240604_231000_0000.pdf
fadlurrahman260903
 

Recently uploaded (20)

Pemaparan budaya positif di sekolah.pptx
Pemaparan budaya positif di sekolah.pptxPemaparan budaya positif di sekolah.pptx
Pemaparan budaya positif di sekolah.pptx
 
Kisi-kisi PAT IPS Kelas 8 semester 2.pdf
Kisi-kisi PAT IPS Kelas 8 semester 2.pdfKisi-kisi PAT IPS Kelas 8 semester 2.pdf
Kisi-kisi PAT IPS Kelas 8 semester 2.pdf
 
Chapter 19 Intermediate Accounting Kieso
Chapter 19 Intermediate Accounting KiesoChapter 19 Intermediate Accounting Kieso
Chapter 19 Intermediate Accounting Kieso
 
Pendampingan Individu 2 Modul 1 PGP 10 Kab. Sukabumi Jawa Barat
Pendampingan Individu 2 Modul 1 PGP 10 Kab. Sukabumi Jawa BaratPendampingan Individu 2 Modul 1 PGP 10 Kab. Sukabumi Jawa Barat
Pendampingan Individu 2 Modul 1 PGP 10 Kab. Sukabumi Jawa Barat
 
CP SEKOLAH DASAR KELAS 5 KURIKULUM MERDEKA.docx
CP SEKOLAH DASAR KELAS 5 KURIKULUM MERDEKA.docxCP SEKOLAH DASAR KELAS 5 KURIKULUM MERDEKA.docx
CP SEKOLAH DASAR KELAS 5 KURIKULUM MERDEKA.docx
 
Laporan Pembina OSIS UNTUK PMMOK.pdf.pdf
Laporan Pembina OSIS UNTUK PMMOK.pdf.pdfLaporan Pembina OSIS UNTUK PMMOK.pdf.pdf
Laporan Pembina OSIS UNTUK PMMOK.pdf.pdf
 
Teori Fungsionalisme Kulturalisasi Talcott Parsons (Dosen Pengampu : Khoirin ...
Teori Fungsionalisme Kulturalisasi Talcott Parsons (Dosen Pengampu : Khoirin ...Teori Fungsionalisme Kulturalisasi Talcott Parsons (Dosen Pengampu : Khoirin ...
Teori Fungsionalisme Kulturalisasi Talcott Parsons (Dosen Pengampu : Khoirin ...
 
MATERI SOSIALISASI PPDB JABAR utkMAS052024 (2).pdf
MATERI SOSIALISASI PPDB JABAR utkMAS052024 (2).pdfMATERI SOSIALISASI PPDB JABAR utkMAS052024 (2).pdf
MATERI SOSIALISASI PPDB JABAR utkMAS052024 (2).pdf
 
Refleksi pembelajaran guru bahasa inggris.pptx
Refleksi pembelajaran guru bahasa inggris.pptxRefleksi pembelajaran guru bahasa inggris.pptx
Refleksi pembelajaran guru bahasa inggris.pptx
 
materi sosialisai perencanaan visi misi satuan pendidikan.pptx
materi sosialisai perencanaan visi misi satuan pendidikan.pptxmateri sosialisai perencanaan visi misi satuan pendidikan.pptx
materi sosialisai perencanaan visi misi satuan pendidikan.pptx
 
2. PEMBELAJARAN YANG MENGUATKAN TRANSISI PAUD-SD Merancang Instrumen Asesmen ...
2. PEMBELAJARAN YANG MENGUATKAN TRANSISI PAUD-SD Merancang Instrumen Asesmen ...2. PEMBELAJARAN YANG MENGUATKAN TRANSISI PAUD-SD Merancang Instrumen Asesmen ...
2. PEMBELAJARAN YANG MENGUATKAN TRANSISI PAUD-SD Merancang Instrumen Asesmen ...
 
POKJA 1 Kelompok Kerja 1 TPP PKK 11.pptx
POKJA 1 Kelompok Kerja 1 TPP PKK 11.pptxPOKJA 1 Kelompok Kerja 1 TPP PKK 11.pptx
POKJA 1 Kelompok Kerja 1 TPP PKK 11.pptx
 
PELAKSANAAN + Link2 Materi Pelatihan_ PENGAWASAN P3DN & TKDN_ pd PENGADAAN Ba...
PELAKSANAAN + Link2 Materi Pelatihan_ PENGAWASAN P3DN & TKDN_ pd PENGADAAN Ba...PELAKSANAAN + Link2 Materi Pelatihan_ PENGAWASAN P3DN & TKDN_ pd PENGADAAN Ba...
PELAKSANAAN + Link2 Materi Pelatihan_ PENGAWASAN P3DN & TKDN_ pd PENGADAAN Ba...
 
ppt landasan pendidikan Alat alat pendidikan PAI 9_
ppt landasan pendidikan Alat alat pendidikan PAI 9_ppt landasan pendidikan Alat alat pendidikan PAI 9_
ppt landasan pendidikan Alat alat pendidikan PAI 9_
 
RANCANGAN TINDAKAN AKSI NYATA MODUL 1.4.pptx
RANCANGAN TINDAKAN AKSI NYATA MODUL 1.4.pptxRANCANGAN TINDAKAN AKSI NYATA MODUL 1.4.pptx
RANCANGAN TINDAKAN AKSI NYATA MODUL 1.4.pptx
 
705368319-Ppt-Aksi-Nyata-Membuat-Rancangan-Pembelajaran-Dengan-Metode-Fonik.pptx
705368319-Ppt-Aksi-Nyata-Membuat-Rancangan-Pembelajaran-Dengan-Metode-Fonik.pptx705368319-Ppt-Aksi-Nyata-Membuat-Rancangan-Pembelajaran-Dengan-Metode-Fonik.pptx
705368319-Ppt-Aksi-Nyata-Membuat-Rancangan-Pembelajaran-Dengan-Metode-Fonik.pptx
 
ATP Kimia Fase E Kelas X bisa deigunakan ditahun ajaran 2024/2025
ATP Kimia Fase E Kelas X bisa deigunakan ditahun ajaran 2024/2025ATP Kimia Fase E Kelas X bisa deigunakan ditahun ajaran 2024/2025
ATP Kimia Fase E Kelas X bisa deigunakan ditahun ajaran 2024/2025
 
ALur Tujuan Pembelajaran Materi IPA Kelas VII (1).pptx
ALur Tujuan Pembelajaran Materi IPA  Kelas VII (1).pptxALur Tujuan Pembelajaran Materi IPA  Kelas VII (1).pptx
ALur Tujuan Pembelajaran Materi IPA Kelas VII (1).pptx
 
JUKNIS SOSIALIASI PPDB JATENG 2024/2025.PDF
JUKNIS SOSIALIASI PPDB JATENG 2024/2025.PDFJUKNIS SOSIALIASI PPDB JATENG 2024/2025.PDF
JUKNIS SOSIALIASI PPDB JATENG 2024/2025.PDF
 
Ppt landasan pendidikan Pai 9 _20240604_231000_0000.pdf
Ppt landasan pendidikan Pai 9 _20240604_231000_0000.pdfPpt landasan pendidikan Pai 9 _20240604_231000_0000.pdf
Ppt landasan pendidikan Pai 9 _20240604_231000_0000.pdf
 

Graph-Struktur Data.pdf

  • 2. GRAPH • Graph adalah kumpulan dari simpul dan busur yang secara matematis dinyatakan sebagai : G = (V, E) Dimana G = Graph V = Simpul atau Vertex, atau Node, atau Titik E = Busur atau Edge, atau arc
  • 3. Contoh graph : C E Undirected graph e3 e7 edge e5 v1 A e2 vertex v2 B e1 e4 v4 D e6 v5 v3 V terdiri dari v1, v2, …, v5 E terdiri dari e1, e2, … , e7
  • 4. • Sebuah graph mungkin hanya terdiri dari satu simpul • Sebuah graph belum tentu semua simpulnya terhubung dengan busur • Sebuah graph mungkin mempunyai simpul yang tak terhubung dengan simpul yang lain • Sebuah graph mungkin semua simpulnya saling berhubungan
  • 5. Graph Berarah dan Graph Tak Berarah : B A C E B C E Directed graph Undirected graph Dapat dilihat dari bentuk busur yang artinya urutan penyebutan pasangan 2 simpul. e1 e3 e4 e7 e5 v1 A e2 v2 v4 D e6 v5 v3 v1 v2 v3 v5 D v4 e1 e2 e3 e4 e5 e6 e7 e8 e9 e10
  • 6. • Graph tak berarah (undirected graph atau non-directed graph) : • Urutan simpul dalam sebuah busur tidak dipentingkan. Mis busur e1 dapat disebut busur AB atau BA • Graph berarah (directed graph) : • Urutan simpul mempunyai arti. Mis busur AB adalah e1 sedangkan busur BA adalah e8.
  • 7. • Graph Berbobot (Weighted Graph) • Jika setiap busur mempunyai nilai yang menyatakan hubungan antara 2 buah simpul, maka busur tersebut dinyatakan memiliki bobot. • Bobot sebuah busur dapat menyatakan panjang sebuah jalan dari 2 buah titik, jumlah rata-rata kendaraan perhari yang melalui sebuah jalan, dll.
  • 8. Graph Berbobot : B A C E C E Directed graph Undirected graph Panjang busur (atau bobot) mungkin tidak digambarkan secara panjang yang proposional dengan bobotnya. Misal bobot 5 digambarkan lebih panjang dari 7. 5 3 12 6 8 v1 A 4 v2 B v4 D 3 v5 v3 v1 v2 v3 v5 D v4 5 e2 3 12 8 3 6 4 7 10
  • 9. Istilah pada graph Incident Jika e merupakan busur dengan simpul- simpulnya adalah v dan w yang ditulis e=(v,w), maka v dan w disebut “terletak” pada e, dan e disebut incident dengan v dan w. Degree (derajat), indegree dan outdegree Degree sebuah simpul adalah jumlah busur yang incident dengan simpul tersebut.
  • 10. Indegree sebuah simpul pada graph berarah adalah jumlah busur yang kepalanya incident dengan simpul tersebut, atau jumlah busur yang “masuk” atau menuju simpul tersebut. Outdegree sebuah simpul pada graph berarah adalah jumlah busur yang ekornya incident dengan simpul tersebut, atau jumlah busur yang “keluar” atau berasal dari simpul tersebut.
  • 11. 3. Adjacent Pada graph tidah berarah, 2 buah simpul disebut adjacent bila ada busur yang menghubungkan kedua simpul tersebut. Simpul v dan w disebut adjacent. w e v Pada graph berarah, simpul v disebut adjacent dengan simpul w bila ada busur dari w ke v. v e w
  • 12. 4. Successor dan Predecessor Pada graph berarah, bila simpul v adjacent dengan simpul w, maka simpul v adalah successor simpul w, dan simpul w adalah predecessor dari simpul v. 5. Path Sebuah path adalah serangkaian simpul- simpul yang berbeda, yang adjacent secara berturut-turut dari simpul satu ke simpul berikutnya. 3 4 4 4 4 2 3 1 2 1 2 1 2 1 3 3
  • 13. Representasi Graph dalam bentuk matrix • Adjacency Matrix Graph tak berarah B A C D E Graph 0 1 0 1 0 1 0 1 0 1 0 1 0 1 1 1 0 1 0 1 0 1 1 1 0 A 0 B C 1 2 A B C E 4 D 3 D E 0 1 2 4 3 Urut abjad Degree simpul : 3
  • 14. Representasi Graph dalam bentuk matrix • Adjacency Matrix Graph berarah Graph 0 1 0 1 0 1 0 1 0 1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0 A 0 B C D 1 2 3 A B C E 4 D E 0 1 2 4 3 B A C D E ke dari out in
  • 15. • Adjency List graph tak berarah • Digambarkan sebagai sebuah simpul yang memiliki 2 pointer. • Simpul vertex : Simpul edge : Representasi Graph dalam bentuk Linked List info info Menunjuk ke simpul vertex berikutnya, dalam untaian simpul yang ada. Menunjuk ke simpul edge pertama Menunjuk ke simpul edge berikutnya, bila masih ada. Menunjuk ke simpul vertex tujuan yang berhubungan dengan simpul vertex asal. left right left right
  • 16. • Define struct untuk sebuah simpul yang dapat digunakan sebagai vertex maupun edge. typedef struct tipeS { tipeS *Left; int INFO; tipeS *Right; }; tipeS *FIRST, *PVertex, *PEdge;
  • 17. Contoh : untuk vertex A, memiliki 2 edge yang terhubung yaitu e1 dan e2. A C D B E e2 Graph e1 B A C D E e1 e3 e4 e7 e5 e2 e6 Urut abjad
  • 18. Gambar di atas dapat disusun dengan lebih sederhana, sbb : A C D B E D A B A B C E D E C C D B A C D E Graph B E
  • 19. Adjency List graph berarah A C D B E D A B C E C B E B A C D E
  • 20. Graph berarah dan berbobot B A C D E 5 3 2 14 12 6 7 12 0 5 0 2 0 6 0 3 0 0 0 0 0 0 12 0 0 12 0 7 0 14 0 0 0 A 0 A B C D B 1 C 2 D E 3 4 E 0 1 2 3 4 Perhatikan pemilihan nilai 0.
  • 21. Penyelesaian kasus Graph halaman sebelumnya : • Define simpul untuk vertex dan edge • Mengidentifikasi Simpul pertama sebagai vertex yang pertama • Tambahkan vertex sisanya • Tambahkan edge pada masing-masing vertex yang telah terbentuk • Tampilkan representasi graph berikut bobotnya
  • 22.
  • 23.
  • 24.
  • 26. ALGORITMA DIJKSTRA • Algoritme Dijkstra, (sesuai penemunya Edsger Dijkstra), adalah sebuah algoritma yang dipakai dalam memecahkan permasalahan jarak terpendek (shortest path problem) untuk sebuah graf berarah (directed graph). • Algoritma ini dioublikasikan pada tahun 1959 jurnal Numerische Mathematik yang berjudul “A Note on Two Problems in Connexion with Graphs” dan dianggap sebagai algoritma greedy. • Permasalahan rute terpendek dari sebuah titik ke akhir titik lain adalah sebuah masalah klasik optimasi yang banyak digunakan untuk menguji sebuah algoritma yang diusulkan. Permasalahan rute terpendek dianggap cukup baik untuk mewakili masalah optimisasi, karena permasalahannya mudah dimengerti (hanya menjumlahkan seluruh edge yang dilalui) namun memiliki banyak pilihan solusi. • Menurut Andrew Goldberg peneliti Microsoft Research Silicon Valley, mengatakan ada banyak alasan mengapa peneliti terus mempelajari masalah pencarian jalan terpendek. “Jalan terpendek adalah masalah optimasi yang relevan untuk berbagai macam aplikasi, seperti jaringan routing, game, desain sirkuit, dan pemetaan”.
  • 27. Contoh Sebagai contoh hitunglah Jarak terdekat dari V1 ke V7 pada gambar berikut ini.
  • 28. jawaban Dengan demikian jarak terpendek dari V1 ke V7 adalah 16 dengan jalur V1->V2->V3->V5->V6->V7
  • 29. [buku utama, bab 6.5] GRAPH vs TREE • Sebuah Graph memiliki ciri berbeda dengan Tree • Dalam Graph, edge bebas menghubungkan node-node mana pun. • Dalam Tree, satu node hanya boleh terhubung ke satu parent dan beberapa child, tidak boleh ke beberapa parent. • Dalam sebuah Graph bisa dirunut jalur edge yang membentuk jalur putaran dari 1 node kembali ke node semula; ini tidak boleh terjadi dalam Tree By @Dikky Suryadi M.Kom
  • 30. SPANNING TREE • Spanning Tree adalah sebuah Tree yang dibuat dari sebuah Graph dengan menghilangkan beberapa edge- nya. Tree ini harus mengandung semua node yang dimiliki Graph. [buku utama, ilustrasi 6.3]
  • 31. MINIMUM SPANNING TREE • Jika Weighted Graph diubah menjadi Spanning Tree, tiap kombinasi Tree yang dapat dibuat memiliki total weight yang berbeda-beda. • Problem Minimum Spanning Tree (MST) berusaha mencari Tree seperti apa yang bisa dibuat dari sebuah Weighted Graph dengan total weight seminimal mungkin.
  • 32. MST DENGAN METODE GREEDY • Algoritma Prim-Dijkstra • Ditemukan oleh Robert C. Prim di tahun 1957 dan oleh Edsger Dijkstra di tahun 1959. • Algoritma Kruskal • Ditemukan oleh Joseph Kruskal di tahun 1956. By @Dikky Suryadi M.Kom
  • 33. • Langkah-langkah algoritma Prim-Dijkstra : 1. Tentukan node awal, asumsikan semua edge berwarna hitam 2. Dari semua edge yang terhubung ke node awal tersebut, pilih edge dengan bobot terkecil 3. Tandai edge yang dipilih dengan warna hijau 4. Apabila ada edge yang kedua node-nya sudah terkena jalur hijau, tandai edge tersebut dengan warna merah (karena jika dipilih akan membentuk jalur putaran à melanggar syarat tree) 5. Tentukan node-node yang berada di jalur hijau sebagai node aktif 6. Bandingkan semua edge yang terhubung ke node aktif (hanya edge hitam), pilih yang bobotnya terkecil 7. Tandai edge yang dipilih dengan warna hijau 8. Ulangi dari langkah ke-4 hingga semua node terlewati jalur 9. Ketika semua node telah dilewati jalur hijau, maka jalur hijau ALGORITMA PRIM- DIJKSTRA
  • 34. • Langkah-langkah algoritma Kruskal : 1. Asumsikan semua edge berwarna hitam 2. Bandingkan bobot semua edge hitam, pilih edge dengan bobot terkecil 3. Tandai edge yang dipilih dengan warna hijau 4. Apabila ada edge yang kedua node-nya sudah terkena jalur hijau, tandai edge tersebut dengan warna merah (karena jika dipilih akan membentuk jalur putaran à melanggar syarat tree) 5. Ulangi dari langkah ke-2 hingga semua node terlewati jalur hijau 6. Ketika semua node telah dilewati jalur hijau, maka jalur hijau yang terbentuk adalah MST yang dicari ALGORITMA KRUSKAL By @Dikky Suryadi M.Kom
  • 35. • Pelajari langkah-langkah algoritma pada : • bab 6.5.1 (algoritma Prim-Dijkstra) • bab 6.5.2 (algoritma Kruskal) CONTOH PROBLEM MST
  • 36. SHORTEST PATH • Dalam sebuah Graph yang setiap edge yang memiliki weight (bobot), jarak terpendek (shortest path) antara 2 node dapat dicari dengan Metode Greedy • Misal kita hendak mencari jalur terpendek (shortest path) dari node A ke node F, bagaimana cara menghitungnya dengan Metode Greedy? [buku utama, bab 6.7] By @Dikky Suryadi M.Kom
  • 37. METODE GREEDY SHORTEST PATH • Langkah-langkah Metode Greedy 1.Berangkat dari node awal 2.Pilih edge yang memiliki bobot terkecil dari node tersebut 3.Maju ke node yang dituju 4.Ulangi dari langkah ke-2 hingga mencapai node tujuan By @Dikky Suryadi M.Kom
  • 38. CONTOH PROBLEM SHORTEST PATH [buku utama, bab 6.7] By @Dikky Suryadi M.Kom
  • 39. • Metode Greedy menghasilkan solusi yang cukup baik, tapi bukan yang paling baik • Diskusikan mengapa bisa begitu? SOLUSI OPTIMAL? • Benarkah solusi yang didaptkan dari Metode Greedy untuk Shortest Path problem adalah benar-benar solusi terbaik? • Coba bandingkan solusi berikut : By @Dikky Suryadi M.Kom
  • 40. • Diskusikan mengapa kadang Metode Greedy gagal menghasilkan solusi terbaik! LATIHAN • Buatlah Minimum Spanning Tree menggunakan algoritma Prim-Dijkstra dan algoritma Kruskal • Carilah Shortest Path dari node A ke node F dengan Metode Greedy! By @Dikky Suryadi M.Kom
  • 41. By @Dikky Suryadi M.Kom REVIEW • Apa yang sudah dipahami? • Apa yang akan dibahas selanjutnya?