12/1/2006 Διακριτά Μαθηματικά. Ορισμός. Υπό γράφημα Τ γραφήματος Γ καλείται συνδετικό (ή επικαλύπτον)



Σχετικά έγγραφα
21/11/2005 Διακριτά Μαθηματικά. Γραφήματα ΒΑΣΙΚΗ ΟΡΟΛΟΓΙΑ : ΜΟΝΟΠΑΤΙΑ ΚΑΙ ΚΥΚΛΟΙ Δ Ι. Γεώργιος Βούρος Πανεπιστήμιο Αιγαίου

Οι γέφυρες του ποταμού... Pregel (Konigsberg)

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

Αλγόριθμοι εύρεσης ελάχιστων γεννητικών δέντρων (MST)

Δ Ι Α Κ Ρ Ι Τ Α Μ Α Θ Η Μ Α Τ Ι Κ Α. 1η σειρά ασκήσεων

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

ΑΣΚΗΣΗ 1 Για τις ερωτήσεις 1-4 θεωρήσατε τον ακόλουθο γράφο. Ποιές από τις παρακάτω προτάσεις αληθεύουν και ποιές όχι;

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

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

ιαφάνειες παρουσίασης #11

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

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

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

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

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

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

Λυσεις προβλημάτων τελικής φάσης Παγκύπριου Μαθητικού Διαγωνισμού Πληροφορικής 2007

Δένδρα επικάλ επικ υψης ελάχιστου στους

Γράφοι. Αλγόριθμοι και πολυπλοκότητα. Στάθης Ζάχος, Δημήτρης Φωτάκης

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

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

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

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

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

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

Δημιουργία Δυαδικών Δέντρων Αναζήτησης

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

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

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

Αποδεικτικές Διαδικασίες και Μαθηματική Επαγωγή.

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

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

6η Διάλεξη Διάσχιση Γράφων και Δέντρων

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

Γράφοι: κατευθυνόμενοι και μη

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

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

Παράλληλη Επεξεργασία Κεφάλαιο 2 Παραλληλισμός Δεδομένων

Διδάσκων: Παναγιώτης Ανδρέου

Πληροφοριακά Συστήματα Διοίκησης (ΜΒΑ) Ενότητα 1: Δικτυωτή Ανάλυση (Θεωρία Γράφων)

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

Ενότητα 5: Αλγόριθμοι γράφων και δικτύων

Ελάχιστα Γεννητορικά ένδρα

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

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

Σημειωματάριο Τετάρτης 29 Νοε. 2017

Δένδρα επικάλυψης ελάχιστου κόστους και το πρόβλημα του πλανόδιου πωλητή (Traveling Salesman Problem: TSP)

Πανεπιστήμιο Πειραιώς Σχολή Τεχνολογιών Πληροφορικής και Επικοινωνιών Τμήμα Ψηφιακών Συστημάτων ομές εδομένων

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

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

X i, i I Y j, j J. X i. Z j P = (J, B) G T = (I, J) 1 2 i i + 1 n. 1 i V

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

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

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

Ασκηση 1 [ ] Παράδοση : Τετάρτη , 13:00

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

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

Στόχος του παρόντος κεφαλαίου είναι η παρουσίαση µιας κατηγορίας γραφηµάτων µε ιδιαίτερες εφαρµογές στην επιστήµη των υπολογιστών: τα δέντρα.

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

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

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

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

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

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

ΑΝΤΙΣΤΟΙΧΗΣΕΙΣ ΟΡΩΝ ΠΟΥ ΧΡΗΣΙΜΟΠΟΙOΥΝΤΑΙ ΣΤΟΥΣ ΤΟΜΟΥΣ Α ΚΑΙ Β ΤΗΣ ΘΕ «ΔΙΑΚΡΙΤΑ ΜΑΘΗΜΑΤΙΚΑ» Ένα γράφημα αποτελείται από ένα σύνολο 94.

Σχεδιαση Αλγοριθμων -Τμημα Πληροφορικης ΑΠΘ - Κεφαλαιο 9ο

Αλγόριθµοι Οπισθοδρόµησης

Δοµές Δεδοµένων & Ανάλυση Αλγορίθµων 3ο Εξάµηνο. Γραφήµατα. (Graphs)

Προσεγγιστικοί Αλγόριθμοι

ιακριτά Μαθηµατικά και Μαθηµατική Λογική ΠΛΗ20 Ε ρ γ α σ ί α 4η Θεωρία Γραφηµάτων

ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ. Βασικές Ιδιότητες και Διάσχιση Κεφάλαιο 5 ( και ) Ε. Μαρκάκης Επίκουρος Καθηγητής

Δυναμικός προγραμματισμός για δέντρα

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

