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

Σχετικά έγγραφα
Εισαγωγή στους Αλγορίθμους Ενότητα 7η

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

έντρα ιδάσκοντες:. Φωτάκης,. Σούλιου Επιμέλεια διαφανειών:. Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο

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

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

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

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

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

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

Ελάχιστο Γεννητικό Δένδρο. Παράδειγμα - Αλγόριθμος Prim. Γιατί δουλεύουν αυτοί οι αλγόριθμοι;

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

Επαγωγή και αναδρομή για άκυκλα συνεκτικά γραφήματα

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

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

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

Τίτλος Μαθήματος: Θεωρία Γραφημάτων. Ενότητα: Εισαγωγή σε βασικές έννοιες. Διδάσκων: Λέκτορας Xάρης Παπαδόπουλος. Τμήμα: Μαθηματικών

Συντομότερες Διαδρομές

Συντομότερες ιαδρομές

Επαγωγή και αναδρομή για συνεκτικά γραφήματα

ΕΠΛ 211: Θεωρία Υπολογισμού και Πολυπλοκότητας. Διάλεξη 2: Μαθηματικό Υπόβαθρο

Διάλεξη 13: D Σχήμα 13.2: Ενδεικτική αναπαράσταση δίσκου D που ορίζει ο στην εμβάπτιση Γ. Σχήμα 13.3: Σχηματική επεξήγηση περιπτώσεων πο

Ελάχιστο Συνδετικό Δέντρο

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

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

Ελάχιστο Συνδετικό Δέντρο

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

Ελάχιστο Συνδετικό έντρο

Ελάχιστο Συνδετικό Δέντρο

Διάλεξη 3: D Σχήμα 3.2: Ενδεικτική αναπαράσταση δίσκου D που ορίζει ο στην εμβάπτιση Γ. Σχήμα 3.3: Σχηματική επεξήγηση περιπτώσεων που απορ

Θεωρία Γραφημάτων και Εφαρμογές - Διακριτά Μαθηματικά ΙΙ Φεβρουάριος 2017

Ελάχιστο Συνδετικό έντρο

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

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

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

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

Στοιχεία Θεωρίας Γραφηµάτων (1)

ΔΙΑΤΡΕΞΗ ΑΛΓΟΡΙΘΜΟΙ ΓΡΑΦΗΜΑΤΩΝ

Συντομότερες ιαδρομές

Γέφυρες σε Δίκτυα. Μας δίνεται ένα δίκτυο (κατευθυνόμενο γράφημα) αφετηριακός κόμβος. Γέφυρα του (με αφετηρία τον ) :

Αλγόριθμοι και πολυπλοκότητα: 4 η σειρά ασκήσεων ΣΗΜΜΥ - Ε.Μ.Π.

Αναζήτηση στους γράφους. - Αναζήτηση η κατά βάθος Συνεκτικές Συνιστώσες - Αλγόριθμος εύρεσης συνεκτικών συνιστωσών

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

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

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

Συντομότερες ιαδρομές

Ελαφρύτατες διαδρομές

Συντομότερες Διαδρομές

z 1 E(G) 2(k 1) = 2k 3. x z 2 H 1 H 2

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

Θέματα Υπολογισμού στον Πολιτισμό - Δένδρα. Δένδρα

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

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

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

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

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

Επίπεδα Γραφήματα (planar graphs)

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

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

3η Σειρά Γραπτών Ασκήσεων

E(G) 2(k 1) = 2k 3.

ΘΕΩΡΙΑ ΓΡΑΦΩΝ. 10 η Διάλεξη Κατευθυνόμενοι Γράφοι Βασικά χαρακτηριστικά Αλγόριθμοι διάσχισης κατευθυνόμενων γράφων Λίγα Λόγια για Αλυσίδες Markov

Δομές Δεδομένων και Αλγόριθμοι

ΠΛΗ 20, 5 η ΟΣΣ: Θεωρία Γραφημάτων

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

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

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

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

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

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

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

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

Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου. Θεωρία Υπολογισμού. Ενότητα 3 : Γραφήματα & Αποδείξεις. Αλέξανδρος Τζάλλας

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

Θεωρία Υπολογισμού και Πολυπλοκότητα Μαθηματικό Υπόβαθρο

Transcript:

Εισαγωγή στους Αλγορίθμους Ενότητα 7η Διδάσκων Χρήστος Ζαρολιάγκης Καθηγητής Τμήμα Μηχανικών Η/Υ & Πληροφορικής Πανεπιστήμιο Πατρών Email: zaro@ceid.upatras.gr

