Σχεδίαση & Ανάλυση Αλγορίθμων

Σχετικά έγγραφα
Σχεδίαση και Ανάλυση Αλγορίθμων

Θεωρία Γραφημάτων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές

Αλγόριθμοι Γραφημάτων

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ

Εισαγωγή στους Αλγορίθμους

Δομές Δεδομένων. Δημήτρης Μιχαήλ. Γραφήματα. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο

Αλγόριθμοι Γραφημάτων

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ

Αναζήτηση Κατά Βάθος. Επιμέλεια διαφανειών: Δ. Φωτάκης Συμπληρώσεις: Α. Παγουρτζής. Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών

Αναζήτηση Κατά Πλάτος

Αναζήτηση Κατά Πλάτος

Εισαγωγή στους Αλγορίθμους Ενότητα 7η

Αναζήτηση Κατά Βάθος. Επιµέλεια διαφανειών:. Φωτάκης διαφάνειες για SCC: A. Παγουρτζής. Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών

Γράφοι. Ένας γράφος ή αλλιώς γράφηµα αποτελείται απο. Εφαρµογές: Τηλεπικοινωνιακά και Οδικά ίκτυα, Ηλεκτρονικά Κυκλώµατα, Β.. κ.ά.

Σχεδίαση & Ανάλυση Αλγορίθμων

Κατευθυνόμενα γραφήματα. Μαθηματικά Πληροφορικής 6ο Μάθημα. Βρόγχοι. Μη κατευθυνόμενα γραφήματα. Ορισμός

Αναζήτηση Κατά Πλάτος

(elementary graph algorithms)

Αναζήτηση Κατά Πλάτος

ΔΙΑΣΧΙΣΗ ΓΡΑΦΗΜΑΤΩΝ 1

Στοιχεία Θεωρίας Γράφων (Graph Theory)

Αναζήτηση Κατά Βάθος. ιδάσκοντες: Σ. Ζάχος,. Φωτάκης Επιμέλεια διαφανειών:. Φωτάκης. Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών

Θεωρία και Αλγόριθμοι Γράφων

Κατευθυνόμενα γραφήματα. Μαθηματικά Πληροφορικής 6ο Μάθημα. Βρόχοι. Μη κατευθυνόμενα γραφήματα. Ορισμός

Εισαγωγή στους Αλγορίθμους Φροντιστήριο 4

Κατευθυνόμενα γραφήματα. Μαθηματικά Πληροφορικής 6ο Μάθημα. Βρόχοι. Μη κατευθυνόμενα γραφήματα. Ορισμός

Διακριτά Μαθηματικά ΙΙ Χρήστος Νομικός Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων 2018 Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά

Θεωρία Γραφημάτων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές

Θεωρία Γραφημάτων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές

Αναζήτηση Κατά Βάθος. ιδάσκοντες: Σ. Ζάχος,. Φωτάκης Επιμέλεια διαφανειών:. Φωτάκης. Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών

u v 4 w G 2 G 1 u v w x y z 4

Θεωρία Γραφημάτων 5η Διάλεξη

Κεφάλαιο 3. Γραφήματα. v1.3 ( ) Χρησιμοποιήθηκε υλικό από τις αγγλικές διαφάνειες του Kevin Wayne.

ΣΧΕΔΙΑΣΗ ΚΑΙ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ

Outline 1 Άσκηση 1 2 Άσκηση 2 3 Άσκηση 3 4 Άσκηση 4 5 Άσκηση 5 6 Προγραμματιστική Άσκηση 1 7 Προγραμματιστική Άσκηση 2 (CoReLab - NTUA) Αλγόριθμοι - 3

Θεωρία Γραφημάτων 5η Διάλεξη

Μέγιστη ροή. Κατευθυνόμενο γράφημα. Συνάρτηση χωρητικότητας. αφετηρίακός κόμβος. τερματικός κόμβος. Ροή δικτύου. με τις ακόλουθες ιδιότητες

Κεφάλαιο 3. Γραφήµατα v1.1 ( ) Χρησιµοποιήθηκε υλικό από τις αγγλικές διαφάνειες του Kevin Wayne.

Εισαγωγή στη Θεωρία Γράφων

Εισαγωγή στους Αλγορίθμους Φροντιστήριο 8

Ενότητα 10 Γράφοι (ή Γραφήµατα)

Αλγόριθµοι Γραφηµάτων

Πανεπιστήμιο Δυτικής Μακεδονίας. Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών. Διακριτά Μαθηματικά. Ενότητα 2: Γραφήματα

Τομές Γραφήματος. Γράφημα (μη κατευθυνόμενο) Συνάρτηση βάρους ακμών. Τομή : Διαμέριση του συνόλου των κόμβων σε δύο μη κενά σύνολα

ΕΠΛ 231 Δοµές Δεδοµένων και Αλγόριθµοι 11-1

Συνεκτικότητα Γραφήματος

ΠΛΗ 20, 4 η ΟΣΣ: Βασικές Έννοιες Θεωρίας Γραφημάτων

Πανεπιστήμιο Στερεάς Ελλάδας Τμήμα Πληροφορικής Εξάμηνο ΣΤ ΘΕΩΡΙΑ ΓΡΑΦΩΝ

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ. Δομές δεδομένων. Ενότητα 10η: Γράφοι Παναγιώτα Φατούρου Τμήμα Επιστήμης Υπολογιστών

Βασικές Έννοιες Θεωρίας Γραφημάτων

Θεωρία Γραφημάτων: Ορολογία και Βασικές Έννοιες

ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΦΡΟΝΤΙΣΤΗΡΙΟ ΑΛΓΟΡΙΘΜΩΝ ΒΟΗΘΟΣ: ΒΑΓΓΕΛΗΣ ΔΟΥΡΟΣ

Βασικές Έννοιες Θεωρίας Γραφημάτων

Ειδικά θέματα Αλγορίθμων και Δομών Δεδομένων (ΠΛΕ073) Απαντήσεις 1 ου Σετ Ασκήσεων

Κατανεμημένα Συστήματα Ι

Αλγόριθµοι και Πολυπλοκότητα

Outline 1 Άσκηση 1: Εφαρμογές BFS DFS 2 Άσκηση 2: Μια Συνάρτηση Κόστους σε Κατευθυνόμενα Γραφήματα 3 Άσκηση 3: Ανάλυση Ασφάλειας 4 Άσκηση 4: Το Σύνολο

