ΘΕΩΡΙΑ ΓΡΑΦΩΝ η Διάλεξη Δέντρα Βασικές έννοιες και ιδιότητες Απαρίθμηση δένδρων γραφήματος Δυαδικά Δέντρα Ελάχιστα Γεννητορικά Δένδρα (Spanning Trees) Αποστάσεις Γεννητορικών (Γενετικών) Δένδρων
Δένδρα ayley rthur ayley, 87 k k+, πλήθος ισομερών Άτομα άνθρακα : κορυφές βαθμού υδρογόνου : κορυφές βαθμού n=k+k+=k+ m=½(σd(v))=½(k+k+)=k+
Πλήθος ισομερών του k k+ Εφόσον οι κορυφές που παριστούν το είναι εκκρεμείς και άρα εξαρτώνται κατά μοναδικό τρόπο από τις κορυφές που αναπαριστούν τον άνθρακα, δεν χρειάζεται να απεικονίζονται στο σχετικό γράφο. Έτσι, αρκεί να εξετασθεί τι συμβαίνει με τα k άτομα του άνθρακα σε έναν απλουστευμένο γράφο όπου πλέον δεν υπάρχει διάκριση μεταξύ των κορυφών. 0
Βασικά θεωρήματα Δένδρα: Συνδεδεμένοι άκυκλοι γράφοι Θεώρημα: Ένας γράφος είναι δένδρο αν και μόνο αν δύο οποιεσδήποτε κορυφές ενώνονται με ένα μοναδικό μονοπάτι. Θεώρημα: Σε ένα δένδρο Τ ισχύει η σχέση: m=n (ακμές) Πόρισμα: Σε κάθε δένδρο υπάρχουν τουλάχιστον δύο εκκρεμείς κορυφές, δηλαδή κορυφές με βαθμό.
Βασικά θεωρήματα () Πόρισμα: Μία μη αύξουσα ακολουθία ακεραίων S: d,d,,d n ανήκει σε ένα δένδρο μόνο αν κάθε d i είναι θετικός αριθμός και ισχύει η σχέση: Αναγκαία αλλά όχι ικανή συνθήκη
Βασικά θεωρήματα () Θεώρημα: Ένας άκυκλος γράφος με n κορυφές και n ακμές είναι συνδεδεμένος. Θεώρημα: Κάθε συνδεδεμένος γράφος με n κορυφές και n ακμές είναι δένδρο. Θεώρημα: Ένας γράφος είναι δένδρο αν είναι συνδεδεμένος κατά ελάχιστο τρόπο.
Ιδιότητες δένδρων Ένας συνδεδεμένος γράφος με n κορυφές είναι δένδρο: αν δεν περιέχει κύκλους αν υπάρχει μόνο μονοπάτι μεταξύ τυχαίων κορυφών αν κάθε ακμή είναι γέφυρα αν αποτελείται από n ακμές αν περιέχει τουλάχιστον κορυφές βαθμού (n ) αν παράγεται μόνο κύκλος, αν προθέσουμε ακμή
Ιδιότητες δένδρων () Πόρισμα: Δάσος με n κορυφές και k συνιστώσες έχει n k ακμές. Θεώρημα (ordan, 869): Ένα δένδρο έχει κέντρο που αποτελείται από ή κορυφές Πόρισμα: Αν το κέντρο ενός δένδρου αποτελείται από δύο κορυφές, τότε αυτές είναι γειτονικές και ονομάζονται δίκεντρα-bicenters.
Απαρίθμηση Δένδρων Θεώρημα: Έστω ότι το άθροισμα των θετικών ακεραίων d,d,,d n (όπου n ) είναι n. Το πλήθος των δένδρων με n κόμβους, όπου οι βαθμοί των κόμβων είναι d,d,,d n, ισούται με:
Ιδιότητες Κάθε κορυφή του δένδρου χαρακτηρίζεται από την αντίστοιχη εκκεντρότητα. Η ακτίνα του δένδρου είναι, ενώ η διάμετρος είναι 7. Όπως φαίνεται, το δένδρο έχει κέντρο αποτελούμενο από δύο γειτονικές κορυφές με εκκεντρικότητα. 7 7 6 7 7 6 7 6 7 7 6 7 6 7
Ιδιότητες Δέντρων-Σύνοψη. Κάθε δέντρο έχει δυο ακραίους κόμβους. Η διαγραφή μιας ακμής από ένα δέντρο το αποσυνδέει (αυτή η ακμή ονομάζεται γέφυρα). Ενα δέντρο με n-κόμβους και q ακμές ικανοποιεί τη συνθήκη q=n-. Ετσι, ένα δέντρο είναι ελάχιστα συνδεδεμένο. Δέντρο Τ, με n=, q= a b g c d e f i j k m n h p Ο αριθμός των φύλλων σε ένα δέντρο δίνεται από την ακόλουθη σχέση: Όπου n i = αριθμός των κόμβων με βαθμό i. n n n n... ( i ) n i i
Θεώρημα Ενας γράφος (p,q) είναι δέντρο αν και μόνο αν είναι άκυκλος και ισχύει p=q+ (όπου p το πλήθος κορυφών και q το πλήθος ακμών). Απόδειξη: Αν ο είναι δέντρο, τότε από ορισμό : Ακυκλος. Θα αποδείξουμε την ισότητα: p=q+. Για p= το αποτέλεσμα ισχύει διότι ο είναι τετριμμένος γράφος (q=0). Υποθέτουμε ότι το p=q+ ισχύει για όλα τα δέντρα (p,q) με p κορυφές. Έστω δέντρο με p+ κορυφές και u ένα τελικό του σημείο (σημείο βαθμού ). Ο γράφος =-u είναι δέντρο τάξης p και επομένως p=q() +. Αφού ο έχει μια κορυφή και μια ακμή περισσότερη από τον τότε p()= p+ = (q()+)+ = q()+
Απόδειξη (συνέχεια) Αντίστροφα: : άκυκλος γράφος με p = q+. Για να δείξουμε ότι είναι δέντρο, αρκεί να δείξουμε ότι o συνεκτικός. Έστω όχι συνεκτικός και,,.k οι συνεκτικές συνιστώσες του, k. Επιπλέον ο i ένας (pi,qi) γράφος.τότε κάθε i γράφος είναι δέντρο με pi=qi+. Επομένως: p - = q = qi = (pi-) = p k Άρα k = και συνεκτικός Επομένως ο είναι δέντρο.
Θεώρημα Ένας γράφος είναι δέντρο, αν και μόνο αν κάθε δυο διαφορετικές κορυφές του ενώνονται με ένα μοναδικό μονοπάτι. Απόδειξη: Αν ο είναι δέντρο, τότε οποιεσδήποτε κορυφές u,v ενώνονται με ένα μονοπάτι. Αν οι u,v ενώνονται από διαφορετικά μονοπάτια, τότε υπάρχει κύκλος στον. Αλλά αυτό δεν μπορεί να συμβαίνει επειδή ο είναι δέντρο. Αλλιώς Έστω γράφος για τον οποίο κάθε δυο διαφορετικές κορυφές του ενώνονται με ένα μοναδικό μονοπάτι. Τότε συνεκτικός. Αν ο έχει ένα κύκλο, ο οποίος περιέχει τις κορυφές u,v τότε u και v ενώνονται από τουλάχιστον δυο μονοπάτια. Αυτό όμως παραβιάζει την υπόθεση. Επομένως ο είναι και άκυκλος, άρα δέντρο.
Δέντρο Δέντρο με ρίζα: είναι ένα δέντρο με έναν ειδικά επιλεγμένο κόμβο. Εστω r η ρίζα του δέντρου Τ. Τα δέντρα του δάσους T-r λέγονται υποδέντρα της ρίζας r. Υποδέντρα της ρίζας υ είναι τα:
Επίπεδα Δέντρων
Απαρίθμηση δένδρων Θεώρημα (ayley): Το πλήθος των διακριτών δένδρων με επιγραφές και n κορυφές είναι n n Απόδειξη ayley: Επιγράφουμε τους κόμβους του δένδρου με,,...,n. Βρίσκουμε την εκκρεμή ακμή με τη μικρότερη επιγραφή, έστω a. Τη διαγράφουμε και έστω b η γειτονική της. Επαναλαμβάνουμε τη διαδικασία στον υπογράφο που μένει. Έτσι, μετά από n διαγραφές, το δένδρο εκφυλίζεται σε μία ακμή, και έχουμε δημιουργήσει S: (b, b,..., b n- ). Κάθε στοιχείο της ακολουθίας S μπορεί να πάρει τιμές από το διάστημα [..n] Το δένδρο ορίζεται κατά μοναδικό τρόπο από την ακολουθία b, b,..., b n-, όπου b i n- και i n-=> n n-
Μέθοδος Pruefer (98) Η μέθοδος Pruefer είναι μία μέθοδος ανακατασκευής του δένδρου με βάση την ακολουθία S που προκύπτει από το προηγούμενο θεώρημα. Η ακολουθία S πρέπει να αποτελείται από n ακεραίους στο διάστημα [..n]. Κωδικοποίηση Pruefer.
νακατασκευή δένδρου από επιγραφές Μέθοδος ανακατασκευής δένδρου από ακολουθία επιγραφών, όπως στην απόδειξη του ayley: Έστω n=8 και b=,,,,,. Αναζητείται ο μικρότερος αριθμός από το διάστημα [,8], που δεν εμφανίζεται στην ακολουθία b. Ο αριθμός αυτός είναι ο a =. Έτσι προσδιορίζεται η ακμή (a, b )=(,). Με τον ίδιο τρόπο προσδιορίζονται οι ακμές (a, b )=(,), (a, b )=(6,), (a,b )= (7,), (a, b )=(,) και (a 6, b 6 )=(,). 7 8 6 Στο τέλος ενώνεται η μη χρησιμοποιημένη () με τη μέγιστη επιγραφή (8)
Ριζωμένα δένδρα Θεώρημα: Ο αριθμός των διακριτών ριζωμένων δένδρων με επιγραφές που έχει n κορυφές είναι n n-. Ισομορφικά δένδρα μπορεί να είναι αλλά μπορεί και να μην είναι ισομορφικά ως ριζωμένα.
Ζευγνύοντα δένδρα Από κάθε συνδεδεμένο γράφο (V,) μπορούν να παραχθούν Ε διαφορετικοί υπογράφοι. Ζευγνύον δένδρο - spanning tree, ενός συνδεδεμένου γράφου ονομάζεται ένα δένδρο Τ που είναι υπογράφος του με σύνολο κορυφών V(T)=V(). Οι ακμές ενός ζευγνύοντος δένδρου Τ ενός γράφου ονομάζονται κλαδιά-branches. Οι ακμές του που δεν είναι κλαδιά ονομάζονται χορδές-chords. Ο αριθμός των κλαδιών ενός ζευγνύοντος δένδρου ισούται με τη σειρά του γράφου, ενώ ο αριθμός των χορδών του γράφου ισούται με τη μηδενικότητά του.
Επικαλύπτοντα Δέντρα () Θεώρημα: Κάθε συνδεδεμένος γράφος έχει τουλάχιστον ένα επικαλύπτον (ζευγνύον) δένδρο Πόρισμα: Κάθε συνδεδεμένος γράφος με n κορυφές και m ακμές μπορεί να θεωρηθεί ως η ένωση ενός ζευγνύοντος δένδρου T με n- κλαδιά και ενός υπογράφου με m-n+ χορδές. Ας θεωρήσουμε ένα ηλεκτρικό κύκλωμα που απεικονίζεται με ένα γράφο από n κορυφές και m ακμές. Ποιος είναι ο ελάχιστος αριθμός ακμών που πρέπει να διαγράψουμε, έτσι ώστε να μην υπάρχει κανένα ρεύμα στο κύκλωμα; Απάντηση: Ο αριθμός των χορδών m-n+.
Γεννητορικό Δέντρο-Ορισμός Το «κόκκινο» γράφημα είναι γεννητορικό δέντρο (spanning tree) του γράφου.
Επικαλύπτοντα Δέντρα () Για να φτιάξουμε ένα γεννητορικό δέντρο ενός συνδεδεμένου γράφου, με n κόμβους και q ακμές (ένα δέντρο έχει n κόμβους και n- ακμές) πρέπει να διαγράψουμε q-n+ ακμές, καμια από τις οποίες να μην είναι γέφυρα. Π.χ. Βρείτε τα γεννητορικά δέντρα του συνδεδεμένου γράφου : e f g a d h b c
Επικαλύπτοντα Δέντρα () Τα spanning trees του : a e f b d c g h a e f b d c g h a e f b d c g h a e f b d c g h a e f b d c g h a e f b d c g h a e f b d c g h
Θεωρήματα για ζευγνύοντα δένδρα Θεώρημα: Κάθε συνδεδεμένος γράφος έχει τουλάχιστον ένα ζευγνύον δένδρο. Θεώρημα: Αν σε γράφο ισχύει d() k και ο γράφος Τ είναι δένδρο με k+ κορυφές, τότε το Τ είναι ζευγνύον δένδρο του.
Θεωρήματα απαρίθμησης Πόσα ζευγνύοντα δένδρα μπορούν να προκύψουν από ένα συνδεδεμένο γράφο; Θεώρημα: Ο αριθμός των διακριτών ζευγνυόντων δένδρων ενός πλήρους γράφου Κ n είναι n n-. Θεώρημα: Ο αριθμός των διακριτών ζευγνυόντων δένδρων ενός πλήρους διμερούς γράφου K m,n είναι m n- n m-.
Απαρίθμηση ζευγνυόντων δένδρων Ζευγνύοντα δένδρα του Κ
Θεωρήματα απαρίθμησης () Θεώρημα: Ο αριθμός των διακριτών ζευγνυόντων δένδρων ενός πλήρους διμερούς γράφου K,n είναι n n- a b x
Θεωρήματα απαρίθμησης () Θεώρημα: Ο αριθμός των διακριτών ζευγνυόντων δένδρων ενός πλήρους διμερούς γράφου K,n είναι n n- a b c a b c x y z
Μερικοί ορισμοί για πίνακες Πίνακας βαθμών: (i,j)=0 για i j και (i,i)=d(v i ) για i n. Αν από ένα δισδιάστατο πίνακα Β με nn στοιχεία διαγραφεί η i-οστή γραμμή και η j-οστή στήλη, τότε προκύπτει ένας πίνακας ij που ονομάζεται ελάσσωνminor στη θέση i,j. Συμπαράγοντας-cofactor του πίνακα στη θέση i,j λέγεται η τιμή (-) i+j ij 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0,
Θεώρημα πίνακα-δένδρου Kirchoff Matrix-tree theorem Έστω ένας μη ασήμαντος γράφος με πίνακα γειτνίασης Α και πίνακα βαθμών. Ο αριθμός των διαφορετικών ζευγνυόντων δένδρων του ισούται με την τιμή οποιουδήποτε συμπαράγοντα του πίνακα -. Ο πίνακας - λέγεται Laplacian
Παράδειγμα θεωρήματος Kirchhoff 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 δένδρα
Θεμελιώδες κύκλωμα Θεμελιώδες κύκλωμα fundamental circuit, δημιουργείται αν χορδή εισαχθεί σε ζευγνύον δένδρο Ποιό το πλήθος των θεμελιωδών κυκλωμάτων για τυχόν ζευγνύον δένδρο? m n+ Από τυχόν ζευγνύον δένδρο και τυχαία χορδή παράγεται ένα πρώτο θεμελιώδες κύκλωμα. Κατόπιν με κυκλικές εναλλαγές (cyclic interchanges) παράγονται όλα τα ζευγνύοντα δένδρα
Κυκλικές εναλλαγές Επιλέγουμε ένα ζευγνύον δένδρο Τ του Εισάγουμε μια χορδή στο Τ, οπότε παράγεται ένα θεμελιώδες κύκλωμα i Διαγράφοντας μία-μία τις ακμές του i παράγονται τα Τ, Τ, Τ Κ ζευγνύοντα δέντρα Εισάγουμε νέα χορδή, οπότε παράγεται νέο θεμελιώδες κύκλωμα i+ T
Απόσταση δένδρων Απόσταση δύο ζευγνυόντων δένδρων ενός συνδεδεμένου γράφου είναι ο αριθμός των ακμών που ανήκουν στο ένα δένδρο αλλά δεν ανήκουν στο άλλο και δίνεται εξ ορισμού ως dist(t i, T j ) = dist(t j, T i ) dist(t i, T j ) 0 και dist(t i, T i )=0 αν και μόνο αν T i =T j dist(t i, T j ) dist(t j, T k )+ dist(t k, T j ) Δενδρικός γράφος tree graph, οι κόμβοι αντιστοιχούν σε ζευγνύονται δένδρα και ενώνονται αν το ένα προκύπτει από το άλλο με κυκλική εναλλαγή. Η απόσταση δύο ζευγνυόντων δένδρων ισούται με την απόσταση των αντίστοιχων κόμβων στο δενδρικό γράφο.
Απόσταση δένδρων () Θεώρημα: Η μέγιστη απόσταση μεταξύ δύο ζευγνυόντων δένδρων T i και T j ενός συνδεδεμένου γράφου (V,) είναι: Κεντρικό λέγεται ένα ζευγνύον δένδρο T 0 αν για κάθε ζευγνύον δένδρο Τ ισχύει η σχέση
Διατήρηση απόστασης Δεδομένου γράφου μπορούμε να κατασκευάσουμε δένδρο Τ, όπου η απόσταση από κάποια κορυφή v Τ προς όλες τις υπόλοιπες κορυφές του Τ να είναι ίδια με την ελάχιστη απόσταση της κορυφής v προς κάθε μία από τις κορυφές του. Τότε λέγεται ότι το ζευγνύον δένδρο Τ διατηρεί την απόσταση από την κορυφή v.
Το πρόβλημα του συνδέσμου Το πρόβλημα του συνδέσμου (connector problem) σε γράφο εξετάζει την εύρεση ενός δένδρου που ονομάζεται ελάχιστο και είναι το ζευγνύον δένδρο με το ελάχιστο βάρος (για ζυγισμένους γράφους). Ελάχιστο Ζευγνύον Δένδρο Minimum Spanning Tree Στη βιβλιογραφία αναφέρεται ως MST Εφαρμογή MST στη σχεδίαση δικτύων: τηλεπικοινωνιακό, ηλεκτρικό, οδικό, υδραυλικό, υπολογιστικό, καλωδιακής τηλεόρασης, κλπ στην ομαδοποίησης-clustering σε προσεγγιστικούς αλγορίθμους για NP προβλήματα (TSP)
Δύο ιδιότητες των MST ycle Property: Για κάθε κύκλο στο γράφο, η βαρύτερη ακμή του δεν εμφανίζεται στο MST Χρησιμοποιείται για να εξαιρέσουμε ακμές ut Property: Για κάθε μη κενό υποσύνολο κορυφών S, η ελαφρύτερη ακμή που προσπίπτει σε μία μόνο κορυφή του S ανήκει στο MST Χρησιμοποιείται για να μην εξαιρέσουμε ακμές S S'
Τομή cycle-cut Η τομή ενός cycle και ενός cut είναι ένας άρτιος αριθμός ακμών. 6 ntersection = {,},{,6} 7 8
Kλασικοί άπληστοι αλγόριθμοι Kruskal Επιλέγουμε την ελαφρύτερη ακμή που δεν δημιουργεί κύκλο Prim Επιλέγουμε τυχαία μία πρώτη κορυφή v Κάθε φορά, έχουμε μία συνδεδεμένη συνιστώσα N που περιέχει τη v και κάποιους άλλους κόμβους V-N Επιλέγουμε την ελαφρύτερη ακμή από Ν προς V-N oruvka Prim εν παραλλήλω και... Αντίστροφης διαγραφής Kruskal αντίστροφος
Αλγόριθμος Kruskal (96). Αρχικά το δένδρο Τ είναι κενό. Θέτουμε i=0. Οι ακμές ταξινομούνται κατά μη φθίνον βάρος.. Εισάγεται στο Τ η επόμενη ακμή που δεν ανήκει ήδη στο Τ και δεν δημιουργεί κύκλο. Θέτουμε i=i+. Αν i<n, τότε πηγαίνουμε στο Βήμα. Θεώρημα: Ο αλγόριθμος Kruskal δίνει ένα ζευγνύον δένδρο με ελάχιστο βάρος.
Παράδειγμα 8 8 7 8 7 6 9 7 6 9 0 Δεν λαμβάνεται η ακμή (8,7) διότι δημιουργείται κύκλος Δεν λαμβάνεται η ακμή (8,9) διότι δημιουργείται κύκλος Δεν λαμβάνεται η ακμή (,) διότι δημιουργείται κύκλος
omplete raph 0 6
0 6 6 0
0 6 6 0 Sort dges (in reality they are placed in a priority queue - not sorted - but sorting them makes the algorithm easier to visualize)
0 6 6 0 dd dge
0 6 6 0 dd dge
0 6 6 0 dd dge
0 6 6 0 dd dge
0 6 6 0 dd dge
0 6 6 0 ycle on t dd dge
0 6 6 0 dd dge
0 6 6 0 dd dge
0 6 6 0 dd dge
0 6 6 0 ycle on t dd dge
0 6 6 0 dd dge
6 0 Minimum Spanning Tree omplete raph
Αλγόριθμος Prim (97). Στο αρχικό δένδρο Τ εισάγεται μία τυχαία κορυφή v. Θέτουμε i=0.. Από το σύνολο των ακμών που πρόσκεινται στις κορυφές του Τ επιλέγεται εκείνη με το μικρότερο βάρος και εισάγεται στο Τ. Θέτουμε i=i+. Αν i<n, τότε πηγαίνουμε στο Βήμα. Θεώρημα: Ο αλγόριθμος Prim δίνει ένα ζευγνύον δένδρο με ελάχιστο βάρος.
Παράδειγμα 8 8 7 8 7 6 9 7 6 9 0
omplete raph 0 6
6 0 Old raph New raph 6 0
6 0 Old raph New raph 6 0
6 0 Old raph New raph 6 0
6 0 Old raph New raph 6 0
6 0 Old raph New raph 6 0
6 0 Old raph New raph 6 0
6 0 Old raph New raph 6 0
6 0 Old raph New raph 6 0
6 0 Old raph New raph 6 0
6 0 Old raph New raph 6 0
omplete raph Minimum Spanning Tree 6 0
Αλγόριθμος oruvka (96). Ενώνουμε κάθε κόμβο u με τον κοντινότερο γείτονά του. Σχηματίζεται δάσος από δένδρα.. Ενώνουμε κάθε δένδρο του με το κοντινότερό του δένδρο. Ανανεώνεται η τιμή του.. Αν >, τότε πηγαίνουμε στο Βήμα.
Παράδειγμα 8 8 7 8 7 6 9 7 6 9 0 Τέλος πρώτης φάσης Τέλος δεύτερης φάσης
omplete raph 0 6
Trees of the raph at eginning of Round List of Trees 0 6
Round Tree 0 6
Round dge - 0 6
Round Tree 0 0 6
Round dge - 0 0 6
Round Tree 0 6
Round dge - 0 6
Round Tree 0 6 6
Round dge - 0 6 6
Round Tree 0 6
Round dge - 0 6
Round Tree 0 6
Round dge - 0 6
Round Tree 0 6
Round dge - 0 6
Round Tree 0 6
Round dge - 0 6
Round Tree 0 6
Round dge - 0 6
Round Tree 0 0 6 6
Round dge - 0 0 6 6
Round nds - dd dges List of dges to dd - - - - - 0 - - 6 - - -
Trees of the raph at eginning of Round List of Trees -- ---- - 0 6
6 0 Round 6 0 Tree --
6 0 Round 6 0 dge -
6 0 Round Tree ----
6 0 Round dge -
6 0 6 0 Round Tree -
6 0 6 0 Round dge -
Round nds - dd dges List of dges to dd - - - 0 6
6 0 Minimum Spanning Tree omplete raph
Αλγόριθμος αντίστροφης διαγραφής Ο αλγόριθμος αντίστροφης διαγραφής (reverse-delete) είναι «αντίστροφος» του αλγορίθμου Kruskal. Θέτουμε i=m. Οι ακμές ταξινομούνται κατά μη αύξον βάρος.. Διαγράφεται η βαρύτερη ακμή αν δεν είναι γέφυρα. Θέτουμε i=i. Αν i>n, τότε πηγαίνουμε στο Βήμα.
Παράδειγμα 8 8 7 8 7 6 9 7 6 9 0
Διακριτά βάρη Είσοδος 7 6 8 9 Έξοδος 7 6 8 9 Πρόταση: Αν τα βάρη των ακμών είναι διακριτοί αριθμοί, τότε το MST είναι μοναδικό. Αλλιώς μπορεί να υπάρχουν πολλά ισοδύναμα MST.
Απόδειξη πρότασης Έστω ότι υπάρχουν MST
Απόδειξη πρότασης () e Θεωρούμε την ελαφρύτερη ακμή που δεν ανήκει στην τομή
Απόδειξη πρότασης () e Δημιουργείται ένας κόκκινος κύκλος
Απόδειξη πρότασης () e e Η ακμή e είναι οποιαδήποτε κόκκινη ακμή που δεν ανήκει στο μπλε MST
Απόδειξη πρότασης () e e Εφόσον η ακμή e δεν ανήκει στην τομή, συνεπάγεται ότι w(e)<w(e ) [το βάρος της e είναι το μικρότερο]
Απόδειξη πρότασης (6) e e Στο κόκκινο MST διαγράφουμε την e και εισάγουμε την e. ==> λαμβάνουμε νέο MST με μικρότερο βάρος, ΑΤΟΠΟ
Πολυπλοκότητες αλγορίθμων Οι πολυπλοκότητες εξαρτώνται από τις υλοποιήσεις αναπαράσταση γράφου (πίνακας γειτνίασης ή δυναμική λίστα) άλλες χρησιμοποιούμενες δομές (set, heaps, κλπ) Kruskal o isjoint set O(m logm) oruvka o O(m logn) Prim o o o djacency matrix O(n ) inary heap, adjacency list O(m logn) ibonacci heap, adjacency list O(m + n logn) Reversedeletion o o o O(m logm) για ταξινόμηση O(n+m) για bridge detection, Tarjan m επαναλήψεις o Άρα, Ο(m )
Νεότεροι αλγόριθμοι MST Αλγόριθμοι βασισμένοι στις συγκρίσεις O(m log n) arník, Prim, ijkstra, Kruskal, oruvka O(m log log n) heriton-tarjan (976), Yao (97) O(m (m,n)) redman-tarjan (987) O(m log (m,n)) abow-alil-spencer-tarjan (986) O(m (m, n)) hazelle (000) Άλλοι αλγόριθμοι O(m) randomized Karger-Klein-Tarjan (99) O(m) verification ixon-rauch-tarjan (99)
Εφαρμογή: ομαδοποίηση-clustering Δοθέντος συνόλου σημείων σε πολυδιάστατο χώρο, να χωρισθούν τα σημεία σε διακριτές ομάδες, έτσι ώστε τα σημεία μίας ομάδας να είναι κοντά μεταξύ τους, ενώ τα σημεία διαφορετικών ομάδων να απέχουν περισσότερο. Αντικείμενο της Αναγνώρισης Προτύπων, της Τεχνητής Νοημοσύνης, της Εξόρυξης Δεδομένων Εφαρμογές ata/text Mining, nformation Retrieval Web nalysis, ibliometrics Marketing, inancial mage nalysis, ioinformatics etc
Δυαδικά Δέντρα Λέγεται το δέντρο με ρίζα αν ο κάθε κόμβος του που δεν είναι φύλλο έχει είτε ένα αριστερό, είτε ένα δεξί, είτε δύο παιδιά (αριστερό και δεξί). Παρατήρηση: Σε αντίθεση με το γενικό ορισμό των γραφημάτων, στα δυαδικά δέντρα συμπεριλαμβάνεται και το κενό δυαδικό δέντρο.
Διάσχιση Δυαδικών Δένδρων Ι ΔΙΑΣΧΙΣΗ ΑΠΟ ΑΡΙΣΤΕΡΑ ΠΡΟΣ ΤΑ ΔΕΞΙΑ προδιατεταγμένη διάσχιση (preorder traversal) επίσκεψη σε έναν κόμβο του δένδρου, επίσκεψη σε όλους τους κόμβους του αριστερού υποδένδρου, επίσκεψη σε όλους τους κόμβους του δεξιού υποδένδρου ενδοδιατεταγμένη διάσχιση (inorder traversal) επίσκεψη πρώτα στους κόμβους του αριστερού υποδένδρου, μετά στον κόμβο και τέλος στους κόμβους του δεξιού υποδένδρου μεταδιατεταγμένη διάσχιση (postorder traversal) επίσκεψη στους κόμβους του αριστερού υποδένδρου, μετά στους κόμβους του δεξιού υποδένδρου και τέλος στον κόμβο μέσω του οποίου συνδέονται
Διάσχιση Δυαδικών Δένδρων ΙΙ Ορίζονται επίσης οι αντίστοιχες παραλλαγές για διάσχιση δένδρων από δεξιά προς τα αριστερά. Συνολικά υπάρχουν έξι τρόποι διάσχισης. ΛΗΜΜΑ: Για κάθε μία από τις έξι τεχνικές διάσχισης ο χρόνος T(n) που χρειάζεται για την εξερεύνηση ενός δυαδικού δένδρου αποτελούμενο από n κορυφές είναι Θ(n).
Προδιάταξη Επισκεπτόμαστε κάθε κόμβο, πριν επισκεφτούμε (αριθμήσουμε) σε προδιάταξη το αριστερό και το δεξί υποδέντρο του. Παράδειγμα: κινούμαστε όπως δείχνει το σχήμα.
Ενδοδιάταξη Επισκεπτόμαστε (αριθμούμε) κάθε κόμβο μετά την επίσκεψη (αρίθμηση) σε ενδοδιάταξη του αριστερού και πριν την επίσκεψη (αρίθμηση) την ενδοδοάταξη του δεξιού υποδέντρου του. Παράδειγμα:
Μεταδιάταξη Επισκεπτόμαστε (αριθμούμε) κάθε κόμβο αφού έχουμε επισκεφθεί (αριθμήση) σε μεταδιάταξη και το αριστερό και το δεξί υποδέντρο του. Παράδειγμα: