verİ yapilari graph’larakademik.duzce.edu.tr/content/dokumanlar/gunaytemur/... · ·...
TRANSCRIPT
![Page 1: VERİ YAPILARI GRAPH’LARakademik.duzce.edu.tr/Content/Dokumanlar/gunaytemur/... · · 2016-12-23Bu algoritma yönlü döngüsüz graflar üzerinde tanımlanan bir algoritmadır](https://reader034.vdocuments.pub/reader034/viewer/2022042620/5a9fd8c27f8b9a62178d422e/html5/thumbnails/1.jpg)
VERİ YAPILARIGRAPH’LAR
Düzce Üniversitesi
Teknoloji Fakültesi
ÖĞR.GÖR.GÜNAY TEMÜR 1
![Page 2: VERİ YAPILARI GRAPH’LARakademik.duzce.edu.tr/Content/Dokumanlar/gunaytemur/... · · 2016-12-23Bu algoritma yönlü döngüsüz graflar üzerinde tanımlanan bir algoritmadır](https://reader034.vdocuments.pub/reader034/viewer/2022042620/5a9fd8c27f8b9a62178d422e/html5/thumbnails/2.jpg)
GRAPH (ÇİZGE - GRAF)
Terminoloji
Çizge Kullanım Alanları
Çizge Gösterimi
Komşuluk Matrisi
Komşuluk Listesi
Çizge Üzerinde Gezinme
DFS
BFS
İlgili Algoritmalar
Toplojik Sıralama
ÖĞR.GÖR.GÜNAY TEMÜR 2
![Page 3: VERİ YAPILARI GRAPH’LARakademik.duzce.edu.tr/Content/Dokumanlar/gunaytemur/... · · 2016-12-23Bu algoritma yönlü döngüsüz graflar üzerinde tanımlanan bir algoritmadır](https://reader034.vdocuments.pub/reader034/viewer/2022042620/5a9fd8c27f8b9a62178d422e/html5/thumbnails/3.jpg)
ÇİZGE (GRAPH) GİRİŞ
•Köşe (vertex) isimli düğümlerden ve kenar (edge) isimli
köşeleri birbirine bağlayan bağlantılardan oluşan veri
yapısıdır.
•Ağaçlar gibi çizgeler de doğrusal olmayan veri yapılarıgrubuna girerler.
ÖĞR.GÖR.GÜNAY TEMÜR 3
düğüm
C
D
E
A F
B
kenar
![Page 4: VERİ YAPILARI GRAPH’LARakademik.duzce.edu.tr/Content/Dokumanlar/gunaytemur/... · · 2016-12-23Bu algoritma yönlü döngüsüz graflar üzerinde tanımlanan bir algoritmadır](https://reader034.vdocuments.pub/reader034/viewer/2022042620/5a9fd8c27f8b9a62178d422e/html5/thumbnails/4.jpg)
ÇİZGE (GRAPH) GİRİŞ (DEVAM…)
• Bir G çizgesi G(V, E) şeklinde gösterilir:
a. V = V(G) Kümesi: Küme elemanları, G’nin düğümleri
(nodes), noktaları (points) veya köşeleri (vertices)
b. E = E(G) Kümesi: Küme elemanları G’nin kenarları
(edges) olarak adlandırılan sırasız düğüm ikililerini içerir.
ÖĞR.GÖR.GÜNAY TEMÜR 4
![Page 5: VERİ YAPILARI GRAPH’LARakademik.duzce.edu.tr/Content/Dokumanlar/gunaytemur/... · · 2016-12-23Bu algoritma yönlü döngüsüz graflar üzerinde tanımlanan bir algoritmadır](https://reader034.vdocuments.pub/reader034/viewer/2022042620/5a9fd8c27f8b9a62178d422e/html5/thumbnails/5.jpg)
ÇİZGE (GRAPH) GİRİŞ (DEVAM…)
Çizgeler, düzlemsel diyagramlarla gösterilir.
V kümesindeki her v düğümü bir nokta (ya da küçük çember) iletemsil edilir ve her e = {v1, v2} kenarı, v1 ve v2 uç noktalarınıbağlayan bir çizgi ile gösterilir.
Örnek:
ÖĞR.GÖR.GÜNAY TEMÜR 5
V = {A, B, C, D}
E = {e1, e2, e3, e4, e5}
![Page 6: VERİ YAPILARI GRAPH’LARakademik.duzce.edu.tr/Content/Dokumanlar/gunaytemur/... · · 2016-12-23Bu algoritma yönlü döngüsüz graflar üzerinde tanımlanan bir algoritmadır](https://reader034.vdocuments.pub/reader034/viewer/2022042620/5a9fd8c27f8b9a62178d422e/html5/thumbnails/6.jpg)
YÖNLÜ VE YÖNSÜZ KENAR
Yönsüz Kenar (undirected edge): Çizgi seklinde yönü belirtilmeyen kenarlar yönsüz kenarlardır.
Yönsüz kenarlarda (v1,v2) olması ile (v2,v1) olması arasında fark yoktur.
Yönlü Kenar (directed edge): Ok şeklinde gösterilen kenarlar yönlü kenarlardır.
ÖĞR.GÖR.GÜNAY TEMÜR 6
![Page 7: VERİ YAPILARI GRAPH’LARakademik.duzce.edu.tr/Content/Dokumanlar/gunaytemur/... · · 2016-12-23Bu algoritma yönlü döngüsüz graflar üzerinde tanımlanan bir algoritmadır](https://reader034.vdocuments.pub/reader034/viewer/2022042620/5a9fd8c27f8b9a62178d422e/html5/thumbnails/7.jpg)
TERMİNOLOJİ
1. Komşu Köşeler (Adjacent): Aralarındadoğrudan bağlantı (kenar) bulunan i ve jköşeleri komşudur. Diğer köşe çiftleri komşudeğildir.
2. Bağlantı (incident): Komşu i ve j köşeleriarasındaki kenar (i, j) bağlantıdır.
3. Bir Köşenin Derecesi (degree): Bir köşeyebağlı olan kenarların sayısıdır.
ÖĞR.GÖR.GÜNAY TEMÜR 7
Soru1: Komşu olmayan köşeler hangileridir?
Soru2: 1’in derecesi kaçtır?
![Page 8: VERİ YAPILARI GRAPH’LARakademik.duzce.edu.tr/Content/Dokumanlar/gunaytemur/... · · 2016-12-23Bu algoritma yönlü döngüsüz graflar üzerinde tanımlanan bir algoritmadır](https://reader034.vdocuments.pub/reader034/viewer/2022042620/5a9fd8c27f8b9a62178d422e/html5/thumbnails/8.jpg)
TERMİNOLOJİ (DEVAM…)
4. Yönsüz Çizge (undirected graph): Tüm kenarlarıyönsüz olan çizgeye yönsüz çizge denilir. Yönsüzçizgede bir köşe çifti arasında en fazla bir kenarolabilir.
5. Yönlü Çizge (directed graph, digraph): Tümkenarları yönlü olan çizgeye yönlü çizge adı verilir.Yönlü çizgede bir köşe çifti arasında ters yönlerdeolmak üzere en fazla iki kenar olabilir.
6. Döngü (Loop): (i, i) seklinde gösterilen ve bir köşeyikendine bağlayan kenar.
ÖĞR.GÖR.GÜNAY TEMÜR 8
![Page 9: VERİ YAPILARI GRAPH’LARakademik.duzce.edu.tr/Content/Dokumanlar/gunaytemur/... · · 2016-12-23Bu algoritma yönlü döngüsüz graflar üzerinde tanımlanan bir algoritmadır](https://reader034.vdocuments.pub/reader034/viewer/2022042620/5a9fd8c27f8b9a62178d422e/html5/thumbnails/9.jpg)
TERMİNOLOJİ (DEVAM…)
Yönlü Çizge ve Döngü (Loop)
ÖĞR.GÖR.GÜNAY TEMÜR 9
• G=(V, E)
• V={0,1,2,3,4}
• E={(0,1), (1,2), (0,3), <3,0>, <2,2>, <4,3>}
0
4
1
2
3
![Page 10: VERİ YAPILARI GRAPH’LARakademik.duzce.edu.tr/Content/Dokumanlar/gunaytemur/... · · 2016-12-23Bu algoritma yönlü döngüsüz graflar üzerinde tanımlanan bir algoritmadır](https://reader034.vdocuments.pub/reader034/viewer/2022042620/5a9fd8c27f8b9a62178d422e/html5/thumbnails/10.jpg)
TERMİNOLOJİ (DEVAM…)
7. Ağırlıklı (Weighted) Çizge: Çizge kenarları üzerindeağırlıkları olabilir. Eğer kenarlar üzerinde ağırlıklarvarsa bu tür çizgelere ağırlıklı/maliyetli çizge(Weighted Graphs) denir. Ağırlık uygulamadanuygulamaya değişir.
Şehirler arasındaki uzaklık
Routerler arası bant genişliği
ÖĞR.GÖR.GÜNAY TEMÜR 10
Sakarya
Bilecik İzmit
5
8
4
![Page 11: VERİ YAPILARI GRAPH’LARakademik.duzce.edu.tr/Content/Dokumanlar/gunaytemur/... · · 2016-12-23Bu algoritma yönlü döngüsüz graflar üzerinde tanımlanan bir algoritmadır](https://reader034.vdocuments.pub/reader034/viewer/2022042620/5a9fd8c27f8b9a62178d422e/html5/thumbnails/11.jpg)
YOL (PATH)
Basit Yol (Simple Path): Tüm düğümlerin farklı olduğu yoldur.
Daire (Cycle): Başlangıç ve bitiş düğümleri aynı olan basit yol.(Tamamlanmış Graf)
Uzunluk: Bir yol üzerindeki kenarların sayısının toplamıdır.
ÖĞR.GÖR.GÜNAY TEMÜR 11
Basit Yol: Sakarya, İzmit veya Sakarya, Bilecik
Daire: Sakarya, İzmit, Bilecik, Sakarya
Sakarya
Bilecik İzmit
5
8
4
![Page 12: VERİ YAPILARI GRAPH’LARakademik.duzce.edu.tr/Content/Dokumanlar/gunaytemur/... · · 2016-12-23Bu algoritma yönlü döngüsüz graflar üzerinde tanımlanan bir algoritmadır](https://reader034.vdocuments.pub/reader034/viewer/2022042620/5a9fd8c27f8b9a62178d422e/html5/thumbnails/12.jpg)
ÇİZGE KULLANIM ALANLARI
Bilgisayar ağlarında, elektriksel ve diğer ağların analizinde,
Kimyasal bileşiklerin moleküler yapılarının araştırılmasında,
Ulaşım ağlarında (kara, deniz ve havayolları),
Planlama projelerinde,
Sosyal alanlarda ve diğer pek çok alanda kullanılmaktadır.
Not: Eğer bir problemin çözümü GRAF veri modelinebenzetilebiliyorsa, o problem için algoritmik birdurum elde edilmiş olur.
ÖĞR.GÖR.GÜNAY TEMÜR 12
![Page 13: VERİ YAPILARI GRAPH’LARakademik.duzce.edu.tr/Content/Dokumanlar/gunaytemur/... · · 2016-12-23Bu algoritma yönlü döngüsüz graflar üzerinde tanımlanan bir algoritmadır](https://reader034.vdocuments.pub/reader034/viewer/2022042620/5a9fd8c27f8b9a62178d422e/html5/thumbnails/13.jpg)
ÇİZGE KULLANIM ALANLARI (DEVAM…)
ÖĞR.GÖR.GÜNAY TEMÜR13
Örnek (Generic)
• V = 6 kişi: sırasıyla yaşları:
• Ahmet, Hilal, Cem, Deniz, Derya ve Yunus,
• 12, 15, 12, 15, 13 ve 13.
• E ={(x, y) | Eğer x, y den daha genç ise}
Ahmet Cem
Hilal Deniz
Derya Yunus
![Page 14: VERİ YAPILARI GRAPH’LARakademik.duzce.edu.tr/Content/Dokumanlar/gunaytemur/... · · 2016-12-23Bu algoritma yönlü döngüsüz graflar üzerinde tanımlanan bir algoritmadır](https://reader034.vdocuments.pub/reader034/viewer/2022042620/5a9fd8c27f8b9a62178d422e/html5/thumbnails/14.jpg)
ÇİZGE KULLANIM ALANLARI (DEVAM…)
ÖĞR.GÖR.GÜNAY TEMÜR 14
Örnek (Uçuş sistemi)• Her bir düğüm bir şehri gösterir
• Her bir kenar iki şehir arasındaki doğrudan uçuşu gösterir
• Doğrudan uçuşların sorgulanmasında cevap bir kenardır.
• Bir yere ulaşmak için “A’ dan B’ ye yol varmı” sorusu sorulur.
• Maliyetleri kenarlara bile ekleyebiliriz. (ağırlıklı), daha sonra
“A’dan B’ ye en ucuz yol hangisidir?” diye sorabiliriz.
![Page 15: VERİ YAPILARI GRAPH’LARakademik.duzce.edu.tr/Content/Dokumanlar/gunaytemur/... · · 2016-12-23Bu algoritma yönlü döngüsüz graflar üzerinde tanımlanan bir algoritmadır](https://reader034.vdocuments.pub/reader034/viewer/2022042620/5a9fd8c27f8b9a62178d422e/html5/thumbnails/15.jpg)
ÇİZGE GÖSTERİMİ
İki popüler gösterim bulunmaktadır. Her ikisi de farklı yönlerden düğüm ve kenar kümelerini gösterir.
1. Komşuluk Matrisi: Çizgeyi göstermek için D matrisi kullanılır.
2. Komşuluk Listesi: Bağlantılı listelerin bir boyutlu dizisi kullanılır.
ÖĞR.GÖR.GÜNAY TEMÜR 15
![Page 16: VERİ YAPILARI GRAPH’LARakademik.duzce.edu.tr/Content/Dokumanlar/gunaytemur/... · · 2016-12-23Bu algoritma yönlü döngüsüz graflar üzerinde tanımlanan bir algoritmadır](https://reader034.vdocuments.pub/reader034/viewer/2022042620/5a9fd8c27f8b9a62178d422e/html5/thumbnails/16.jpg)
KOMŞULUK MATRİSİ
ÖĞR.GÖR.GÜNAY TEMÜR 16
![Page 17: VERİ YAPILARI GRAPH’LARakademik.duzce.edu.tr/Content/Dokumanlar/gunaytemur/... · · 2016-12-23Bu algoritma yönlü döngüsüz graflar üzerinde tanımlanan bir algoritmadır](https://reader034.vdocuments.pub/reader034/viewer/2022042620/5a9fd8c27f8b9a62178d422e/html5/thumbnails/17.jpg)
KOMŞULUK MATRİSİ (DEVAM…)
ÖĞR.GÖR.GÜNAY TEMÜR 17
2
4
3
5
1
7
6
9
8
0
0 1 2 3 4 5 6 7 8 9
0 0 0 0 0 0 0 0 0 1 0
1 0 0 1 1 0 0 0 1 0 1
2 0 1 0 0 1 0 0 0 1 0
3 0 1 0 0 1 1 0 0 0 0
4 0 0 1 1 0 0 0 0 0 0
5 0 0 0 1 0 0 1 0 0 0
6 0 0 0 0 0 1 0 1 0 0
7 0 1 0 0 0 0 1 0 0 0
8 1 0 1 0 0 0 0 0 0 1
9 0 1 0 0 0 0 0 0 1 0
![Page 18: VERİ YAPILARI GRAPH’LARakademik.duzce.edu.tr/Content/Dokumanlar/gunaytemur/... · · 2016-12-23Bu algoritma yönlü döngüsüz graflar üzerinde tanımlanan bir algoritmadır](https://reader034.vdocuments.pub/reader034/viewer/2022042620/5a9fd8c27f8b9a62178d422e/html5/thumbnails/18.jpg)
KOMŞULUK MATRİSİ (DEVAM…)
İki boyutlu dizi ile gerçekleştirilebilir.
Uygulaması basittir.
Kenar Oluşturmak ve kaldırmak kolaydır.
Hafızada fazla yer kaplar.
ÖĞR.GÖR.GÜNAY TEMÜR 18
![Page 19: VERİ YAPILARI GRAPH’LARakademik.duzce.edu.tr/Content/Dokumanlar/gunaytemur/... · · 2016-12-23Bu algoritma yönlü döngüsüz graflar üzerinde tanımlanan bir algoritmadır](https://reader034.vdocuments.pub/reader034/viewer/2022042620/5a9fd8c27f8b9a62178d422e/html5/thumbnails/19.jpg)
KOMŞULUK LİSTESİ
ÖĞR.GÖR.GÜNAY TEMÜR 19
![Page 20: VERİ YAPILARI GRAPH’LARakademik.duzce.edu.tr/Content/Dokumanlar/gunaytemur/... · · 2016-12-23Bu algoritma yönlü döngüsüz graflar üzerinde tanımlanan bir algoritmadır](https://reader034.vdocuments.pub/reader034/viewer/2022042620/5a9fd8c27f8b9a62178d422e/html5/thumbnails/20.jpg)
KOMŞULUK LİSTESİ (DEVAM…)
ÖĞR.GÖR.GÜNAY TEMÜR 20
0
1
2
3
4
5
6
7
8
9
2 3 7 9
8
1 4 8
1 4 5
2 3
3 6
5 7
1 6
0 2 9
1 8
2
4
3
5
1
7
6
9
8
0
![Page 21: VERİ YAPILARI GRAPH’LARakademik.duzce.edu.tr/Content/Dokumanlar/gunaytemur/... · · 2016-12-23Bu algoritma yönlü döngüsüz graflar üzerinde tanımlanan bir algoritmadır](https://reader034.vdocuments.pub/reader034/viewer/2022042620/5a9fd8c27f8b9a62178d422e/html5/thumbnails/21.jpg)
KOMŞULUK LİSTESİ (DEVAM…)
Bağlı liste içeren dizi ile gerçekleştirimi yapılır.
Uygulaması daha karmaşıktır.
Hafıza kullanımı komşuluk matrisine göre daha optimaldir.
ÖĞR.GÖR.GÜNAY TEMÜR 21
![Page 22: VERİ YAPILARI GRAPH’LARakademik.duzce.edu.tr/Content/Dokumanlar/gunaytemur/... · · 2016-12-23Bu algoritma yönlü döngüsüz graflar üzerinde tanımlanan bir algoritmadır](https://reader034.vdocuments.pub/reader034/viewer/2022042620/5a9fd8c27f8b9a62178d422e/html5/thumbnails/22.jpg)
ÖRNEK – YÖNLÜ ÇİZGE
ÖĞR.GÖR.GÜNAY TEMÜR 22
Komşuluk Listesi
Komşuluk Matrisi
![Page 23: VERİ YAPILARI GRAPH’LARakademik.duzce.edu.tr/Content/Dokumanlar/gunaytemur/... · · 2016-12-23Bu algoritma yönlü döngüsüz graflar üzerinde tanımlanan bir algoritmadır](https://reader034.vdocuments.pub/reader034/viewer/2022042620/5a9fd8c27f8b9a62178d422e/html5/thumbnails/23.jpg)
ÇİZGE ÜZERİNDE GEZİNME (TRAVERSE)
Çizge üzerinde dolaşma; çizge düğümleri vekenarları üzerinde istenen bir işi yapacak veya birproblemi çözecek biçimde hareket etmektir.
Çizge üzerinde dolaşma yapan birçok yaklaşım veyöntem bulunmaktadır. En önemli iki tanesi aşağıdakigibidir:
BFS (Breadth First Search) (Sığ Öncelikli Arama) Yöntemi
DFS (Depth First Search) (Derin Öncelikli Arama) Yöntemi
ÖĞR.GÖR.GÜNAY TEMÜR 23
![Page 24: VERİ YAPILARI GRAPH’LARakademik.duzce.edu.tr/Content/Dokumanlar/gunaytemur/... · · 2016-12-23Bu algoritma yönlü döngüsüz graflar üzerinde tanımlanan bir algoritmadır](https://reader034.vdocuments.pub/reader034/viewer/2022042620/5a9fd8c27f8b9a62178d422e/html5/thumbnails/24.jpg)
ÇİZGE ÜZERİNDE GEZİNME (DEVAM…)
Depth-First Search (DFS)
Bir düğümden başla, düğümün bir kenarında o kenarüzerinde gidilebilecek en uzak düğüme kadar sürdür.
Geri gel (backtracking) ve diğer kenarı dene.
Tüm düğümler gezilene kadar devam et.
Breadth-First Search (BFS)
Başlangıç düğümünden başla ve tüm komşuları ziyaret et.
Daha sonra komşunun komşularını ziyaret et.
Başlangıç düğümünden başlayıp dışa doğru dalga gibiilerle.
ÖĞR.GÖR.GÜNAY TEMÜR 24
![Page 25: VERİ YAPILARI GRAPH’LARakademik.duzce.edu.tr/Content/Dokumanlar/gunaytemur/... · · 2016-12-23Bu algoritma yönlü döngüsüz graflar üzerinde tanımlanan bir algoritmadır](https://reader034.vdocuments.pub/reader034/viewer/2022042620/5a9fd8c27f8b9a62178d422e/html5/thumbnails/25.jpg)
DFS GÖSTERİM
ÖĞR.GÖR.GÜNAY TEMÜR 25
Çizge
ÇIKTI : a
STACK
c f e b g h d
fc
d b
ea
g
h
![Page 26: VERİ YAPILARI GRAPH’LARakademik.duzce.edu.tr/Content/Dokumanlar/gunaytemur/... · · 2016-12-23Bu algoritma yönlü döngüsüz graflar üzerinde tanımlanan bir algoritmadır](https://reader034.vdocuments.pub/reader034/viewer/2022042620/5a9fd8c27f8b9a62178d422e/html5/thumbnails/26.jpg)
BFS GÖSTERİM
ÖĞR.GÖR.GÜNAY TEMÜR 26
Çizge
ÇIKTI : a
YIĞIN
c d f h e b g
fc
d b
ea
g
h
![Page 27: VERİ YAPILARI GRAPH’LARakademik.duzce.edu.tr/Content/Dokumanlar/gunaytemur/... · · 2016-12-23Bu algoritma yönlü döngüsüz graflar üzerinde tanımlanan bir algoritmadır](https://reader034.vdocuments.pub/reader034/viewer/2022042620/5a9fd8c27f8b9a62178d422e/html5/thumbnails/27.jpg)
GRAFLARIN BELLEK ÜZERİNDE TUTULMASI
Bellek
Gereksinimi
Bağlantı
Sorugulama
Bağlantı
Ekleme
Matris Üzerinde N2*b O(1) O(1)
İki Dizi Üzerinde ((2*m-c)+(N+1)*b O(d) O(m)
Bağlantılı Liste İle N*(b+(d*a)) O(N2) O(N2)
Dizi-Bağlantılı Liste (N+2*m)*(b+a) O(d) O(d)
ÖĞR.GÖR.GÜNAY TEMÜR 27
N= Düğüm Sayısı
m= Kenar sayısı
d= Düğüm derecesi
c= Çevrimli kenar sayısı
b= Veri türü boyutu
a= Bellek adres boyutu
![Page 28: VERİ YAPILARI GRAPH’LARakademik.duzce.edu.tr/Content/Dokumanlar/gunaytemur/... · · 2016-12-23Bu algoritma yönlü döngüsüz graflar üzerinde tanımlanan bir algoritmadır](https://reader034.vdocuments.pub/reader034/viewer/2022042620/5a9fd8c27f8b9a62178d422e/html5/thumbnails/28.jpg)
TOPLOJİK SIRALAMA
Bu algoritma yönlü döngüsüz graflar üzerinde tanımlanan biralgoritmadır.
Hatırlayalım:
ÖĞR.GÖR.GÜNAY TEMÜR 28
f
d b
e
a f
d b
e
a
DöngülüDöngüsüz
![Page 29: VERİ YAPILARI GRAPH’LARakademik.duzce.edu.tr/Content/Dokumanlar/gunaytemur/... · · 2016-12-23Bu algoritma yönlü döngüsüz graflar üzerinde tanımlanan bir algoritmadır](https://reader034.vdocuments.pub/reader034/viewer/2022042620/5a9fd8c27f8b9a62178d422e/html5/thumbnails/29.jpg)
ÖRNEK:
C1,C2,C3,C4,C5 alınması gereken 5 adet ders olsun. Buna bağlı
olarak;
C1 ve C2 nin ön şartı yok,
C3, C1 ve C2 yi ön şart alıyor,
C4, C3 ü ön şart alıyor,
C5, C3 ve C4 ü ön şart alıyor,
Bu şartlara bağlı olarak öğrencilerin dersleri alma sırasını oluşturalım.
ÖĞR.GÖR.GÜNAY TEMÜR 29
![Page 30: VERİ YAPILARI GRAPH’LARakademik.duzce.edu.tr/Content/Dokumanlar/gunaytemur/... · · 2016-12-23Bu algoritma yönlü döngüsüz graflar üzerinde tanımlanan bir algoritmadır](https://reader034.vdocuments.pub/reader034/viewer/2022042620/5a9fd8c27f8b9a62178d422e/html5/thumbnails/30.jpg)
ÖRNEK: (DEVAM...)
Dersleri grafların köşeleri, ön şartları da yönlü kenarlar kabul ederek, bir graf oluşturalım;
ÖĞR.GÖR.GÜNAY TEMÜR 30
c3
c2 c5
c4c1
![Page 31: VERİ YAPILARI GRAPH’LARakademik.duzce.edu.tr/Content/Dokumanlar/gunaytemur/... · · 2016-12-23Bu algoritma yönlü döngüsüz graflar üzerinde tanımlanan bir algoritmadır](https://reader034.vdocuments.pub/reader034/viewer/2022042620/5a9fd8c27f8b9a62178d422e/html5/thumbnails/31.jpg)
ÖRNEK: (DEVAM...)
NASIL SIRALANACAK: İndirge ve Çöz yöntemiyle kendisine gelen vekenar bulunmayan bir düğümü kaynak olarak seçip graftan çıkarıpişlemler (n-1) düğümlü graf ile devam ettirilir. Graf ta hiç düğümkalmayınca çözüm tamamlanmış olur.
ÖĞR.GÖR.GÜNAY TEMÜR 31
c3
c2 c5
c4c1
c3
c2
c5c4
c1
Eşit Olduğu İçin
![Page 32: VERİ YAPILARI GRAPH’LARakademik.duzce.edu.tr/Content/Dokumanlar/gunaytemur/... · · 2016-12-23Bu algoritma yönlü döngüsüz graflar üzerinde tanımlanan bir algoritmadır](https://reader034.vdocuments.pub/reader034/viewer/2022042620/5a9fd8c27f8b9a62178d422e/html5/thumbnails/32.jpg)
İYİ ÇALIŞMALAR…
ÖĞR.GÖR.GÜNAY TEMÜR 32
![Page 33: VERİ YAPILARI GRAPH’LARakademik.duzce.edu.tr/Content/Dokumanlar/gunaytemur/... · · 2016-12-23Bu algoritma yönlü döngüsüz graflar üzerinde tanımlanan bir algoritmadır](https://reader034.vdocuments.pub/reader034/viewer/2022042620/5a9fd8c27f8b9a62178d422e/html5/thumbnails/33.jpg)
YARARLANILAN KAYNAKLAR
•Ders Kitabı:
•Data Structures through JAVA, V.V.Muniswamy
•Yardımcı Okumalar:
•Data Structures and Algorithms in Java, NarashimaKarumanchi
•Data Structures, Algorithms and Applications in Java, SartajSahni
•Algorithms, Robert Sedgewick
•Yrd. Doç. Dr. Deniz KILINÇ, Celal Bayar Üniversitesi
ÖĞR.GÖR.GÜNAY TEMÜR 33