Αλγόριθμοι Γραφημάτων Τοπολογική Διάταξη Ισχυρά Συνεκτικές κές Συνιστώσες

Κατευθυνόμενα Ακυκλικά Γραφήματα και Κατευθυνόμενα Ακυκλικά Γραφήματα και Τοπολογική Διάταξη

Τοπολογική Διάταξη Ορισμός. Μια τοπολογική διάταξη ενός κατευθυνόμενου γραφήματος G=(V (V, E)είναι μια διάταξη των κόμβων του v 1, v 2,, v n τέτοια ώστε (v i, v j ) να ισχύει i < j. α b G f g c e d v 2 v 3 v 1 v 2 v 3 v 4 v 5 v 6 v 7 v 6 v 5 v 4 v 7 v 1 Μια τοπολογική διάταξη 4

Τοπολογική Διάταξη Ορισμός. Μια τοπολογική διάταξη ενός κατευθυνόμενου γραφήματος G=(V (V, E)είναι μια διάταξη των κόμβων του v 1, v 2,, v n τέτοια ώστε (v i, v j ) να ισχύει i < j. Ερώτηση. Έχουν όλα τα κατευθυνόμενα γραφήματα τοπολογική διάταξη; α b α b G f g c G c e d Το G δεν έχει τοπολογική διάταξη, γιατί περιέχει κύκλο 5

Κατευθυνόμενα Ακυκλικά Γραφήματα (DAG) & Τοπολογική Διάταξη Ορισμός. Ένα DAG είναι ένα κατευθυνόμενο γράφημα που δεν περιέχει κύκλους. Θεώρημα. Ένα κατευθυνόμενο γράφημα έχει τοπολογική διάταξη αν και μόνο αν είναι DAG. α b ένα DAG f g c e d v 2 v 3 v 1 v 2 v 3 v 4 v 5 v 6 v 7 v 6 v 5 v 4 v 7 v 1 Μια τοπολογική διάταξη 6

Εφαρμογές - Περιορισμοί προτεραιότητας Περιορισμοί προτεραιότητας. Η ακμή (v i, v j ) σημαίνει ότι η εργασία v i πρέπει να προηγηθεί της v j. Εφαρμογές. Γράφημα προαπαιτούμενων μαθημάτων: μ το μάθημα μ v i πρέπει να διδαχθεί πριν από το μάθημα v j. Μεταγλώττιση: το κομμάτι κώδικα v i πρέπει να μεταγλωττιστεί πριν από το v j. Διοχέτευση υπολογιστικών εργασιών: η έξοδος της εργασίας v i χρειάζεται για τον προσδιορισμό της εισόδου της εργασίας v j. Υπολογισμός παραστάσεων, π.χ. ((a + b) (c + d) + e) (a + b) 7

Κατευθυνόμενα Ακυκλικά Γραφήματα Λήμμα 1. Αν το G έχει τοπολογική διάταξη, τότε το G είναι ένα DAG. Απόδειξη. (με άτοπο) ) Υποθέστε ότι το G έχει τοπολογική διάταξη v 1,, v n και ότι το G έχει επίσης έναν κατευθυνόμενο κύκλο C. Έστω v i ο κόμβος με τον μικρότερο δείκτη στον C, και έστω v j ο κόμβος ακριβώς πριν από τον v i. Άρα η (v j, v i ) είναι μια ακμή. Από την επιλογή του i, έχουμε i<j j. Αντιθέτως, αφού η (v j, v i ) είναι ακμή, και v 1,, v n είναι τοπολογική διάταξη, πρέπει να ισχύει j < i, άτοπο. Ο κατευθυνόμενος κύκλος C v 1 v i v j v n Η υποτιθέμενη τοπολογική διάταξη: v 1,, v n 8

Κατευθυνόμενα Ακυκλικά Γραφήματα Λήμμα 1. Αν το G έχει τοπολογική διάταξη, τότε το G είναι ένα DAG. Ερώτηση 1. Έχει κάθε DAG μια τοπολογική διάταξη; Ερώτηση 2. Αν ναι, πως υπολογίζουμε μια; 9

Κατευθυνόμενα Ακυκλικά Γραφήματα Λήμμα 2. Αν το G είναι DAG, τότε το G έχει έναν κόμβο χωρίς εισερχόμενες ακμές. Απόδειξη. (με άτοπο) ) Υποθέτουμε ότι το G είναι ένα DAG και κάθε κόμβος έχει τουλάχιστον μια εισερχόμενη ακμή. Διαλέγουμε έναν κόμβο v, και ακολουθούμε ανάδρομες ακμές από τον v. Αφού ο v έχει τουλάχιστον μια εισερχόμενη ακμή (u, v) μπορούμε να προχωρήσουμε ανάδρομα στον u. Κατόπιν, αφού ο u έχει τουλάχιστον μια εισερχόμενη ακμή (x, u), προχωράμε ανάδρομα από τον x. Συνεχίζουμε μέχρι να συναντήσουμε έναν κόμβο, έστω w, δύο φορές. Έστω C η ακολουθία των κόμβων μεταξύ των δύο επισκέψεων του w. Η ακολουθία C είναι ένας κύκλος. Άτοπο w x u v 10