Σχεδίαση & Ανάλυση Αλγορίθμων

Θεωρία Γραφημάτων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές

Θεωρία Γραφημάτων 6η Διάλεξη

Εισαγωγή στους Αλγορίθμους

Δρομολόγηση Και Πολύχρωματισμός. Γραφημάτων ΚΑΡΑΓΕΩΡΓΟΣ ΤΙΜΟΘΕΟΣ Α.Μ 1026

Ασκήσεις στους Γράφους. 1 ο Σετ Ασκήσεων Βαθμός Μονοπάτια Κύκλος Euler Κύκλος Hamilton Συνεκτικότητα

Δομές Δεδομένων Ενότητα 6

ΠΛΗ 20, 4 η ΟΣΣ: Βασικές Έννοιες Θεωρίας Γραφημάτων

Διακριτά Μαθηματικά ΙΙ Χρήστος Νομικός Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων 2018 Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά

Εισαγωγή στην Επιστήμη των Υπολογιστών

βασικές έννοιες (τόμος Β)

Μαθηματικά Πληροφορικής

HY118-Διακριτά Μαθηματικά. Θεωρία γράφων/ γραφήματα. Τι είδαμε την προηγούμενη φορά. Συνεκτικότητα. 25 -Γράφοι

Αλγόριθµοι και Πολυπλοκότητα

Διακριτά Μαθηματικά ΙΙ Χρήστος Νομικός Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων 2018 Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά

Διδάσκων: Κωνσταντίνος Κώστα Διαφάνειες: Δημήτρης Ζεϊναλιπούρ

Φροντιστήριο #8 Ασκήσεις σε Γράφους 24/5/2016

Διάλεξη 21: Γράφοι IV - Βραχύτερα Μονοπάτια σε Γράφους

Εισαγωγή στην Επιστήμη των Υπολογιστών

Μαθηματικά Πληροφορικής

Αλγόριθμοι και Πολυπλοκότητα

Κεφάλαιο 3. Γραφήµατα v1.0 ( ) Χρησιµοποιήθηκε υλικό από τις αγγλικές διαφάνειες του Kevin Wayne.

1 Διάσχιση κατευθυνόμενων γραφημάτων

Αλγόριθμοι Γραφημάτων

ΠΛΗ111. Ανοιξη Μάθηµα 10 ο. Γράφοι. Τµήµα Ηλεκτρονικών Μηχανικών και Μηχανικών Υπολογιστών Πολυτεχνείο Κρήτης

ΔΕΝΔΡΙΚΑ ΓΡΑΦΗΜΑΤΑ ΚΕΦΑΛΑΙΟ 3

HY118-Διακριτά Μαθηματικά. Τι είδαμε την προηγούμενη φορά. Θεωρία γράφων / γραφήματα. 25 -Γράφοι. ΗΥ118, Διακριτά Μαθηματικά Άνοιξη 2017

Θεωρία Γραφημάτων: Ορολογία και Βασικές Έννοιες

Κεφάλαιο 3. Γραφήματα. ver. 21/12/2014. Χρησιμοποιήθηκε υλικό από τις αγγλικές διαφάνειες του Kevin Wayne.

ιακριτά Μαθηµατικά και Μαθηµατική Λογική ΠΛΗ20 Ε ρ γ α σ ί α 2η <Αλγόριθµοι, Θεωρία Γραφηµάτων>

Σχεδίαση και Ανάλυση Αλγορίθμων

Φροντιστήριο #8 Ασκήσεις σε Γράφους 16/5/2017

Διάλεξη 21: Γράφοι II - Τοπολογική Ταξινόμηση

ΑΛΓΟΡΙΘΜΟΙ ΚΑΙ ΠΟΛΥΠΛΟΚΟΤΗΤΑ Φεβρουάριος 2005 Σύνολο μονάδων: 91

ΠΛΗ 20, 4 η ΟΣΣ: Βασικές Έννοιες Θεωρίας Γραφημάτων

Αλγόριθμοι και Δομές Δεδομένων (IΙ) (γράφοι και δένδρα)

Αλγόριθμοι Γραφημάτων

Κεφάλαιο 4 Γραφήματα και Δένδρα

ΠΛΗ 20, 6 η ΟΣΣ: Δέντρα Εξετάσεις

1. Σε ένα τουρνουά με 8 παίκτες μπορεί οι παίκτες να συμμετείχαν σε: 6,5,4,4,4,3,1,1 αγώνες αντίστοιχα;

Θεωρία Γραφημάτων 8η Διάλεξη

ΣΥΝΕΚΤΙΚΟΤΗΤΑ ΓΡΑΦΗΜΑΤΩΝ

d(v) = 3 S. q(g \ S) S

Transcript:

Σχεδίαση & Ανάλυση Αλγορίθμων Ενότητα 4.1 Βασικοί Αλγόριθμοι Γραφημάτων Σταύρος Δ. Νικολόπουλος Τμήμα Μηχανικών Η/Υ & Πληροφορικής Πανεπιστήμιο Ιωαννίνων Webpage: www.cs.uoi.gr/~stavros

Αλγοριθμική Θεωρία Γραφημάτων Αλγόριθμοι Θεωρία Γραφημάτων 2

Ιστορικά 1736 Euler, γέφυρες Koenigsburg 1847 Kirchoff, δένδρα, ηλεκτρικά δίκτυα 1847 Cayley, δένδρα, ισομερή υδρογονανθράκων C n H 2n+2 1850 Cayley - De Morgan - Moebius, χρωματισμός με 4 χρώματα 1859 Hamilton, δωδεκάεδρο 1936 Koenig, το πρώτο βιβλίο 2015??? 3

Ιστορικά Γέφυρες Konigsberg Leonhard Euler (1707-1783) Μεγάλος μαθηματικός σε όλα τα πεδία 73 τόμοι δημοσιεύσεων 4

Ιστορικά Γέφυρες Konigsberg Σημερινό Ρωσικό Kaliningrad (στη Βαλτική μεταξύ Λιθουανίας και Πολωνίας) 5

Ιστορικά Γέφυρες Konigsberg Μπορούμε να ξεκινήσουμε από ένα σημείο Α και να επιστρέψουμε στο Α, έχοντας περάσει από κάθε γέφυρα μία και μόνο-μία φορά? 6

Ιστορικά Γέφυρες Konigsberg 7 Γέφυρες 7

Μοντελοποίηση Προβλήματος Παρατήρηση!!! Το γράφημα έχει τρεις (3) κόμβους περιττού βαθμού!!! 8

