Ελαφρύτατες διαδρομές
Ελαφρύτατες διαδρομές Κατευθυνόμενο γράφημα Συνάρτηση βάρους Ελαφρύτατη διαδρομή από το u στο v : διαδρομή με και ελάχιστο βάρος s 3 t 7 x 5 3 y z Βάρος ελαφρύτατης διαδρομής εάν υπάρχει διαδρομή από το u στο v διαφορετικά
Ελαφρύτατες διαδρομές Κατευθυνόμενο γράφημα Συνάρτηση βάρους Ελαφρύτατη διαδρομή από το u στο v : διαδρομή με και ελάχιστο βάρος s 3 t 7 x 5 3 y z Βάρος ελαφρύτατης διαδρομής εάν υπάρχει διαδρομή από το u στο v διαφορετικά
Ελαφρύτατες διαδρομές Κατευθυνόμενο γράφημα Συνάρτηση βάρους Ελαφρύτατη διαδρομή από το u στο v : διαδρομή με και ελάχιστο βάρος s 3 t 7 x 5 3 y z Βάρος ελαφρύτατης διαδρομής εάν υπάρχει διαδρομή από το u στο v διαφορετικά
Κατευθυνόμενο γράφημα Συνάρτηση βάρους Ελαφρύτατη διαδρομή από το u στο v : διαδρομή με και ελάχιστο βάρος s 0 3 t 3 7 x 5 3 5 y z Βάρος ελαφρύτατης διαδρομής εάν υπάρχει διαδρομή από το u στο v διαφορετικά Θέλουμε να βρούμε όλες τις ελαφρύτερες διαδρομές από το s προς κάθε άλλο κόμβο
Κατευθυνόμενο γράφημα Συνάρτηση βάρους Ελαφρύτατη διαδρομή από το u στο v : διαδρομή με και ελάχιστο βάρος s 0 3 t 3 7 x 5 3 5 y z Βάρος ελαφρύτατης διαδρομής εάν υπάρχει διαδρομή από το u στο v διαφορετικά Θέλουμε να βρούμε όλες τις ελαφρύτερες διαδρομές από το s προς κάθε άλλο κόμβο
Ελαφρύτατες διαδρομές Βέλτιστη υποδομή Έστω p μία ελαφρύτατη διαδρομή από το u στο v. Έστω x και y δύο οποιοιδήποτε κόμβοι πάνω στο p και q η υποδιαδρομή του p από το x στο y. H q είναι μια ελαφρύτατη διαδρομή από το x στο y.
Ελαφρύτατες διαδρομές Ακμές αρνητικού βάρους a b c d 0-7 -5-7 a b c d 0-5 Η ελαφρύτατη διαδρομή από ένα κόμβο u προς ένα κόμβο v είναι καλά καθορισμένη όταν δεν υπάρχει διαδρομή από το u στο v που να περιέχει κύκλο αρνητικού βάρους.
Ελαφρύτατες διαδρομές Κύκλοι u x c u x p q v v Αν η ελαφρύτατη διαδρομή από ένα κόμβο u προς ένα κόμβο v είναι καλά καθορισμένη τότε υπάρχει ελαφρύτατη διαδρομή από το u στο v που είναι άκυκλη.
Προκάτοχος ο κόμβος που προηγείται του v στην ελαφρύτατη διαδρομή από το s Γράφημα προκατόχων Αποτελείται από τους κόμβους v για τους οποίους υπάρχει μονοπάτι από το s και από τις ακμές 3 t 3 x s 0 7 5 3 5 y z
Προκάτοχος ο κόμβος που προηγείται του v στην ελαφρύτατη διαδρομή από το s Γράφημα προκατόχων Αποτελείται από τους κόμβους v για τους οποίους υπάρχει μονοπάτι από το s και από τις ακμές 3 t 3 x Το γράφημα δένδρο με ρίζα το s είναι s 0 5 3 5 y 7 z Το μονοπάτι του από το s στο v είναι ελαφρύτατη διαδρομή στο από το s στο v
Προκάτοχος ο κόμβος που προηγείται του v στην ελαφρύτατη διαδρομή από το s Προεκτίμηση ελαφρύτατης διαδρομής άνω φράγμα του βάρους της ελαφρύτατης διαδρομής από το s στο v Αρχικοποίηση : ΚΕΝΟ, Χαλάρωση 5 5 ΧΑΛΑΡΩΣΗ(u,v,w) αν τότε ΧΑΛΑΡΩΣΗ(u,v,w) ΧΑΛΑΡΩΣΗ(u,v,w) 5 7 5 Μετά την αρχικοποίηση πραγματοποιούμε μια αλληλουχία πράξεων χαλάρωσης.
Χρησιμοποιείται όταν τα βάρη είναι μη αρνητικά : Διατηρούμε σύνολο κόμβων για τους οποίους έχει υπολογιστεί το τελικό βάρος της ελαφρύτατης διαδρομής από το Σε κάθε επανάληψη επιλέγουμε έναν κόμβο που να έχει την ελάχιστη προεκτίμηση ελαφρύτατης διαδρομής, προσθέτουμε το στο και χαλαρώνουμε τις ακμές που εκκινούν από αυτόν. Χρησιμοποιούμε μια ουρά προτεραιότητας με κλειδιά τις τιμές
αρχικοποίηση των και ενόσω ΕΞΑΓΩΓΗΕΛΑΧΙΣΤΟΥ για κάθε ακμή ΧΑΛΑΡΩΣΗ
αρχικοποίηση των και 0 3 ενόσω ΕΞΑΓΩΓΗΕΛΑΧΙΣΤΟΥ 5 7 για κάθε ακμή ΧΑΛΑΡΩΣΗ
αρχικοποίηση των και 0 ενόσω ΕΞΑΓΩΓΗΕΛΑΧΙΣΤΟΥ 0 3 5 7 για κάθε ακμή ΧΑΛΑΡΩΣΗ
αρχικοποίηση των και 0 0 ενόσω ΕΞΑΓΩΓΗΕΛΑΧΙΣΤΟΥ 0 3 5 7 5 για κάθε ακμή ΧΑΛΑΡΩΣΗ
αρχικοποίηση των και 0 8 ενόσω ΕΞΑΓΩΓΗΕΛΑΧΙΣΤΟΥ 0 3 5 7 5 7 για κάθε ακμή ΧΑΛΑΡΩΣΗ
αρχικοποίηση των και 0 8 3 ενόσω ΕΞΑΓΩΓΗΕΛΑΧΙΣΤΟΥ 0 3 5 7 5 7 για κάθε ακμή ΧΑΛΑΡΩΣΗ
αρχικοποίηση των και 0 8 ενόσω ΕΞΑΓΩΓΗΕΛΑΧΙΣΤΟΥ 0 3 5 7 5 7 για κάθε ακμή ΧΑΛΑΡΩΣΗ
αρχικοποίηση των και 0 8 ενόσω ΕΞΑΓΩΓΗΕΛΑΧΙΣΤΟΥ 0 3 5 7 5 7 για κάθε ακμή ΧΑΛΑΡΩΣΗ
Θεώρημα Ο αλγόριθμος Dijkstra είναι ορθός. Αρκεί να αποδείξουμε ότι τη στιγμή που τοποθετούμε τον κόμβο ισχύει στο Έστω ότι ο είναι ο πρώτος κόμβος για τον οποίο όταν τοποθετείται στο και έστω μια ελαφρύτατη διαδρομή από το στο Ορίζουμε ακόμα ο πρώτος κόμβος της για τον οποίο ο προκάτοχος του στην υποδιαδρομή από το στο υποδιαδρομή από το στο
Θεώρημα Ο αλγόριθμος Dijkstra είναι ορθός. Από τον ορισμούς προκύπτει ότι προστίθεται στο. Παρατηρούμε ότι της έχουμε τη στιγμή που το, επομένως μετά τη χαλάρωση Επειδή το προηγείται του στην ελαφρύτατη διαδρομή Όμως το επιλέχθηκε πριν από το, επομένως Άτοπο!
αρχικοποίηση των και ενόσω επαναλήψεις ΕΞΑΓΩΓΗΕΛΑΧΙΣΤΟΥ για κάθε ακμή ΧΑΛΑΡΩΣΗ πράξεις
αρχικοποίηση των και δομή χρόνος εκτέλεσης ενόσω ΕΞΑΓΩΓΗΕΛΑΧΙΣΤΟΥ επαναλήψεις πίνακας δυαδικός σωρός σωρός Fibonacci για κάθε ακμή ΧΑΛΑΡΩΣΗ πράξεις ΧΑΛΑΡΩΣΗ αν τότε ΜΕΙΩΣΗΚΛΕΙΔΙΟΥ