Κατευθυνόμενα Ακυκλικά Γραφήματα Λήμμα 3. Αν το G είναι DAG, τότε το G έχει τοπολογική διάταξη. Απόδειξη. (με επαγωγή στο n) Αρχική περίπτωση: ισχύει για n = 1. Δεδομένου ενός DAG με n > 1 κόμβους, βρίσκουμε (από Λήμμα 2) έναν κόμβο v χωρίς εισερχόμενες ακμές. Το G - { v } είναι DAG, αφού η διαγραφή του v δεν δημιουργεί κύκλους. Από την υπόθεση της επαγωγής, το G - {v}έχει τοπολογική διάταξη. Τοποθετούμε τον v πρώτο στην τοπολογική διάταξη. Μετά προσθέτουμε τους κόμβους του G - { v } σε τοπολογική διάταξη. Αυτό είναι έγκυρο αφού ο v δεν έχει εισερχόμενες ακμές. DAG v 11

Κατευθυνόμενα Ακυκλικά Γραφήματα Θεώρημα. Ένα κατευθυνόμενο γράφημα έχει τοπολογική διάταξη αν και μόνο αν είναι DAG. Απόδειξη. Από Λήμματα 1 και 3. 12

Αλγόριθμος Τοπολογικής Διάταξης. Αν τέτοιος κόμβος, τότε το G έχει κύκλο DAG v 13

Αλγόριθμος Τοπολογικής Διάταξης Χρόνος εκτέλεσης Θεώρημα. Ο αλγόριθμος βρίσκει (εφόσον υπάρχει) μια τοπολογική διάταξη ενός κατευθυνόμενου γραφήματος G σε χρόνο O(m + n). Απόδειξη. Ορθότητα: Λήμμα 2. Διατηρούμε τις παρακάτω πληροφορίες: count[w] = αριθμός απομενουσών εισερχόμενων ακμών του w S = σύνολο απομενόντων κόμβων χωρίς εισερχόμενες ακμές (λίστα) Αρχικοποίηση: O(m + n) με μια μοναδική σάρωση του γραφήματος. Ενημέρωση: για τη διαγραφή του v Αφαίρεση του v από το S(O(1) χρόνος) Μείωση του count[w] για όλες τις ακμές από τον v στον w, και πρόσθεση του w στο S αν το count[w] φτάσει στο 0 Αυτό εκτελείται σε O(1) χρόνο ανά ακμή 14

Εναλλακτικός Αλγόριθμος Τοπολογικής Διάταξης 1. Εκτέλεση DFS στο G για υπολογισμό χρόνων εγκατάλειψης f[v], v V 2. Κάθε κορυφή που εγκαταλείπεται τοποθετείται στην αρχή μιας λίστας. 3. Η διάταξη των f[v] σε φθίνουσα σειρά αποτελεί την ζητούμενη τοπολογική διάταξη. Θεώρημα. Ο εναλλακτικός αλγόριθμος βρίσκει μια τοπολογική διάταξη ενός DAG σε χρόνο O(n+m). Ερώτηση. Πώς μπορεί να τροποποιηθεί θίο εναλλακτικός αλγόριθμος λό έτσι ώστε να δέχεται ως είσοδο ένα οποιοδήποτε κατευθυνόμενο γράφημα G και να βρίσκει την τοπολογική διάταξη αν είναι DAG, αλλιώς να σταματά δηλώνοντας ότι το G έχει κύκλο; DAG v 15

Ισχυρά Συνεκτικές Συνιστώσες