Γραφήματα Euler 9

Γραφήματα Euler 10

Γραφήματα Euler Χωρίς να το υπολογίσεις, βρες αν το παρακάτω γράφημα έχει διαδρομή Euler 11

Γραφήματα Euler Γράφημα έχει μόνο δύο (2) κόμβους περιττού βαθμού, επομένως ΝΑΙ έχει διαδρομή Euler 12

Μοντελοποίηση 13

Πρόβλημα - Γράφημα 14

Γράφημα - Αλγόριθμος 15

Εφαρμογές Γραφημάτων Έστω ότι έχουμε C 1, C 2,, C n φάρμακα, και έστω [x i, x i ] είναι η θερμοκρασία συντήρησης του φαρμάκου C i, 1 i n; Θέλουμε η θερμοκρασία Τ του ψυγείου για την συντήρηση max πλήθος φαρμάκων Έστω ότι στο πλανήτη Γη έχουν εμφανιστεί έως σήμερα Π 1, Π 2,, Π n πολιτισμοί, και έστω [t i, t i ] είναι η χρονική περίοδος εμφάνισης του πολιτισμού Π i, 1 i n; Θέλουμε το έτος E στο οποίο εμφανίστηκε max πλήθος πολιτισμών πάνω στη Γη

Εφαρμογές Γραφημάτων και. πολλές άλλες!!!

Εφαρμογές Γραφημάτων 1 Συνδεσμικότητα A B Μπορώ να πετάξω από την πόλη Α στην πόλη Β με την εταιρεία X; Υπάρχει μονοπάτι από την πόλη Α στην πόλη Β στο δίκτυο της; 18

Εφαρμογές Γραφημάτων Λειτουργία δικτύων 2 A B A B C D C D Μπορώ να πάω από κάθε κόμβο σε κάθε άλλον; Βλάβη 19

Εφαρμογές Γραφημάτων 3 Συντομότερη διαδρομή Ποια είναι η συντομότερη διαδρομή από την πόλη Α στην πόλη Β με την εταιρεία X; Ποια διαδρομή από την πόλη Α στην πόλη Β έχει το μικρότερο βάρος; 20

Εφαρμογές Γραφημάτων 4 GPS Navigation Εύρεση Ελαχίστων Διαδρομών 21

Εφαρμογές Γραφημάτων 5 Επιπεδικότητα ΔΕΗ ΟΤΕ ΔΕΥΑΙ Σύνδεσε όλα τα σπίτια με τις παροχές χωρίς να διασταυρωθούν οι συνδέσεις! 22

Εφαρμογές Γραφημάτων 5 Επιπεδικότητα? Σπίτι 2 με ΟΤΕ;? 23

Εφαρμογές Γραφημάτων 5 Επιπεδικότητα Μπορεί ένα κύκλωμα να σχεδιασθεί ώστε να μην υπάρχουν τεμνόμενες ακμές; 24

Εφαρμογές Γραφημάτων 6 Ελάχιστα Γενετικά (Συνδετικά) Δένδρα Ποιο δίκτυο διαδρομών είναι το ασφαλέστερο; (κίνδυνος από μεγάλες διαδρομές στη θάλασσα) 25

Εφαρμογές Γραφημάτων 6 Ελάχιστα Γενετικά (Συνδετικά) Δένδρα G 10 D A 4 3 B 3 2 1 10 4 6 6 C 9 2 2 3 E 5 2 7 3 6 12 F 1 26

Εφαρμογές Γραφημάτων 6 Ελάχιστα Γενετικά (Συνδετικά) Δένδρα G D A 1 2 1 C B 2 2 2 F E 27

Εφαρμογές Γραφημάτων 7 Περίπατος του Ιππότη/Αλόγου (διαδρομή Hamilton) 28

Εφαρμογές Γραφημάτων 8 Χάρτες (χρωματισμός) Πως μπορώ να χρωματίσω κάθε χώρα (νομό) ώστε γειτονικοί νομοί να μην έχουν ίδιο χρώμα; Πόσα χρώματα χρειάζονται στο ελάχιστο; 29

Εφαρμογές Γραφημάτων 9 Κοινωνικά δίκτυα (small-world Phenomena) 30

Εφαρμογές Γραφημάτων και. πολλές πολλές άλλες!!! 31

Γραφήματα Ορισμός: Μη κατευθυνόμενο γράφημα Ως μαθηματική έκφραση, ο ορισμός του μη κατευθυνόμενου γράφου έχει ως εξής: Ένα γράφημα G είναι ένα διατεταγμένο ζεύγος G=(V(G), E(G)) όπου: V(G) = {v 1,v 2,..., v n } το σύνολο των κορυφών, E(G) = {e 1,e 2,..., e m } το σύνολο των ακμών. Κάθε ακμή είναι ένα διμελές σύνολο αποτελούμενο από δύο κορυφές, οι οποίες αποκαλούνται κόμβοι και δεν είναι απαραίτητα διαφορετικές μεταξύ τους.

Γραφήματα Ορισμός: Κατευθυνόμενο γράφημα Ένα γράφημα G είναι ένα διατεταγμένο ζεύγος G=(V(G), E(G)) όπου: V(G) = {v 1,v 2,..., v n } E(G) = {e 1,e 2,..., e m } το σύνολο των κορυφών, το σύνολο των ακμών. Εδώ κάθε ακμή είναι ένα διατεταγμένο ζεύγος αποτελούμενο από δύο κορυφές, οι οποίες αποκαλούνται κόμβοι και δεν είναι απαραίτητα διαφορετικές μεταξύ τους. Η διαφορά ανάμεσα σε έναν μη κατευθυνόμενο και έναν κατευθυνόμενο γράφημα είναι ότι στην πρώτη περίπτωση έχουμε διμελές σύνολο, ενώ στη δεύτερη διατεταγμένο ζεύγος.

Γραφήματα Παράδειγμα d c e b f a h g V = {a, b, c, d, e, f, g, h} E = {(ab), (ac), (ah), (bc), (cd), (ce), (ch),, (hg)}

Γραφήματα Παράδειγμα d c e b f a V = {a, b, c, d, e, f, g, h} h g E = { ac, ba, cb, cd,, hg }

Γραφήματα Αποθήκευση 2 3 1 4 5 1 2 3 4 5 2 1 1 1 3 3 3 2 3 4 4 4 5 5 1 2 3 4 5 1 2 3 4 5 0 1 1 1 0 1 0 1 0 0 1 1 0 1 0 1 0 1 0 1 0 0 1 1 0