Διαίρει και Βασίλευε. πρόβλημα μεγέθους Ν. διάσπαση. πρόβλημα μεγέθους k. πρόβλημα μεγέθους Ν-k

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

ΑΙΚΑΤΕΡΙΝΗ-ΠΑΝΑΓΙΩΤΑ ΣΤΟΥΚΑ ΝΙΚΟΛΑΟΣ ΛΑΜΠΡΟΥ. μπλ 2014

n, C n, διανύσματα στο χώρο Εισαγωγή

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

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

Graph Algorithms. Παρουσίαση στα πλαίσια του μαθήματος «Παράλληλοι Αλγόριθμοι» Καούρη Γεωργία Μήτσου Βασιλική

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

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

ΣΥΝΟΛΑ (προσέξτε τα κοινά χαρακτηριστικά των παρακάτω προτάσεων) Οι άνθρωποι που σπουδάζουν ΤΠ&ΕΣ και βρίσκονται στην αίθουσα

Network Algorithms and Complexity Παραλληλοποίηση του αλγορίθμου του Prim. Αικατερίνη Κούκιου

Βασικές Προτάσεις. έντρα. υαδικά έντρα Αναζήτησης ( Α) Ισοζυγισµένα έντρα και Υψος. Κάθε δέντρο µε n κόµβους έχει n 1 ακµές.

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

ΣΥΝΔΥΑΣΤΙΚΗ ΒΕΛΤΙΣΤΟΠΟΙΗΣΗ

Φροντιστήριο 2: Ανάλυση Αλγόριθμου. Νικόλας Νικολάου ΕΠΛ432: Κατανεμημένοι Αλγόριθμοι 1 / 10

Εστω X σύνολο και A μια σ-άλγεβρα στο X. Ονομάζουμε το ζεύγος (X, A) μετρήσιμο χώρο.

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

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

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

Επίλυση Προβληµάτων µε Greedy Αλγόριθµους

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

Παράλληλη Επεξεργασία Κεφάλαιο 6 ο Σύγχρονος Παραλληλισμός

ΑΛΓΟΡΙΘΜΟΙ. Ενότητα 9: Άπληστοι Αλγόριθμοι. Ιωάννης Μανωλόπουλος, Καθηγητής Αναστάσιος Γούναρης, Επίκουρος Καθηγητής Τμήμα Πληροφορικής ΑΠΘ

Εισαγωγικά. 1.1 Η σ-αλγεβρα ως πληροφορία

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

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

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

Transcript:

ΣΥΝΔΕΤΙΚΑ ΔΕΝΤΡΑ Ορισμός. Υπό γράφημα Τ γραφήματος Γ καλείται συνδετικό (ή επικαλύπτον) δέντρο (spanning tree) του Γ εάν αυτό είναι δέντρο και περιέχει όλες τις κορυφές του Γ. Παράδειγμα. Στο παρακάτω σχήμα φαίνονται δύο συνδετικά δέντρα του γραφήματος Γ. v 1 Γ Τ 1 Τ 2 Σχήμα. Συνδετικά δέντρα Τ1 και Τ2 του γραφήματος Γ Θεώρημα Γράφημα Γ έχει συνδετικό δέντρο εάν και μόνο εάν αυτό είναι συνδεόμενο.

Εύρεση ενός συνδετικού δέντρου σε γράφημα Γ Αλγόριθμος: Κατά-πλάτος διάσχιση γραφήματος Είσοδος: Συνδεόμενο γράφημα Γ=(V,E) και διάταξη (,,...,v n ) στις κορυφές του. Έξοδος: Συνδετικό δέντρο Τ procedure κατά-πλάτος-διάσχιση(v,e) /* V = σύνολο κορυφών του Γ; E = σύνολο ακμών του Γ*/ /* V = σύνολο κορυφών του συνδετικού δέντρου; E = σύνολο ακμών του συνδετικού δέντρου*/ /* ρίζα του συνδετικού δέντρου*/ /* S : διατεταγμένη λίστα κορυφών του τελευταίου επιπέδου του συνδετικού δέντρου. */ S:= ( ) V :={ } E = while true do begin Για κάθε x στο S, σύμφωνα με τη διάταξη, Για κάθε y στο (V-V ), σύμφωνα με τη διάταξη, αν (x,y) είναι μέλος του E, τότε πρόσθεσε το (x,y) στο E και το y στο V Αν δεν προστέθηκαν νέες ακμές στο Ε, τότε return(t) S:= παιδιά των στοιχείων του S διατεταγμένα σύμφωνα με τη διάταξη των πατέρων τους. end end

Διάταξη κορυφών (,,,,, ) S V X V-V Y (X,Y) Συνδετικό Δέντρο ( ) { } (,,,, ) (, ) ( ) {, } (,,, ) (, ) ( ) {,, } (,, ) (, ) ( ) {,,, } (, ) ( ) {,,, } (, )