Ισχυρά Συνεκτικές Συνιστώσες Ορισμός. Έστω G = (V,E) ένα κατευθυνόμενο γράφημα. Μια ισχυρά συνεκτική συνιστώσα (ΙΣΣ) του G είναι ένα μέγιστο σύνολο U V κορυφών έτσι ώστε u,v V, διαδρομή από την u στην v και από την v στην u Παρατήρηση. Το σύνολο U ορίζει με μονοσήμαντο τρόπο ένα επαγώμενο υπογράφημα I=(UE ) (U,E) του G=(V (V, E), το οποίο είναι ισχυρά συνεκτικό. a b c d e f g h 17

Ισχυρά Συνεκτικές Συνιστώσες Ορισμός. Έστω G = (V,E) ένα κατευθυνόμενο γράφημα. Μια ισχυρά συνεκτική συνιστώσα (ΙΣΣ) του G είναι ένα μέγιστο σύνολο U V κορυφών έτσι ώστε u,v V, διαδρομή από την u στην v και από την v στην u Παρατήρηση. Το σύνολο U ορίζει με μονοσήμαντο τρόπο ένα επαγώμενο υπογράφημα I=(UE ) (U,E) του G=(V (V, E), το οποίο είναι ισχυρά συνεκτικό. a b c d e f g h 18

Ισχυρά Συνεκτικές Συνιστώσες Ορισμός. Το γράφημα G rev = (V, E rev ), με E rev = {(u,v): (v,u) E}, καλείται λί ανάστροφο γράφημα ενός κατευθυνόμενου γραφήματος G = (V,E) Παρατήρηση. G και G rev έχουν ακριβώς τις ίδιες ΙΣΣ. a b c d e f g h a b c d e f g h 19

Ισχυρά Συνεκτικές Συνιστώσες Ιδέα Αλγορίθμου Ιδιότητα. Το γράφημα G =(V, E ) που προκύπτει αν «συρρικνώσουμε» ώ κάθε ΙΣΣ σε μια κορυφή είναι DAG. Ιδέα Αλγορίθμου. Επίσκεψη των κορυφών του G σε τοπολογική διάταξη Επίσκεψη κορυφών του G σε φθίνουσα διάταξη ως προς f[ ], εργαζόμενοι όμως στο G rev a b c d e f g h cd abe a b c d fg h e f g h 20

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

ΙΣΣ Παράδειγμα Εκτέλεσης Αλγορίθμου DFS από c a b c d 13/14 11/16 1/10 8/9 12/15 3/4 2/7 5/6 e f g h a b c d e f g h 22

ΙΣΣ Ορθότητα Αλγορίθμου Ορισμός. Έστω U V. Τότε, d(u) = min {d[u] : u U} και f(u) = max{f[u] : u U} Λήμμα. Έστω C, C διαφορετικές ΙΣΣ του G rev και έστω (v,u) G rev με u C και v C. Τότε, f(c) > f(c ). C C G rev : u v 23

ΙΣΣ Ορθότητα Αλγορίθμου Ορισμός. Έστω U V. Τότε, d(u) = min {d[u] : u U} και f(u) = max{f[u] : u U} Λήμμα. Έστω C, C διαφορετικές ΙΣΣ του G rev και έστω (v,u) G rev με u C και v C. Τότε, f(c) > f(c ). C C C C G rev : u v G : u v 24

ΙΣΣ Απόδειξη Ορθότητας Αλγορίθμου Ορισμός. Έστω U V. Τότε, d(u) = min {d[u] : u U} και f(u) = max{f[u] : u U} Ισοδύναμο Λήμμα. Έστω C, C διαφορετικές ΙΣΣ του G και έστω (u,v) G με u C και v C. Τότε, f(c) > f(c ). Απόδειξη. (α) d(c) < d(c ). Έστω x C: d[x] = d(c). Όλες οι w C είναι προσπελάσιμες από την x μέσω της (u,v) όλες οι κορυφές των C και C θα γίνουν απόγονοι της x σε αναζήτηση DFS η x θα εγκαταλειφθεί τελευταία f[x] = f(c) > f(c ). C C u x v w (β) d(c) > d(c ). Έστω y C : d[y] = d(c ). Όλες οι v C θα ανακαλυφθούν μετά την y σε μια DFS, η y θα εγκαταλειφθεί τελευταία f[y] = f(c ). Αφού (u,v) G με u C και v C, τότε από την Ιδιότητα οι κορυφές της C δεν είναι προσπελάσιμες από καμία κορυφή της C τη χρονική στιγμή f[y] όλες οι w C δεν έχουν ανακαλυφθεί ακόμη w C, f[w] > f[y] = f(c ) f(c) > f(c ). C C u v y 25

ΙΣΣ Χρονική Πολυπλοκότητα Αλγορίθμου Θώ Θεώρημα. Ο αλγόριθμος λό υπολογίζει τις ΙΣΣ ενός κατευθυνόμενου γραφήματος G σε χρόνο O(n+m). Απόδειξη. Έπεται από την ΠΧΠ του αλγορίθμου DFS και την κατασκευή του G rev σε χρόνο O(m). 26