Γραφήματα κεκτημένη γνώση!!! Γράφημα - Απεικόνιση 37

Μη κατευθυνόμενα Γραφήματα Μη-κατευθυνόμενα 2 2 1 1 3 3 4 4 G = (V, E) V = {1, 2, 3, 4} E = {(1,2), (1,4), (2,3), (2,4)}

Μη κατευθυνόμενα Γραφήματα Μη-κατευθυνόμενα 1 2 1 3 4 3 4 2 G = (V, E) V = {1, 2, 3, 4} E = {(1,2), (2,3), (3,4), (1,4)}

Κατευθυνόμενα Γραφήματα Κατευθυνόμενα 2 2 1 3 1 3 4 4 G = (V, E) V = {1, 2, 3, 4} E = {(1,2), (2,3), (2,4), (4,1), (4,2)}

Έμβαρα Γραφήματα (weighted) Γραφήματα με Ακμικά Βάρη 1.2 2 0.5 4 2 2 1 2.1 4 0.2 3 1 8 6 4 9 3 Έμβαρα και όχι Ζυγισμένα

Σχεδίαση & Ανάλυση Αλγορίθμων Διερεύνηση Γραφημάτων BFS & DFS

Διερεύνηση Γραφημάτων Τι θα θέλαμε? Διερεύνηση Breadth-first Search (BFS) Διερεύνηση Depth-first Search (DFS)

Διερεύνηση Γραφημάτων Διερεύνηση DFS Διερεύνηση BFS

Διερεύνηση BFS (Breadth-first Search) Βασική Ιδέα! Έστω G=(V, E) και s V ένας κόμβος εκκίνησης. d(x) είναι η ελάχιστη απόσταση του κόμβου x V από τον κόμβο εκκίνησης s. r 1 s t z 0 2 3 2 p 1 w 2 x 3 y

Διερεύνηση BFS (Breadth-first Search) Βασική Ιδέα! Ο κόμβος x διερευνάται πριν τον κόμβο y σε μια BFS, εάν d(x) < d(y) r 1 s t z 0 2 3 2 p 1 w 2 x H BFS διερευνά κάθε κόμβο x του G για τον οποίο υπάρχει διαδρομή από τον s x στο G. 3 y

Διερεύνηση BFS Κατά την εκτέλεση του αλγορίθμου BFS, οι κόμβοι του γραφήματος βρίσκονται σε 3 κατηγορίες ή καταστάσεις: Α : άσπροι κόμβοι Π : πράσινοι κόμβοι Μ : μαύροι κόμβοι Τις κατηγορίες αυτές ονομάζουμε χρωματικές κατηγορίες ή χρώματα των κόμβων

Διερεύνηση BFS Αρχικά όλοι οι κόμβου βρίσκονται στην ίδια κατηγορία, έστω A (άσπροι), καθώς κανένας κόμβος του G δεν έχει ακόμα διερευνηθεί. r s t z p w x y

Διερεύνηση BFS Στο τέλος του αλγόριθμου BFS, όλοι οι κόμβοι βρίσκονται στην ίδια κατηγορία, έστω M (μαύροι), καθώς όλοι οι κόμβοι έχουν διερευνηθεί. r s t z p w x y

Διερεύνηση BFS Σε ένα ενδιάμεσο βήμα του αλγόριθμου BFS, κάποιοι κόμβοι είναι M (έχουν διερευνηθεί), κάποιοι είναι A (δεν έχουν ακόμα διερευνηθεί), r s t z p w x y και κάποιοι είναι Π (υποψήφιοι για διερεύνηση).

Διερεύνηση BFS Σε ένα ενδιάμεσο βήμα του αλγόριθμου BFS, εάν (u,v) E(G) και ο κόμβος u είναι M, τότε ο κόμβος v είναι είτε Μ είτε Π. r s t z p w x y

Διερεύνηση BFS Αλγόριθμος BFS 1. Για κάθε κόμβο x V επανέλαβε Color(x) A, d(x) και π(x) NIL s t z r p w x y

Διερεύνηση BFS Αλγόριθμος BFS 2. Επίλεξε τον κόμβο εκκίνησης s V και θέσε Color(s) Π, d(s) 0 και ENQUEUE(Q, s) s t z r 0 p w x y Q : s

Διερεύνηση BFS Αλγόριθμος BFS 3. Εφόσον η ουρά Q επανέλαβε x head(q) και DEQUEUE(Q, x) για κάθε y adj(x) εκτέλεσε εάν Color(y) = Α τότε Color(y) Π d(y) d(x) + 1 π(y) x ENQUEUE(Q, y) Color(x) M

Διερεύνηση BFS Παράδειγμα r s t z p w x y

Διερεύνηση BFS Παράδειγμα r s t z p w x y

Διερεύνηση BFS Παράδειγμα r s t z 0 p w x y π(s)=nil Q : s

Διερεύνηση BFS Παράδειγμα r 1 s t z 0 1 p w x y s head(q) π(s)=nil Q : s w r π(w)=s π(r)=s

Διερεύνηση BFS Παράδειγμα r 1 s t z 0 2 p 1 w 2 x y w head(q) π(s)=nil Q : s w r t x π(w)=s π(r)=s π(t)=w π(x)=w

Διερεύνηση BFS Παράδειγμα r 1 s t z 0 2 2 p 1 w 2 x y r head(q) π(s)=nil Q : s w r t x p π(w)=s π(r)=s π(t)=w π(x)=w π(p)=r

Διερεύνηση BFS Παράδειγμα r 1 s t z 0 2 3 2 p 1 w 2 x y t head(q) π(s)=nil Q : s w r t x p z π(w)=s π(r)=s π(t)=w π(x)=w π(p)=r π(z)=t

Διερεύνηση BFS Παράδειγμα r 1 s t z 0 2 3 2 p 1 w 2 x 3 y x head(q) π(s)=nil Q : s w r t x p z y π(w)=s π(r)=s π(t)=w π(x)=w π(p)=r π(z)=t π(y)=x

Διερεύνηση BFS Παράδειγμα r 1 s t z 0 2 3 2 p 1 w 2 x 3 y p head(q) π(s)=nil Q : s w r t x p z y π(w)=s π(r)=s π(t)=w π(x)=w π(p)=r π(z)=t π(y)=x