{,, } {,,, } (, ) (, ) (τα παιδιά της, διατεταγμένα σύμ-φωνα με την αρχική διάταξη) {,, } {,,, } ( ) (, ) {,, } {,,, } ( )

Αλγόριθμος 5.2: Κατά-βάθος διάσχιση γραφήματος Είσοδος: Συνδεόμενο γράφημα Γ=(V,E) και διάταξη (,,...,v n ) στις κορυφές του. Έξοδος: Συνδετικό δέντρο Τ procedure κατά-βάθος διάσχιση (V,E) /* V = σύνολο κορυφών του Γ; E = σύνολο ακμών του Γ*/ /* V = σύνολο κορυφών του συνδετικού δέντρου; E = σύνολο ακμών του συνδετικού δέντρου*/ /* ρίζα του συνδετικού δέντρου*/ w:= ; V :={ }; E = while true do begin while υπάρχει ακμή (w,v) του Γ που η προσθήκη της στο Τ δεν δημιουργεί κύκλο, begin επέλεξε ακμή (w,v k ) με το μικρότερο k (με σεβασμό στη διάταξη των κορυφών του Γ), τέτοια ώστε, η προσθήκη της στο Τ δεν δημιουργεί κύκλο στο Τ. Πρόσθεσε την (w,v k ) στο E και τη v k στο V end w:= v k end if w = then return(t) w := πατέρας της w στο T /* παλινδρόμιση */ end

Διάταξη κορυφών (,,,,, ) w V V-V (X,Y) Συνδετικό Δέντρο { } (,,,, ) (, ) {, } (,,, ) (, ) {,, } (,, ) (, ) {,,, } (, ) (, ) {,,,, } ( ) (, )

Ορισμός (εκτός ύλης τελικής εξέτασης) Έστω Γ γράφημα με βάρη. Ένα ελάχιστο συνδετικό δέντρο (minimum spanning tree) του Γ είναι ένα συνδετικό δέντρο του Γ με ελάχιστο βάρος (άθροισμα των βαρών των ακμών του). Παράδειγμα. Έστω ο γράφος Γ του παρακάτω σχήματος. Το δέντρο Τʹ είναι ένα συνδετικό δέντρο του γράφου Γ, με βάρος 20. Το Τʹ δεν είναι ένα ελάχιστο συνδετικό δέντρο για τον Γ, αφού το συνδετικό δέντρο Τ έχει βάρος 12. 4 3 1 3 6 2 2 5 6 Γ Τ Τ (α) (β) (γ)

Αλγόριθμος: Αλγόριθμος Prim για την εύρεση του ελάχιστου συνδετικού δέντρου σε γράφημα με βάρη. Είσοδος: Ένα συνδεόμενο γράφημα με βάρη, κορυφές 1,...,n, και αρχική κορυφή u. Αν (i,j) ακμή, το βάρος της ακμής (i,j) συμβολίζεται ως w(i,j); αν ή (i,j) δεν είναι ακμή, τότε το w(i,j) είναι ίσο με. Έξοδος: Το σύνολο των ακμών Ε του ελάχιστου συνδετικού δέντρου (mst). procedure prim(w,n,u) /* v(i) = 1 αν η κορυφή i υπάρχει ήδη στο ελάχιστο συνδετικό δέντρο*/ /* v(i)=0 αν η κορυφή i δεν έχει προστεθεί στο υπό-κατασκευή ελάχιστο συνδετικό δέντρο */ 1. for i:=1 to n do 2. v(i) := 0 3. v(u) :=1 4. E:= 5. For i:=1 to (n-1) 6. begin 7. min:= 8. for j:=1 to n do 9. if v(j)=1 then 10. for k=1 to n do 11. if v(k) = 0 and w(j,k)<min then 12. begin 13. add_vertex:=k 14. e:=(j,k) 15. min:=w(j,k) 16. end 17. v(add_vertex):=1 18. E:= E {e} 19. end 20. return(e) 21.end

Κορυφές του υπόκατασκευή δέντρου ακμών Βάρη των υποψήφιων { } w(, )=4 w(, )=2 w(, )=3 {, } w(, )=4 w(, )=3 w(, )=3 w(, )=1 w(, )=6 {,, } w(, )=4 w(, )=3 w(, )=3 w(, )=6 w(, )=4 w(, )=3 Συνδετικό δέντρο

Κορυφές του υπόκατασκευή Βάρη των υποψήφιων δέντρου ακμών {,,, } w(, )=4 w(, )=6 w(, )=4 w(, )=3 w(, )=2 {,,,, } w(, )=4 w(, )=4 Συνδετικό δέντρο