Διερεύνηση BFS Παράδειγμα r 1 s t z 0 2 3 2 p 1 w 2 x 3 y z head(q) π(s)=nil Q : s w r t x p z y π(w)=s π(r)=s π(t)=w π(x)=w π(p)=r π(z)=t π(y)=x

Διερεύνηση BFS Παράδειγμα r 1 s t z 0 2 3 2 p 1 w 2 x 3 y y head(q) π(s)=nil Q : s w r t x p z y π(w)=s π(r)=s π(t)=w π(x)=w π(p)=r π(z)=t π(y)=x

Διερεύνηση BFS

Διερεύνηση BFS

Διερεύνηση BFS BFS-δένδρο (δάσος) s t z r 1 0 2 3 2 p 1 w 2 x 3 y r s t z p w x y

Διερεύνηση BFS BFS-δένδρο (δάσος) s t z r 1 0 2 3 2 p 1 w 2 x 3 y r s t z p w x y

Διερεύνηση BFS BFS-δένδρο (δάσος) s t z r 1 0 2 3 s 2 p 1 w 2 x 3 y r w p x y t z

Διερεύνηση DFS (Depth-first Search) Βασική Ιδέα! Έστω G=(V, E) και s V ένας κόμβος εκκίνησης. Η στρατηγική της DFS βασίζεται στην διερεύνηση κόμβων που βρίσκονται σε όσο γίνεται μεγαλύτερη απόσταση από τον κόμβο εκκίνησης s V Εάν όλοι οι γείτονες ενός κόμβου v V έχουν διερευνηθεί, τότε η διερεύνηση «επιστρέφει» στον κόμβο u V, για τον οποίο (u,v) E, και διερευνά γείτονες του κόμβου u που δεν έχουν διερευνηθεί

Διερεύνηση DFS Βασική Ιδέα! Η διερεύνηση σταματά όταν διερευνηθούν όλοι οι κόμβοι για τους οποίους υπάρχει διαδρομή από τον κόμβο εκκίνησης s V Εάν υπάρχουν κόμβοι που δεν έχουν διερευνηθεί (Α κόμβοι), τότε επιλέγουμε ένα νέο κόμβο s V, από τους μη-διερευνημένους (A κόμβους), και τον θέτουμε κόμβο εκκίνησης s s.

Διερεύνηση DFS Ορίζουμε δύο «χρονικές» συναρτήσεις για κάθε κόμβο u V του γραφήματος: a(u) : t(u) : Χρόνος Πρώτης (Αρχικής) επίσκεψης του κόμβου u V Χρόνος Τελευταίας επίσκεψης του κόμβου u V Ισχύει : a(u) < t(u) u V

Διερεύνηση DFS Αλγόριθμος DFS 1. Για κάθε κόμβο x V επανέλαβε Color(x) A και π(x) NIL y z s t x w p r 2. ime 0

Διερεύνηση DFS Αλγόριθμος DFS 3. Εφόσον η υπάρχουν Α κόμβοι στο G επανέλαβε επίλεξε ένα Α κόμβο εκκίνησης s V και κάλεσε την διαδικασία DFS-VISI(s) y z s t x w p r

Διερεύνηση DFS Αλγόριθμος DFS 1. 2. Για κάθε κόμβο x V επανέλαβε Color(x) A και π(x) NIL ime 0 3. Εφόσον η υπάρχουν Α κόμβοι στο G επανέλαβε επίλεξε ένα Α κόμβο εκκίνησης s V και κάλεσε την διαδικασία DFS-VISI(s)

Διερεύνηση DFS Αλγόριθμος DFS Διαδικασία DFS-VISI(u) 1. 2. 3. 4. 5. Color(u) Π a(u) ime ime+1 για κάθε κόμβο x adj(u) επανέλαβε εάν Color(x) = A τότε π(x) u και DFS-VISI(x) Color(u) Μ t(u) ime ime+1

Διερεύνηση DFS Παράδειγμα y z s t x w p r

Διερεύνηση DFS Παράδειγμα y z s t 1/ x w p r

Διερεύνηση DFS Παράδειγμα y z s 2/ 1/ t x w p r

Διερεύνηση DFS Παράδειγμα y 3/ z s 2/ 1/ t x w p r

Διερεύνηση DFS Παράδειγμα y 3/ z s 2/ 1/ t 4/ x w p r

Διερεύνηση DFS Παράδειγμα y 3/ z s 2/ 1/ t 4/ 5 x w p r

Διερεύνηση DFS Παράδειγμα y 3/ 6 z s 2/ 1/ t 4/ 5 x w p r

Διερεύνηση DFS Παράδειγμα y 3/ 6 z s 2/ 1/ t 4/ 5 7/ x w p r

Διερεύνηση DFS Παράδειγμα y 3/ 6 z s 2/ 1/ t 4/ 5 7/ 8 x w p r

Διερεύνηση DFS Παράδειγμα y 3/ 6 z s 2/ 9 1/ t 4/ 5 7/ 8 x w p r

Διερεύνηση DFS Παράδειγμα y 3/ 6 z s 2/ 9 1/ 10 t 4/ 5 7/ 8 x w p r

Διερεύνηση DFS Παράδειγμα y 3/ 6 z s t 2/ 9 1/ 10 11/ 4/ 5 7/ 8 x w p r

Διερεύνηση DFS Παράδειγμα y 3/ 6 z s t 2/ 9 1/ 10 11/ 4/ 5 7/ 8 12/ x w p r

Διερεύνηση DFS Παράδειγμα y 3/ 6 z s t 2/ 9 1/ 10 11/ 4/ 5 7/ 8 12/ 13 x w p r

Διερεύνηση DFS Παράδειγμα y 3/ 6 z s t 2/ 9 1/ 10 11/ 4/ 5 x 7/ 8 w 12/ 13 14/ p r

Διερεύνηση DFS Παράδειγμα y 3/ 6 z s t 2/ 9 1/ 10 11/ 4/ 5 x 7/ 8 w 12/ 13 14/ 15 p r

Διερεύνηση DFS Παράδειγμα y 3/ 6 z s t 2/ 9 1/ 10 11/ 16 4/ 5 x 7/ 8 w 12/ 13 14/ 15 p r

Διερεύνηση DFS Πολυπλοκότητα DFS Τα βήματα 1 και 3 εκτελούνται σε χρόνο Ο(n) Τo βήμα 2 σε O(1) 1. 2. Για κάθε κόμβο x V επανέλαβε Color(x) A και π(x) NIL ime 0 3. Εφόσον η υπάρχουν Α κόμβοι στο G επανέλαβε επίλεξε ένα Α κόμβο εκκίνησης s V και κάλεσε την διαδικασία DFS-VISI(s) Η διαδικασία DFS-VISI() καλείται μία φορά για κάθε κόμβο v V.

Διερεύνηση DFS Πολυπλοκότητα DFS Η διαδικασία DFS-VISI(v) στο Βήμα 3 εκτελείται adj(v) φορές. Άρα Διαδικασία DFS-VISI(u) 1. 2. 3. Color(u) Π Α(u) ime ime+1 Για κάθε κόμβο x adj(u) επανέλαβε εάν Color(x) = A τότε π(x) u και DFS-VISI(x) Σ v V adj(v) = O(m) 4. 5. Color(u) Μ Τ(u) ime ime+1 Επομένως ο Αλγόριθμος DFS έχει πολυπλοκότητα χρόνου O(n + m)

Διερεύνηση DFS Κατηγορίες Ακμών κατά την DFS : Δεντρικές-ακμές (tree-edges) B : Oπισθο-ακμές ή ανιούσες (back-edges) F : Εμπρόσθιες-ακμές ή κατιούσες (forward-edges) C : Διασχίζουσες ή εγκάρσιες-ακμές (cross-edges)

Διερεύνηση DFS Παράδειγμα y z s t 1/ x w p r

Διερεύνηση DFS Παράδειγμα y z s 2/ 1/ t x w p r

Διερεύνηση DFS Παράδειγμα y 3/ z s 2/ 1/ t x w p r

Διερεύνηση DFS Παράδειγμα y 3/ z s 2/ 1/ t 4/ x w p r

Διερεύνηση DFS Παράδειγμα y 3/ z s 2/ 1/ t B 4/ x w p r

Διερεύνηση DFS Παράδειγμα y 3/ z s 2/ 1/ t B 4/ 5 x w p r

Διερεύνηση DFS Παράδειγμα y 3/ 6 z s 2/ 1/ t B 4/ 5 x w p r

Διερεύνηση DFS Παράδειγμα y 3/ 6 z s 2/ 1/ t B 4/ 5 7/ x w p r

Διερεύνηση DFS Παράδειγμα y 3/ 6 z s 2/ 1/ t B 4/ 5 C 7/ x w p r

Διερεύνηση DFS Παράδειγμα y 3/ 6 z s 2/ 1/ t B 4/ 5 C 7/ 8 x w p r

Διερεύνηση DFS Παράδειγμα y 3/ 6 z s 2/ 9 1/ t B 4/ 5 C 7/ 8 x w p r

Διερεύνηση DFS Παράδειγμα y 3/ 6 z s 2/ 9 1/ t B F 4/ 5 C 7/ 8 x w p r

Διερεύνηση DFS Παράδειγμα y 3/ 6 z s 2/ 9 1/ 10 t B F 4/ 5 C 7/ 8 x w p r

Διερεύνηση DFS Παράδειγμα y 3/ 6 z s t 2/ 9 1/ 10 11/ B F 4/ 5 C 7/ 8 x w p r

Διερεύνηση DFS Παράδειγμα y 3/ 6 z s t 2/ 9 1/ 10 11/ B F 4/ 5 C 7/ 8 12/ x w p r

Διερεύνηση DFS Παράδειγμα y 3/ 6 z s t 2/ 9 1/ 10 11/ B F C 4/ 5 C 7/ 8 C 12/ x w p r

Διερεύνηση DFS Παράδειγμα y 3/ 6 z s t 2/ 9 1/ 10 11/ B F C 4/ 5 C 7/ 8 C 12/ 13 x w p r

Διερεύνηση DFS Παράδειγμα y 3/ 6 z s t 2/ 9 1/ 10 11/ B F C 4/ 5 C 7/ 8 C 12/ 13 14/ x w p r

Διερεύνηση DFS Παράδειγμα y 3/ 6 z s t 2/ 9 1/ 10 11/ B F C B 4/ 5 C 7/ 8 C C 12/ 13 14/ x w p r

Διερεύνηση DFS Παράδειγμα y 3/ 6 z s t 2/ 9 1/ 10 11/ B F C B 4/ 5 C 7/ 8 C C 12/ 13 14/ 15 x w p r

Διερεύνηση DFS Παράδειγμα y 3/ 6 z s t 2/ 9 1/ 10 11/ 16 B F C B 4/ 5 C 7/ 8 C C 12/ 13 14/ 15 x w p r & F : a(x) < t(y) < a(y) < t(x) B : a(y) < a(x) < t(y) < t(y) C : a(y) < t(y) < a(x) < t(x)

Διερεύνηση DFS DFS-δένδρο (δάσος) y z s t x w p r y 3/ 6 z s t 2/ 9 1/ 10 11/ 16 B F C B 4/ 5 C 7/ 8 C C 12/ 13 14/ 15 x w p r

Διερεύνηση DFS DFS-δένδρο (δάσος) y z s t x w p r y 3/ 6 z s t 2/ 9 1/ 10 11/ 16 4/ 5 x 7/ 8 w 12/ 13 14/ 15 p r

Διερεύνηση DFS DFS-δένδρο (δάσος) y z s t x w p r y z s t x w p r

Διερεύνηση DFS DFS-δένδρο (δάσος) s t z p r y w y z s t x x w p r

Διερεύνηση DFS DFS-αναπαράσταση s t C B B z F p C r y w C C y z s t x x w p r

Διερεύνηση DFS DFS-αναπαράσταση s t z p r y w y z s t x x w p r

Εφαρμογή DFS Θησέας Ξετυλίγοντας τον Μίτο της Αριάδνης!

Εφαρμογή DFS Θησέας Ξετυλίγοντας τον Μίτο της Αριάδνης!

Εφαρμογή DFS Θησέας Ξετυλίγοντας τον Μίτο της Αριάδνης!

Εφαρμογή DFS Θησέας Ξετυλίγοντας τον Μίτο της Αριάδνης! s

Σχεδίαση & Ανάλυση Αλγορίθμων Τοπολογική Ταξινόμηση

Τοπολογική Ταξινόμηση Πρωινό Ντύσιμο εσώρουχο κάλτσες παπούτσια ρολόι παντελόνι ζώνη πουκάμισο γραβάτα σακάκι

Τοπολογική Ταξινόμηση Πρωινό Ντύσιμο εσώρουχο κάλτσες παπούτσια ρολόι παντελόνι ζώνη πουκάμισο γραβάτα σακάκι κάλτσες εσώρουχο παντελόνι παπούτσια ρολόι πουκάμισο ζώνη γραβάτα σακάκι

Τοπολογική Ταξινόμηση Πρωινό Ντύσιμο εσώρουχο κάλτσες παπούτσια ρολόι παντελόνι πουκάμισο ζώνη γραβάτα σακάκι κάλτσες εσώρουχο παντελόνι παπούτσια ρολόι πουκάμισο ζώνη γραβάτα σακάκι

Τοπολογική Ταξινόμηση Πρωινό Ντύσιμο εσώρουχο κάλτσες παπούτσια ρολόι παντελόνι ζώνη πουκάμισο γραβάτα σακάκι κάλτσες εσώρουχο παντελόνι παπούτσια ρολόι πουκάμισο ζώνη γραβάτα σακάκι

Τοπολογική Ταξινόμηση Πρωινό Ντύσιμο εσώρουχο κάλτσες παπούτσια ρολόι παντελόνι πουκάμισο ζώνη γραβάτα σακάκι κάλτσες εσώρουχο παντελόνι παπούτσια ρολόι πουκάμισο ζώνη γραβάτα σακάκι

Τοπολογική Ταξινόμηση Μη-κυκλικό Κατευθυνόμενο Γράφημα (DAG) ονομάζετε το γράφημα G=(V, E) το οποίο δεν έχει κατευθυνόμενους κύκλους.

Τοπολογική Ταξινόμηση Μια Τοπολογική Ταξινόμηση του γραφήματος G=(V, E) είναι μια ακολουθία S=(u 1, u 2,, u n ) των κόμβων του G τέτοια ώστε: Για κάθε ζεύγος κόμβων u i, u j V(G), εάν u i, u j E(G) τότε ο κόμβος u i προηγείται του κόμβου u j στην ακολουθία S. Ισοδύναμος Ορισμός: Ο υπολογισμός μιας αμφι-μονοσήμαντης (1-1 και Επί) συνάρτησης f : V(G) {u 1, u 2,, u n } τέτοια ώστε: u i, u j E(G) f (u i ) < f (u j ).

Τοπολογική Ταξινόμηση Δοθέντος ενός μη-κυκλικού κατευθυνόμενου γραφήματος G=(V, E), θέλουμε να υπολογίσουμε μια Τοπολογική Ταξινόμηση των κόμβων αυτού. In-degree DFS

Τοπολογική Ταξινόμηση In-degree 3 7 8 5 11 2 10 9

Τοπολογική Ταξινόμηση In-degree 3 7 8 5 11 2 10 9

Τοπολογική Ταξινόμηση DFS 1/ 10 5/ 6 2/ 9 3/ 4 7/ 8 11/ 14 15/ 16 12/ 13 7 3 8 5 11 2 10 9 15/ 16 11/ 14 12/ 13 1/ 10 2/ 9 7/ 8 5/ 6 3/ 4

Τοπολογική Ταξινόμηση DFS 7 3 8 5 11 2 10 9

Τοπολογική Ταξινόμηση Αλγόριθμος opological-sort 1. Εκτέλεσε DFS στο G Όταν υπολογίζεται ο χρόνος τελευταίας επίσκεψης t(u) του κόμβου u V εισήγαγε ένα αντίγραφο του κόμβου στην αρχή μιας συνδεδεμένης λίστας L 2. Επίστρεψε την λίστα L Η λίστα L περιέχει τους κόμβους του G σε φθίνουσα τάξη ως προς τους χρόνους τελευταίας επίσκεψης των κόμβων που δίδει η εκτέλεση της DFS του Βήματος 1.

Τοπολογική Ταξινόμηση Παράδειγμα 1/ 10 5/ 6 2/ 9 3/ 4 7/ 8 11/ 14 15/ 16 12/ 13 7 3 8 5 11 2 10 9 15/ 16 11/ 14 12/ 13 1/ 10 2/ 9 7/ 8 5/ 6 3/ 4

Τοπολογική Ταξινόμηση Πρωινό Ντύσιμο 17/ 18 11/ 16 εσώρουχο κάλτσες παπούτσια ρολόι 9/ 10 12/ 15 παντελόνι 13/ 14 6/ 7 ζώνη πουκάμισο γραβάτα 1/ 8 2/ 5 σακάκι 3/ 4

Τοπολογική Ταξινόμηση Πρωινό Ντύσιμο 17/ 18 11/ 16 εσώρουχο κάλτσες παπούτσια ρολόι 9/ 10 12/ 15 παντελόνι 13/ 14 6/ 7 ζώνη πουκάμισο γραβάτα 1/ 8 2/ 5 σακάκι 3/ 4

Τοπολογική Ταξινόμηση 17/ 18 11/ 16 Πρωινό Ντύσιμο εσώρουχο κάλτσες παπούτσια ρολόι 9/ 10 12/ 15 παντελόνι 13/ 14 6/ 7 ζώνη πουκάμισο γραβάτα 1/ 8 2/ 5 σακάκι 3/ 4 κάλτσες εσώρουχο παντελόνι παπούτσια ρολόι πουκάμισο ζώνη γραβάτα σακάκι 17/ 18 11/ 16 12/ 15 13/ 14 9/ 10 1/ 8 6/ 7 2/ 5 3/ 4

Τοπολογική Ταξινόμηση Πρωινό Ντύσιμο κάλτσες εσώρουχο παντελόνι παπούτσια ρολόι πουκάμισο ζώνη γραβάτα σακάκι 17/ 18 11/ 16 12/ 15 13/ 14 9/ 10 1/ 8 6/ 7 2/ 5 3/ 4

Τοπολογική Ταξινόμηση

Τοπολογική Ταξινόμηση

Τοπολογική Ταξινόμηση

Τοπολογική Ταξινόμηση

Τοπολογική Ταξινόμηση Ενότητα Τοπολογική Ταξινόμηση

Σχεδίαση & Ανάλυση Αλγορίθμων Συνεκτικές Συνιστώσες

Συνεκτικές Συνιστώσες Ορισμός Μια Συνεκτική Συνιστώσα ενός μη-κατευθυνόμενου γραφήματος G=(V,E) είναι ένα μείζονα σύνολο κόμβων U V τέτοιο ώστε: x, y U ισχύει x y

Συνεκτικές Συνιστώσες Παράδειγμα 1 2 3 4 5 6 7 8 9

Συνεκτικές Συνιστώσες Παράδειγμα 1 2 3 4 5 6 7 8 9 CC 1 = {1, 2, 6, 9}

Συνεκτικές Συνιστώσες Παράδειγμα 1 2 3 4 5 6 7 8 9 CC 1 = {1, 2, 6, 9} CC 2 = {3, 5, 8}

Συνεκτικές Συνιστώσες Παράδειγμα 1 2 3 4 5 6 7 8 9 CC 1 = {1, 2, 6, 9} CC 2 = {3, 5, 8} CC 3 = {4, 7}

Συνεκτικές Συνιστώσες Υπολογισμός 1 2 3 4 BFS DFS 5 6 7 8 9 Εσωτερική Αναπαράσταση CC : 1 2 3 4 5 6 7 8 9 1 1 2 3 2 1 3 2 1 CC : 1 1 3 4 3 1 4 3 1

Ισχυρές Συνεκτικές Συνιστώσες Ορισμός SCC Μια ισχυρή συνεκτική συνιστώσα (SCC) ενός κατευθυνόμενου γραφήματος G=(V,E) είναι ένα μείζον σύνολο κόμβων S V τέτοιο ώστε: x, y S, ισχύει x y και y x όπου, με x y συμβολίζουμε την ύπαρξη στο G κατευθυνόμενης διαδρομής (x, z 1, z 2,, z k, y) από τον κόμβο x στον κόμβο y, k 0.

Ισχυρές Συνεκτικές Συνιστώσες Ορισμός Αντίστροφου Γραφήματος Δοθέντος ενός κατευθυνόμενου γραφήματος G=(V,E), ορίζουμε το αντίστροφο γράφημα του G (transpose graph), το συμβολίζουμε G = (V, E ), ως εξής: V = V και E = { a, b b, a E} G G

Ισχυρές Συνεκτικές Συνιστώσες Υπολογισμός SCC(G) Δοθέντος ενός κατευθυνόμενου γραφήματος G θέλουμε να υπολογίσουμε όλες τις ισχυρές συνεκτικές συνιστώσες του G.

Ισχυρές Συνεκτικές Συνιστώσες Αλγόριθμος SCC(G) 1. DFS(G) και υπολογισμός f[u], u V(G); 2. Υπολογισμός του αντίστροφου γραφήματος G ; 3. DFS(G ), παίρνοντας του κόμβους σε φθίνουσα τάξη ως προς f[u]; 4. Επέστρεψε τα DFS-trees (κάθε DFS-tree ισοδυναμεί με ένα SCC του G). end.

Ισχυρές Συνεκτικές Συνιστώσες Παράδειγμα

Ισχυρές Συνεκτικές Συνιστώσες DFS(G) B 13/ 14 11/ 16 1/ 10 8/ 9 B B 12/ 15 3/ 4 2/ 7 5/ 6 C

Ισχυρές Συνεκτικές Συνιστώσες DFS-trees 13/ 14 11/ 16 1/ 10 8/ 9 12/ 15 3/ 4 2/ 7 5/ 6

Ισχυρές Συνεκτικές Συνιστώσες DFS-trees 13/ 14 11/ 16 1/ 10 8/ 9 12/ 15 3/ 4 2/ 7 5/ 6

Ισχυρές Συνεκτικές Συνιστώσες Αρχικό Γράφημα G

Ισχυρές Συνεκτικές Συνιστώσες Το Αντίστροφο Γράφημα G Τ

Ισχυρές Συνεκτικές Συνιστώσες Το Αντίστροφο Γράφημα G Τ 13/ 14 11/ 16 1/ 10 8/ 9 12/ 15 3/ 4 2/ 7 5/ 6

Ισχυρές Συνεκτικές Συνιστώσες Το Αντίστροφο Γράφημα G Τ 13/ 14 11/ 16 1/ 10 8/ 9 12/ 15 3/ 4 2/ 7 5/ 6

Ισχυρές Συνεκτικές Συνιστώσες DFS(G Τ ) 13/ 14 11/ 16 1/ 10 8/ 9 2/ 5 1/ 6 B 3/ 4 12/ 15 3/ 4 2/ 7 5/ 6

Ισχυρές Συνεκτικές Συνιστώσες DFS(G Τ ) 13/ 14 11/ 16 1/ 10 B 8/ 9 C 2/ 5 1/ 6 7/ 10 8/ 9 B 3/ 4 12/ 15 3/ 4 2/ 7 5/ 6

Ισχυρές Συνεκτικές Συνιστώσες DFS(G Τ ) 13/ 14 11/ 16 1/ 10 8/ 9 C 2/ 5 1/ 6 7/ 10 8/ 9 B C C 3/ 4 12/ 13 11/ 14 C 12/ 15 3/ 4 B 2/ 7 5/ 6

Ισχυρές Συνεκτικές Συνιστώσες DFS(G Τ ) 13/ 14 11/ 16 1/ 10 8/ 9 C 2/ 5 1/ 6 7/ 10 8/ 9 B C C C C 3/ 4 12/ 13 11/ 14 15/ 16 C 12/ 15 3/ 4 B 2/ 7 5/ 6

Ισχυρές Συνεκτικές Συνιστώσες DFS(G Τ ) C B C C C C C B

Ισχυρές Συνεκτικές Συνιστώσες DFS-trees C B C C C C C B

Ισχυρές Συνεκτικές Συνιστώσες DFS-trees

Ισχυρές Συνεκτικές Συνιστώσες SCC(G) Οι Ισχυρές Συνεκτικές Συνιστώσες του Γραφήματος G

Ισχυρές Συνεκτικές Συνιστώσες SCC(G) 1 1 2 2 1 3 3 4 Οι Ισχυρές Συνεκτικές Συνιστώσες του Γραφήματος G

Ισχυρές Συνεκτικές Συνιστώσες SCC(G) 1 1 2 2 1 3 3 4 Οι Ισχυρές Συνεκτικές Συνιστώσες του Γραφήματος G

Τέλος Ενότητας Ευχαριστώ για τη Συμμετοχή σας!!! Σταύρος Δ. Νικολόπουλος Τμήμα Μηχανικών Η/Υ & Πληροφορικής Πανεπιστήμιο Ιωαννίνων Webpage: www.cs.uoi.gr/~stavros