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

Save this PDF as:
 WORD  PNG  TXT  JPG

Μέγεθος: px
Εμφάνιση ξεκινά από τη σελίδα:

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

Transcript

1 ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΛΑΜΙΑΣ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ ΥΠΟΛΟΓΙΣΤΩΝ ΣΧΕΔΙΑΣΜΟΣ ΚΑΙ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ Ιστοσελίδα μαθήματος: 5ο ΕΡΓΑΣΤΗΡΙΟ 1 Διάσχιση κατευθυνόμενων γραφημάτων Διάσχιση ή διαπέραση ή διάβαση ή εξερεύνηση γραφήματος χαρακτηρίζεται η διαδικασία συστηματικής και εξαντλητικής επίσκεψης όλων των κορυφών ενός γραφήματος χρησιμοποιώντας τους δεσμούς ή τα τόξα του. Υπάρχουν δύο βασικοί τρόποι διάσχισης των γραφημάτων. αναζήτηση σε βάθος(depth first search ή DFS). αναζήτηση κατά πλάτος(breadth first search ή BFS). 1.1 Αναζήτηση σε βάθος σε κατευθυνόμενα γραφήματα Διαισθητικά η βασική ιδέα της αναζήτησης σε βάθος είναι ότι αρχίζουμε από μια κορυφή και προχωράμε από κορυφή σε κορυφή ώστε να απομακρυνόμαστε από την αρχική κορυφή. Ηαναζήτησησεβάθοςενόςκατευθυνόμενουγραφήματος G = (V,U)υλοποιείταιμετηβοήθειαμιας στοίβας S και ενός βοηθητικού πίνακα A. Οπίνακας Aέχειμέγεθοςίσοςμετοναριθμότωνκορυφώντουγραφήματοςκαιστηναρχήόλατα στοιχεία του πίνακα έχουν τιμή 1. Ο πίνακας A χρησιμοποιείται για να σημειώνεται αν μια κορυφή έχει ήδη εξερευνηθεί. Σ αυτή την υλοποίηση κρατάμε επιπλέον την πληροφορία με ποιά σειρά έχουμε επισκεφτεί την αντίστοιχη κορυφή, για το σκοπό αυτό χρησιμοποιούμε την βοηθητική μεταβλητή pre. Στην στοίβα S αποθηκεύονται οι κορυφές που(ενδεχομένως) δεν έχουμε ακόμη επισκεφτεί. Η στοίβα S χρησιμοποιείται έτσι ώστε όταν φτάσουμε σε αδιέξοδο να γυρίζουμε γρήγορα πίσω για να συνεχίσουμε στην επόμενη υποψήφια κορυφή για εξερεύνηση. Παρατήρηση. Υπάρχουν πολλές υλοποιήσεις της αναζήτησης σε βάθος, η διαφορά τους έγκειται στο ποιες ενέργειες πραγματοποιούνται ή ποιες πληροφορίες επεξεργάζονται κατά την επίσκεψη των κορυφών. Ταβήματατουαλγορίθμουαναζήτησηςσεβάθος,ξεκινώνταςαπότηνκορυφή v j,είναιταακόλουθα: 1.Αρχικά,όλεςοικορυφέςτου Gείναιανεξερεύνητες,επομένωςσεόλεςτιςθέσειςτουπίνακα A θέτουμε 1.Επίσηςθέτουμε pre = 0 2.Τοποθετούμετηνκορυφή v j στηνστοίβα S. 3. Οσοηστοίβα Sείναιμηκενήεκτελούμεταακόλουθαβήματα (αʹ)εξάγουμετοκορυφαίοστοιχείοτηςστοίβας,έστωτο v k. (βʹ)αν A[k] 1,δενεκτελούμεκαμιάενέργεια,αφούηκορυφή v k έχειήδηεξερευνηθεί. (γʹ) Αν A[k] = 1,δηλαδήηκορυφή v k είναιανεξερεύνητη,τηνεπισκεπτόμαστε,καιθέτουμε pre = pre+1και A[k] = pre. Επίσης, είτε από τον πίνακα γειτνίασης είτε από την λίστα γειτονικότητας βρίσκουμε όλες τιςκορυφέςστιςοποίεςκαταλήγουντόξαπουαρχίζουναπότην v k,καιτιςτοποθετούμε στη στοίβα. 1

2 S Παράδειγμα Ηαναζήτησησεβάθοςμεαφετηρίατηνκορυφήv 7 στοκατευθυνόμενογράφημαg = (V,U)μεεκτελείται ως εξής: 1. Αρχικάθέτουμεσεκάθεστοιχείοτουπίνακα Aτηντιμή 1καιηστοίβα Sείναικενή. 2. Τοποθετούμετηνκορυφή v 7 στηστοίβα. Α= [-1, -1, -1, -1, -1, -1, -1, -1] S v 7 Α= [-1, -1, -1, -1, -1, -1, -1, -1] 3. Επειδήηστοίβαείναιμηκενή,εξάγουμετοκορυφαίοστοιχείοτηςστοίβας,τηνκορυφή v 7. Επειδή A[7] = 1επισκεπτόμαστετηνκορυφή v 7,θέτουμε pre = pre+1 = 1,θέτουμε A[7] = pre. Απότην v 7 αρχίζουντόξαπουκαταλήγουνστις v 2 και v 6,επομένωςτοποθετούμεστηστοίβατις v 2 και v 6. v 6 Α= [-1, -1, -1, -1, -1, -1, -1, 1] 4. Επειδήηστοίβαείναιμηκενή,εξάγουμετοκορυφαίοστοιχείοτηςστοίβας,τηνκορυφή v 6. Επειδή A[6] = 1επισκεπτόμαστετηνκορυφή v 6,θέτουμε pre = pre+1 = 2,θέτουμε A[6] = 2. Απότην v 6 αρχίζουντόξαπουκαταλήγουνστις v 1 και v 2,επομένωςτοποθετούμεστηστοίβατις v 1 και v 2. v 2 v 1 Α= [-1, -1, -1, -1, -1, -1, 2, 1] 2

3 5. Επειδήηστοίβαείναιμηκενή,εξάγουμετοκορυφαίοστοιχείοτηςστοίβας,τηνκορυφή v 2. Επειδή A[2] = 1επισκεπτόμαστετηνκορυφή v 2,θέτουμε pre = pre+1 = 3,θέτουμε A[2] = pre. Απότην v 2 αρχίζουντόξαπουκαταλήγουνστην v 3,επομένωςτοποθετούμεστηστοίβατην v 3. v 3 v 1 Α= [-1, -1, 3, -1, -1, -1, 2, 1] 6. Επειδήηστοίβαείναιμηκενή,εξάγουμετοκορυφαίοστοιχείοτηςστοίβας,τηνκορυφή v 3. Επειδή A[3] = 1επισκεπτόμαστετηνκορυφή v 3,θέτουμε pre = pre+1 = 4,θέτουμε A[3] = pre. Απότην v 3 αρχίζουντόξαπουκαταλήγουνστην v 7,επομένωςτοποθετούμεστηστοίβατην v 7. v 7 v 1 Α= [-1, -1, 3, 4, -1, -1, 2, 1] 7. Επειδήηστοίβαείναιμηκενή,εξάγουμετοκορυφαίοστοιχείοτηςστοίβας,τηνκορυφή v 7. Επειδή A[7] = 1 1δενεκτελούμεκαμιάενεργεια v 1 Α= [-1, -1, 3, 4, -1, -1, 2, 1] 8. Επειδήηστοίβαείναιμηκενή,εξάγουμετοκορυφαίοστοιχείοτηςστοίβας,τηνκορυφή v 1. Επειδή A[1] = 1επισκεπτόμαστετηνκορυφή v 1,θέτουμε pre = pre+1 = 5,θέτουμε A[1] = pre. Απότην v 1 αρχίζουντόξαπουκαταλήγουνστις v 2 και v 5,επομένωςτοποθετούμεστηστοίβατις v 2 και v 5. v 5 v 2 Α= [-1, 5, 3, 4, -1, -1, 2, 1] 3

4 9. Επειδήηστοίβαείναιμηκενή,εξάγουμετοκορυφαίοστοιχείοτηςστοίβας,τηνκορυφή v 5. Επειδή A[5] = 1επισκεπτόμαστετηνκορυφή v 5,θέτουμε pre = pre+1 = 6,θέτουμε A[5] = pre. Απότην v 5 αρχίζουντόξαπουκαταλήγουνστην v 4,επομένωςτοποθετούμεστηστοίβατην v 4. v 4 v 2 Α= [-1, 5, 3, 4, -1, 6, 2, 1] 10.Επειδήηστοίβαείναιμηκενή,εξάγουμετοκορυφαίοστοιχείοτηςστοίβας,τηνκορυφή v 4. Επειδή A[4] = 1επισκεπτόμαστετηνκορυφή v 4,θέτουμε pre = pre+1 = 7,θέτουμε A[4] = pre. Απότην v 4 αρχίζουντόξαπουκαταλήγουνστην v 0,επομένωςτοποθετούμεστηστοίβατην v 0. v 0 v 2 Α= [-1, 5, 3, 4, 7, 6, 2, 1] 11.Επειδήηστοίβαείναιμηκενή,εξάγουμετοκορυφαίοστοιχείοτηςστοίβας,τηνκορυφή v 0. Επειδή A[0] = 1επισκεπτόμαστετηνκορυφή v 0,θέτουμε pre = pre+1 = 8,θέτουμε A[0] = pre. Απότην v 0 δεναρχίζουντόξα,επομένωςδενκάνουμεάλληενέργεια v 2 Α= [8, 5, 3, 4, 7, 6, 2, 1] 12.Επειδήηστοίβαείναιμηκενή,εξάγουμετοκορυφαίοστοιχείοτηςστοίβας,τηνκορυφή v 2. Επειδή A[2] = 3 1δενεκτελούμεκαμιάενέργεια. Α= [8, 5, 3, 4, 7, 6, 2, 1] 4

5 S S 13.Επειδήηστοίβαείναιμηκενή,εξάγουμετοκορυφαίοστοιχείοτηςστοίβας,τηνκορυφή v 2. Επειδή A[2] = 3 1δενεκτελούμεκαμιάενέργεια. Α= [8, 5, 3, 4, 7, 6, 2, 1] 14. Επειδή η στοίβα είναι κενή, δεν υπάρχουν άλλες κορυφές προς επίσκεψη και επομένως η αναζήτηση σε βάθος ολοκληρώθηκε. Παρατηρήσεις. Α= [8, 5, 3, 4, 7, 6, 2, 1] 1. Στο προηγούμενο παράδειγμα η σειρά με την οποία επισκεφτήκαμε τις κορυφές του γραφήματος ξεκινώνταςαπότηνκορυφή v 7 είναιαποθηκευμένηστιςθέσειςτουπίνακα A = [8,5,3,4,7,6,2,1]. v 7 v 6 v 2 v 3 v 1 v 5 v 4 v 0 2. Στο προηγούμενο παράδειγμα σε ορισμένες περιπτώσεις εισάγαμε στη στοίβα το ίδιο στοιχείο δύο φορές, ή εισάγαμε ένα στοιχείο το οποίο είχαμε ήδη επισκεφτεί. Υπάρχουν υλοποιήσεις της αναζήτησης σε βάθος που αποφεύγουν αυτές τις επαναλήψεις και φυσικά με αυτή την τροποποίηση η σειρά επίσκεψης των κορυφών αλλάζει, η κεντρική ιδέα όμως της αναζήτησης σε βάθος παραμένει ίδια και στις δύο περιπτώσεις. Στην τροποποίηση αυτή σε κάθε βήμα του αλγορίθμου απαιτείται αναζήτηση στη στοίβα και έλεγχος της αντίστοιχης τιμής του πίνακα Δένδρο DFS Εστω G = (V,U)ένακατευθυνόμενογράφημα. Σεκάθεεκτέλεσηαναζήτησηςσεβάθοςμεαφετηρία μιακορυφήτουγραφήματοςgαντιστοιχείένακατευθυνόμενοδιατεταγμένοδένδρο T G,τοοποίοονομάζεται δένδρο DFS. Η ρίζα του δένδρου είναι η κορυφή αφετηρίας, οι υπόλοιπες κορυφές του είναι κορυφές που επισκεπτόμαστε κατά την αναζήτηση σε βάθος. Τα τόξα του δένδρου είναι ένα υποσύνολο των τόξων του γραφήματος.συγκεκριμένα,απότατόξατουγραφήματοςμεαρχήτην v k καιτέλοςτην v l στοδένδρο T G κρατάμε εκείνα για τα οποία ισχύουν τα ακόλουθα: (α)αμέσωςμετάτην v k επισκεπτόμαστετην v l (β)αμέσωςμετάτην v m επισκεπτόμαστετην v l,ηv m δενσυνδέεταιμετην v l καιηv k είναιηπιοκοντινή προηγούμενητης v m πουσυνδέεταιμετην v l Το δένδρο DFS παράγεται ως εξής: 1. Αρχικά θέτουμε ως ρίζα του δένδρου την κορυφή αφετηρίας. 2. Ανμετάτηνκορυφή v i επισκεπτόμαστετηνκορυφή v j καιαπότην v i αρχίζειτόξομετέλοςτην v j τότεθέτουμετην v j τελευταίοπαιδίτης v i,αλλιώςβρίσκουμετονπιοκοντινόπρόγονοτης v i για τονοποιοαρχίζειτόξομετέλοςτης v j καιθέτουμετην v j τελευταίοπαιδίαυτούτουπρογόνου. Συνεχίζουμε με τον ίδιο τρόπο μέχρι να εξαντλήσουμε όλες τις κορυφές που επισκεπτόμαστε. 5

6 Για παράδειγμα στο γράφημα του προηγούμενου παραδείγματος μεαφετηρίατηνκορυφή v 7 ησειράεπίσκεψηςτωνκορυφώνήτανηεξής: v 7 v 6 v 2 v 3 v 1 v 5 v 4 v 0 επομένως αντιστοιχεί το επόμενο κατευθυνόμενο διατεταγμένο δένδρο. v 7 v 6 v 2 v 1 v 3 v 5 v 4 v 0 Μεβάσητοδένδρο DFSπουπροκύπτειαπότηναναζήτησησεβάθοςμεαφετηρίαμιακορυφή,μπορούμε να κατηγοριοποιήσουμε όλα τα τόξα ενός γραφήματος G σε 4 κατηγορίες: ακμές δένδρου, αν αποτελούν τμήμα του δένδρου DFS. εμπροσθοακμές, αν συνδέουν έναν πρόγονο με έναν απόγονο του δένδρου DFS. DFS οπισθοακμές, αν συνδέουν έναν απόγονο με έναν πρόγονο του δένδρου DFS. διασταυρώσεις, αν συνδέουν κορυφές που δεν είναι η μια πρόγονος ή απόγονος της άλλης. Για παράδειγμα τα τόξα του γραφήματος G του προηγούμενου παραδείγματος κατηγοριοποιούνται ως εξής: εμπροσθοακμή v 7 v 6 οπισθοακμή v 2 v 1 v 3 v 5 διασταύρωση v 4 v 0 Παρατήρηση. Ο εντοπισμός κύκλου σε ένα κατευθυνόμενο γράφημα ανάγεται στην εύρεση μια οπισθοακμής στο αντίστοιχο δένδρο DFS. Στοπροηγούμενοπαράδειγματοτόξο(v 3,v 7 )είναιοπισθοακμή,ηοποίαανήκειστονκύκλοv 7,v 6,v 2,v 3,v 7. 6

7 Άσκηση Για το επόμενο κατευθυνόμενο γράφημα G v 8 v 9 v 10 v Ναγίνειαναζήτησησεβάθοςμεαφετηρίατηνκορυφή v 1 2. Να κατεσκευασθεί το αντίστοιχο δένδρο DFS 3. Ναχαρακτηρισθούνόλατατόξατουγραφήματοςμεβάσητοδένδρο DFS 4. Να εξετασθεί αν το γράφημα περιέχει κύκλους. 1.2 Αναζήτηση κατά πλάτος Η βασική ιδέα της αναζήτησης κατά πλάτος είναι ότι αρχίζουμε από μια κορυφή επισκεπτόμαστε όλες τις γειτονικές κορυφές της αρχικής, επισκεπτόμαστε τους γείτονες των γειτόνων, κ.ο.κ. Η αναζήτηση κατά πλάτος ενός κατευθυνόμενου γραφήματος G = (V, U) υλοποιείται με τη βοήθεια μιας ουράς L και ενός βοηθητικού πίνακα A. Οπίνακας Aέχειμέγεθοςίσοςμετοναριθμότωνκορυφώντουγραφήματοςκαιστηναρχήόλατα στοιχεία του πίνακα έχουν τιμή 1. Ο πίνακας A χρησιμοποιείται για να σημειώνεται αν μια κορυφή έχει ήδη εξερευνηθεί. Σ αυτή την υλοποίηση κρατάμε επιπλέον την πληροφορία με ποιά σειρά έχουμε επισκεφτεί την αντίστοιχη κορυφή, για το σκοπό αυτό χρησιμοποιούμε την βοηθητική μεταβλητή pre. Στην ουρά L αποθηκεύονται οι κορυφές των οποίων δεν έχουμε εξετάσει ακόμα τους γείτονες. Παρατήρηση. Οπως και στην περίπτωση της αναζήτησης σε βάθος, υπάρχουν πολλές υλοποιήσεις της αναζήτησης κατά πλάτος, η διαφορά τους έγκειται στο ποιες ενέργειες πραγματοποιούνται ή ποιες πληροφορίες επεξεργάζονται κατά την επίσκεψη των κορυφών. Ταβήματατουαλγορίθμουαναζήτησηςκατάπλάτος,ξεκινώνταςαπότηνκορυφή v j,είναιταακόλουθα: 1.Αρχικά,όλεςοικορυφέςτου Gείναιανεξερεύνητες,επομένωςσεόλεςτιςθέσειςτουπίνακα A θέτουμε 1.Επίσηςθέτουμε pre = 1 2.Επισκεπτόμαστετηνκορυφή v j,θέτουμε A[j] = preκαιεισάγουμετην v j στηνουρά L. 3. Οσοηουρά Lείναιμηκενήεκτελούμεταακόλουθαβήματα: (αʹ) Επίσης, είτε από τον πίνακα γειτνίασης είτε από την λίστα γειτνίασης βρίσκουμε όλες τις κορυφές στις οποίες καταλήγουν τόξα που αρχίζουν από πρώτο στοιχείο της ουράς L. (βʹ)γιακάθεμιααπότιςγειτονικέςκορυφές,έστωτη v k,ελέγχουμεανείναιεξερευνημένη. Αν A[k] 1, δηλαδή είναι εξερευνημένη, δεν εκτελούμε καμια ενέργεια. Αν A[k] = 1, δηλαδή δεν είναι εξερευνημένη, τότε επισκεπτόμαστε την κορυφή, θέτουμε pre = pre+1,θέτουμε A[k] = pre,καιεισάγουμετην v k στοτέλοςτηςουράς L. (γʹ) Αφαιρούμε το πρώτο στοιχείο της ουράς. 7

8 L Παράδειγμα Ηαναζήτησηκατάπλάτοςμεαφετηρίατηνκορυφή v 7 στοκατευθυνόμενογράφημα G = (V,U)με εκτελείται ως εξής: 1. Αρχικάθέτουμεσεκάθεστοιχείοτουπίνακα Aτηντιμή 1καιηουρά Lείναικενή.Επίσης pre = 1. Α= [-1, -1, -1, -1, -1, -1, -1, -1] 2. Επίσκεπτόμαστετηνκορυφή v 7,θέτουμε A[7] = 1,εισάγουμετην v 7 στηνουρά. L v 7 Α= [-1, -1, -1, -1, -1, -1, -1, 1] 3. Επειδή η ουρά είναι μη κενή, βρίσκουμε τους γείτονες του πρώτου στοιχείου της ουράς, δηλαδή της κορυφής v 7.Οιγείτονέςτηςείναιοικορυφές v 2 και v 6. Επειδή A[2] = 1,επισκεπτόμαστετηνκορυφή v 2,θέτουμε pre = pre + 1 = = 2,θέτουμε A[2] = 2καιτοποθετούμετην v 2 στοτέλοςτηςουράς. Επειδή A[6] = 1,επισκεπτόμαστετηνκορυφή v 6,θέτουμε pre = pre + 1 = = 3,θέτουμε A[6] = 3καιτοποθετούμετην v 6 στοτέλοςτηςουράς. Αφαιρούμετηνκορυφή v 7 απότηνουρά. L v 2 v 6 Α= [-1, -1, 2, -1, -1, -1, 3, 1] 8

9 4. Επειδή η ουρά είναι μη κενή, βρίσκουμε τους γείτονες του πρώτου στοιχείου της ουράς, δηλαδή της κορυφής v 2.Ογείτονάςτηςείναιηκορυφή v 3. Επειδή A[3] = 1,επισκεπτόμαστετηνκορυφή v 3,θέτουμε pre = pre + 1 = = 4,θέτουμε A[3] = 4καιτοποθετούμετην v 3 στοτέλοςτηςουράς. Αφαιρούμετηνκορυφή v 2 απότηνουρά. L v 6 v 3 Α= [-1, -1, 2, 4, -1, -1, 3, 1] 5. Επειδή η ουρά είναι μη κενή, βρίσκουμε τους γείτονες του πρώτου στοιχείου της ουράς, δηλαδή της κορυφής v 6.Οιγείτονέςτηςείναιοικορυφές v 1 και v 2. Επειδή A[1] = 1,επισκεπτόμαστετηνκορυφή v 1,θέτουμε pre = pre + 1 = = 5,θέτουμε A[1] = 5καιτοποθετούμετην v 1 στοτέλοςτηςουράς. Επειδή A[2] = 2 1,δενεκτελούμεκαμίαενέργεια. Αφαιρούμετηνκορυφή v 6 απότηνουρά. L v 3 v 1 Α= [-1, 5, 2, 4, -1, -1, 3, 1] 6. Επειδή η ουρά είναι μη κενή, βρίσκουμε τους γείτονες του πρώτου στοιχείου της ουράς, δηλαδή της κορυφής v 3.Ογείτονάςτηςείναιηκορυφή v 7. Επειδή A[7] = 1 1,δενεκτελούμεκαμίαενέργεια. Αφαιρούμετηνκορυφή v 3 απότηνουρά. L v 1 Α= [-1, 5, 2, 4, -1, -1, 3, 1] 7. Επειδή η ουρά είναι μη κενή, βρίσκουμε τους γείτονες του πρώτου στοιχείου της ουράς, δηλαδή της κορυφής v 1.Ογείτονάςτηςείναιηκορυφή v 5. Επειδή A[5] = 1,επισκεπτόμαστετηνκορυφή v 5,θέτουμε pre = pre + 1 = = 6,θέτουμε A[5] = 6καιτοποθετούμετην v 5 στοτέλοςτηςουράς. Αφαιρούμετηνκορυφή v 1 απότηνουρά. L v 5 Α= [-1, 5, 2, 4, -1, 6, 3, 1] 9

10 L L 8. Επειδή η ουρά είναι μη κενή, βρίσκουμε τους γείτονες του πρώτου στοιχείου της ουράς, δηλαδή της κορυφής v 5.Ογείτονάςτηςείναιηκορυφή v 4. Επειδή A[4] = 1,επισκεπτόμαστετηνκορυφή v 4,θέτουμε pre = pre + 1 = = 7,θέτουμε A[4] = 7καιτοποθετούμετην v 4 στοτέλοςτηςουράς. Αφαιρούμετηνκορυφή v 5 απότηνουρά. L v 4 Α= [-1, 5, 2, 4, 7, 6, 3, 1] 9. Επειδή η ουρά είναι μη κενή, βρίσκουμε τους γείτονες του πρώτου στοιχείου της ουράς, δηλαδή της κορυφής v 4.Ογείτονάςτηςείναιηκορυφή v 0. Επειδή A[0] = 1,επισκεπτόμαστετηνκορυφή v 0,θέτουμε pre = pre + 1 = = 8,θέτουμε A[0] = 8καιτοποθετούμετην v 0 στοτέλοςτηςουράς. Αφαιρούμετηνκορυφή v 4 απότηνουρά. L v 0 Α= [-1, 5, 2, 4, 7, 6, 3, 1] 10. Επειδή η ουρά είναι μη κενή, βρίσκουμε τους γείτονες του πρώτου στοιχείου της ουράς, δηλαδή της κορυφής v 0.Ηκορυφή v 0 δενέχειγείτονες. Αφαιρούμετηνκορυφή v 0 απότηνουρά. Α= [8, 5, 2, 4, 7, 6, 3, 1] 11. Επειδή η ουρά είναι κενή, δεν υπάρχουν άλλοι ανεξερεύνητη γείτονες προς επίσκεψη και επομένως η αναζήτηση κατά πλάτος ολοκληρώθηκε. Α= [8, 5, 2, 4, 7, 6, 3, 1] Παρατήρηση. Στο προηγούμενο παράδειγμα η σειρά με την οποία επισκεφτήκαμε τις κορυφές του γραφήματοςξεκινώνταςαπότηνκορυφή v 7 είναιαποθηκευμένηστιςθέσειςτουπίνακα A = [8,5,2,4,7,6,3,1] v 7 v 2 v 6 v 3 v 1 v 5 v 4 v 0 10

11 1.3 Δένδρο BFS Εστω G = (V,U)ένακατευθυνόμενογράφημα.Σεκάθεεκτέλεσηαναζήτησηςκατάβάθοςμεαφετηρία μιακορυφήτουγραφήματοςgαντιστοιχείένακατευθυνόμενοδιατεταγμένοδένδρο T G,τοοποίοονομάζεται δένδρο BFS. Η ρίζα του δένδρου είναι η κορυφή αφετηρίας, οι υπόλοιπες κορυφές του είναι κορυφές που επισκεπτόμαστε κατά την αναζήτηση κατά πλάτος. Τα τόξα του δένδρου είναι ένα υποσύνολο των τόξων του γραφήματος. Συγκεκριμένα, το δένδρο BFS παράγεται ως εξής: 1. Αρχικά θέτουμε ως ρίζα του δένδρου την κορυφή αφετηρίας. 2. Στησυνέχειασεκάθεκορυφήv i θέτουμεωςπαιδιά,μετησειράπουτιςεπισκεπτόμαστε,τιςγειτονικές κορυφέςτης v i οιοποίεςείναιανεξερεύνητες. Για παράδειγμα στο γράφημα του προηγούμενου παραδείγματος μεαφετηρίατηνκορυφή v 7 ησειράεπίσκεψηςτωνκορυφώνήτανηεξής: v 7 v 2 v 6 v 3 v 1 v 5 v 4 v 0 επομένως αντιστοιχεί το επόμενο κατευθυνόμενο διατεταγμένο δένδρο. v 7 v 2 v 6 v 3 v 1 v 5 v 4 v 0 Μεβάσητοδένδρο DFSπουπροκύπτειαπότηναναζήτησησεβάθοςμεαφετηρίαμιακορυφή,μπορούμε να κατηγοριοποιήσουμε όλα τα τόξα ενός γραφήματος G σε 3 κατηγορίες: ακμές δένδρου, αν αποτελούν τμήμα του δένδρου DFS. οπισθοακμές, αν συνδέουν έναν απόγονο με έναν πρόγονο του δένδρου DFS. διασταυρώσεις, αν συνδέουν κορυφές που δεν είναι η μια πρόγονος ή απόγονος της άλλης. Παρατήρηση Σε αντίθεση με την αναζήτηση σε βάθος και το δένδρο DFS, στην αναζήτηση κατά πλάτος και το δένδρο BFS δεν υπάρχουν εμπροσθοακμές διότι στην αναζήτηση κατά βάθος επισκεπτόμαστε όλους τους κόμβους που βρίσκονται απόσταση i από την κορυφή αφετηρίας και μετά επισκεπτόμαστε τους κόμβου που βρίσκονται σε απόσταση μεγαλύτερη του i. 11

12 Για παράδειγμα τα τόξα του γραφήματος G του προηγούμενου παραδείγματος κατηγοριοποιούνται ως εξής: οπισθοακμή v 7 v 2 v 6 v 3 v 1 v 5 διασταύρωση v 4 v 0 Παρατήρηση. Ο εντοπισμός κύκλου σε ένα κατευθυνόμενο γράφημα ανάγεται στην εύρεση μια οπισθοακμής στο αντίστοιχο δένδρο BFS. Στοπροηγούμενοπαράδειγματοτόξο(v 3,v 7 )είναιοπισθοακμή,ηοποίαανήκειστονκύκλοv 7,v 6,v 2,v 3,v 7. Άσκηση Για το επόμενο κατευθυνόμενο γράφημα G v 8 v 9 v 10 v Ναγίνειαναζήτησηκατάπλάτοςμεαφετηρίατηνκορυφή v 1 2. Να κατεσκευασθεί το αντίστοιχο δένδρο BFS 3. Ναχαρακτηρισθούνόλατατόξατουγραφήματοςμεβάσητοδένδρο BFS 4. Να εξετασθεί αν το γράφημα περιέχει κύκλους. 12

1 Το πρόβλημα της συντομότερης διαδρομής

1 Το πρόβλημα της συντομότερης διαδρομής ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΛΑΜΙΑΣ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ ΥΠΟΛΟΓΙΣΤΩΝ ΣΧΕΔΙΑΣΜΟΣ ΚΑΙ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ 00 Ιστοσελίδα μαθήματος: http://eclass.teilam.gr/di88 6ο ΕΡΓΑΣΤΗΡΙΟ

Διαβάστε περισσότερα

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

6η Διάλεξη Διάσχιση Γράφων και Δέντρων ΘΕΩΡΙΑ ΓΡΑΦΩΝ 6 η Διάλεξη Διάσχιση Γράφων και Δέντρων Αλγόριθμος αναζήτησης σε Βαθος Αλγόριθμος αναζήτησης κατά Πλάτος Αλγόριθμοι για Δένδρα Εύρεση ελαχίστων Γεννητορικών (Επικαλύπτοντα) Δένδρων Διάσχιση

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

ΔΙΑΣΧΙΣΗ ΓΡΑΦΗΜΑΤΩΝ 1 ΔΙΑΣΧΙΣΗ ΓΡΑΦΗΜΑΤΩΝ 1 Θέματα μελέτης Πρόβλημα αναζήτησης σε γραφήματα Αναζήτηση κατά βάθος (Depth-first search DFS) Αναζήτηση κατά πλάτος (Breadth-first search BFS) 2 Γράφημα (graph) Αναπαράσταση συνόλου

Διαβάστε περισσότερα

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

Αλγόριθμοι και Δομές Δεδομένων (IΙ) (γράφοι και δένδρα) Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 2016-17 Αλγόριθμοι και Δομές Δεδομένων (IΙ) (γράφοι και δένδρα) http://mixstef.github.io/courses/csintro/ Μ.Στεφανιδάκης Αφηρημένες

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

ΤΕΙ ΛΑΜΙΑΣ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑ ΥΠΟΛΟΓΙΣΤΩΝ ÌïëëÜ Ì. Á μýô Á.Ì. : 5 moll@moll.r ΤΕΙ ΛΑΜΙΑΣ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑ ΥΠΟΛΟΓΙΣΤΩΝ ΜΑΘΗΜΑ : ΕΙΣΑΓΩΓΗ ΣΤΟ ΔΙΑΔΙΚΤΥΟ (ΕΡΓΑΣΤΗΡΙΟ) Ε ΕΞΑΜΗΝΟ ΕΙΣΗΓΗΤΕΣ: Χαϊδόγιαννος Χαράλαμπος ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

(elementary graph algorithms)

(elementary graph algorithms) (elementary graph algorithms) Παύλος Εφραιμίδης περιεχόμενα αναπαραστάσεις οριζόντια διερεύνηση καθοδική διερεύνηση αναπαράσταση δύο καθιερωμένοι τρόποι: πίνακας γειτνίασης συλλογή από καταλόγους γειτνίασης

Διαβάστε περισσότερα

Διερεύνηση γραφήματος

Διερεύνηση γραφήματος Διερεύνηση γραφήματος Διερεύνηση γραφήματος Ένας αλγόριθμος διερεύνησης γραφήματος επισκέπτεται τους κόμβους του γραφήματος με μια καθορισμένη στρατηγική, π.χ. κατά εύρος ή κατά βάθος. Καθοδική διερεύνηση

Διαβάστε περισσότερα

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

Αλγόριθµοι Γραφηµάτων Αλγόριθµοι Γραφηµάτων Παύλος Σπυράκης Πανεπιστήµιο Πατρών Τοµέας Θεµελιώσεων και Εφαρµογών της Επιστήµης των Υπολογιστών Ερευνητικό Ακαδηµαϊκό Ινστιτούτο Τεχνολογίας Υπολογιστών Γραφήµατα Μοντελοποίηση

Διαβάστε περισσότερα

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

Γέφυρες σε Δίκτυα. Μας δίνεται ένα δίκτυο (κατευθυνόμενο γράφημα) αφετηριακός κόμβος. Γέφυρα του (με αφετηρία τον ) : Μας δίνεται ένα δίκτυο (κατευθυνόμενο γράφημα) αφετηριακός κόμβος και Γέφυρα του (με αφετηρία τον ) : Ακμή που περιέχεται σε κάθε μονοπάτι από το στο s a b c d e f g h i j k l Μας δίνεται ένα δίκτυο (κατευθυνόμενο

Διαβάστε περισσότερα

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

Εισαγωγή στους Αλγόριθμους Εισαγωγή στους Αλγόριθμους Εύη Παπαϊωάννου Σχολή Οργάνωσης και Διοίκησης Επιχειρήσεων Τμήμα Διαχείρισης Πολιτισμικού Περιβάλλοντος και Νέων Τεχνολογιών Σκοποί ενότητας Παρουσίαση και μελέτη αλγορίθμων

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

Σχεδίαση Αλγορίθμων - Τμήμα Πληροφορικής ΑΠΘ -4ο εξάμηνο 1

Σχεδίαση Αλγορίθμων - Τμήμα Πληροφορικής ΑΠΘ -4ο εξάμηνο 1 Σχεδίαση Αλγορίθμων Μείωσε και Βασίλευε http://delab.csd.auth.gr/~gounaris/courses/ad auth gounaris/courses/ad Σχεδίαση Αλγορίθμων - Τμήμα Πληροφορικής ΑΠΘ -4ο εξάμηνο 1 Μείωσε και Βασίλευε 1. Μειώνουμε

Διαβάστε περισσότερα

Οι δυναμικές δομές δεδομένων στην ΑΕΠΠ

Οι δυναμικές δομές δεδομένων στην ΑΕΠΠ Καθηγητής Πληροφορικής Απαγορεύεται η αναπαραγωγή των σημειώσεων χωρίς αναφορά στην πηγή Οι σημειώσεις, αν και βασίζονται στο διδακτικό πακέτο, αποτελούν προσωπική θεώρηση της σχετικής ύλης και όχι επίσημο

Διαβάστε περισσότερα

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

Στοιχεία Θεωρίας Γράφων (Graph Theory) Στοιχεία Θεωρίας Γράφων (Graph Theory) Ε Εξάμηνο, Τμήμα Πληροφορικής & Τεχνολογίας Υπολογιστών ΤΕΙ Λαμίας plam@inf.teilam.gr, Οι διαφάνειες βασίζονται στα βιβλία:. Αλγόριθμοι, Σχεδιασμός & Ανάλυση, η έκδοση,

Διαβάστε περισσότερα

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

ΠΕΡΙΕΧΟΜΕΝΑ ΚΕΦΑΛΑΙΟ 2 ΠΡΟΒΛΗΜΑΤΑ ΔΙΚΤΥΩΝ ΚΑΙ ΜΕΤΑΣΧΗΜΑΤΙΣΜΟΙ ΠΕΡΙΕΧΟΜΕΝΑ ΚΕΦΑΛΑΙΟ 1 ΕΙΣΑΓΩΓΗ 1.1 ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΓΡΑΦΗΜΑΤΩΝ... 2 1.1.1 Ορισμός και ιδιότητες γραφημάτων... 2 1.1.2 Δέντρα... 7 1.2 ΑΠΟΘΗΚΕΥΣΗ ΓΡΑΦΩΝ ΚΑΙ ΔΙΚΤΥΩΝ... 11 1.2.1 Μήτρα πρόσπτωσης κόμβων τόξων...

Διαβάστε περισσότερα

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

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ Ενότητα 10γ: Αλγόριθμοι Γραφημάτων- Διερεύνηση Πρώτα σε Βάθος (DFS)- Τοπολογική Ταξινόμηση Μαρία Σατρατζέμη Τμήμα Εφαρμοσμένης Πληροφορικής Άδειες Χρήσης Το παρόν εκπαιδευτικό

Διαβάστε περισσότερα

Αφηρημένες Δομές Δεδομένων. Στοίβα (Stack) Υλοποίηση στοίβας

Αφηρημένες Δομές Δεδομένων. Στοίβα (Stack) Υλοποίηση στοίβας Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής ισαγωγή στην πιστήμη των Υπολογιστών 2015-16 λγόριθμοι και ομές εδομένων (IΙ) (γράφοι και δένδρα) http://di.ionio.gr/~mistral/tp/csintro/ Μ.Στεφανιδάκης φηρημένες

Διαβάστε περισσότερα

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

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ Ενότητα 10β: Αλγόριθμοι Γραφημάτων-Γραφήματα- Αναπαράσταση Γραφημάτων- Διερεύνηση Πρώτα σε Πλάτος (BFS) Μαρία Σατρατζέμη Τμήμα Εφαρμοσμένης Πληροφορικής Άδειες Χρήσης Το

Διαβάστε περισσότερα

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

Δομές Δεδομένων. Δημήτρης Μιχαήλ. Γραφήματα. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Δομές Δεδομένων Γραφήματα Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Γραφήματα Κατευθυνόμενο Γράφημα Ένα κατευθυνόμενο γράφημα G είναι ένα ζευγάρι (V, E) όπου V είναι ένα

Διαβάστε περισσότερα

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

Μέγιστη ροή. Κατευθυνόμενο γράφημα. Συνάρτηση χωρητικότητας. αφετηρίακός κόμβος. τερματικός κόμβος. Ροή δικτύου. με τις ακόλουθες ιδιότητες Κατευθυνόμενο γράφημα Συνάρτηση χωρητικότητας 12 16 2 Ροή δικτύου Συνάρτηση αφετηρίακός κόμβος 13 1 με τις ακόλουθες ιδιότητες 4 14 9 7 4 τερματικός κόμβος Περιορισμός χωρητικότητας: Αντισυμμετρία: Διατήρηση

Διαβάστε περισσότερα

ΠΡΟΛΟΓΟΣ. Θεσσαλονίκη, Μάρτιος 2009. Οι συγγραφείς. Κ. Παπαρρίζος, Ν. Σαμαράς, Α. Σιφαλέρας.

ΠΡΟΛΟΓΟΣ. Θεσσαλονίκη, Μάρτιος 2009. Οι συγγραφείς. Κ. Παπαρρίζος, Ν. Σαμαράς, Α. Σιφαλέρας. ΠΡΟΛΟΓΟΣ Το βιβλίο «Δικτυακή Βελτιστοποίηση» γράφτηκε με κύριο στόχο να καλύψει τις ανάγκες της διδασκαλίας του μαθήματος «Δικτυακός Προγραμματισμός», που διδάσκεται στο Τμήμα Εφαρμοσμένης Πληροφορικής,

Διαβάστε περισσότερα

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

Κεφάλαιο 3. Γραφήματα. v1.3 ( ) Χρησιμοποιήθηκε υλικό από τις αγγλικές διαφάνειες του Kevin Wayne. Κεφάλαιο 3 Γραφήματα v1.3 (2014-01-30) Χρησιμοποιήθηκε υλικό από τις αγγλικές διαφάνειες του Kevin Wayne. 1 3.1 Βασικοί Ορισμοί και Εφαρμογές γραφήματα γράφημα G: ένας τρόπος κωδικοποίησης των σχέσεων

Διαβάστε περισσότερα

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

ΠΛΗ 20, 6 η ΟΣΣ: Δέντρα Εξετάσεις ΠΛΗ 20, 6 η ΟΣΣ: Δέντρα Εξετάσεις Δημήτρης Φωτάκης Διακριτά Μαθηματικά και Μαθηματική Λογική Πληροφορική Ελληνικό Ανοικτό Πανεπιστήμιο Δέντρα Δέντρο: πρότυπο ιεραρχικής δομής. Αναπαράσταση (ιεραρχικών)

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

Αλγόριθµοι Τύπου Μείωσης Προβλήµατος

Αλγόριθµοι Τύπου Μείωσης Προβλήµατος Αλγόριθµοι Τύπου Μείωσης Προβλήµατος Περίληψη Αλγόριθµοι Τύπου Μείωσης Προβλήµατος ( Decrease and Conquer ) Μείωση κατά µια σταθερά (decrease by a constant) Μείωση κατά ένα ποσοστό (decrease by a constant

Διαβάστε περισσότερα

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

Αλγόριθμοι Γραφημάτων Αλγόριθμοι Γραφημάτων. Γραφήματα. Αναπαράσταση Γραφημάτων 3. Διερεύνηση σε Πρώτα σε Πλάτος (BFS) Εισαγωγή στην Ανάλυση Αλγορίθμων Μάγια Σατρατζέμη Γράφημα Ορισμός: Ένα γράφημα G είναι το διατεταγμένο ζεύγος

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

Αλγόριθμοι Γραφημάτων Αλγόριθμοι Γραφημάτων 1. Διερεύνηση Πρώτα σε Βάθος (DFS) 2. Τοπολογική Ταξινόμηση Εισαγωγή στην Ανάλυση Αλγορίθμων Μάγια Σατρατζέμη Depth-First Search Πρώτα σε Βάθος διερεύνηση (Depth-First Search) είναι

Διαβάστε περισσότερα

Διαπεράσεις Μη Κατευθυνόμενων Γραφημάτων

Διαπεράσεις Μη Κατευθυνόμενων Γραφημάτων Διαπεράσεις Μη Κατευθυνόμενων Γραφημάτων Κάθε διαδικασία συστηματικής και εξαντλητικής εξερευνήσεως ενός γραφήματος, με την εξέταση των κορυφών και ακμών του Παρ όλη την απλότητά τους, οι διαπεράσεις είναι

Διαβάστε περισσότερα

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

Ενότητα 10 Γράφοι (ή Γραφήµατα) Ενότητα 10 Γράφοι (ή γραφήµατα) ΗΥ240 - Παναγιώτα Φατούρου 1 Γράφοι (ή Γραφήµατα) Ένας γράφος αποτελείται από ένα σύνολο από σηµεία (που λέγονται κόµβοι) και ένα σύνολο από γραµµές (που λέγονται ακµές)

Διαβάστε περισσότερα

Εφαρμόζονται σε προβλήματα στα οποία δεν υπάρχει πληροφορία που να επιτρέπει την αξιολόγηση των καταστάσεων του χώρου αναζήτησης.

Εφαρμόζονται σε προβλήματα στα οποία δεν υπάρχει πληροφορία που να επιτρέπει την αξιολόγηση των καταστάσεων του χώρου αναζήτησης. Ανάλογα με το αν ένας αλγόριθμος αναζήτησης χρησιμοποιεί πληροφορία σχετική με το πρόβλημα για να επιλέξει την επόμενη κατάσταση στην οποία θα μεταβεί, οι αλγόριθμοι αναζήτησης χωρίζονται σε μεγάλες κατηγορίες,

Διαβάστε περισσότερα

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

Εισαγωγή στην Επιστήμη των Υπολογιστών Εισαγωγή στην Επιστήμη των Υπολογιστών 4 ο εξάμηνο ΣΗΜΜΥ 4 η ενότητα: Γράφοι: προβλήματα και αλγόριθμοι Επιμέλεια διαφανειών: Στάθης Ζάχος, Άρης Παγουρτζής, Δημήτρης Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών

Διαβάστε περισσότερα

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

Κεφάλαιο 3. Γραφήµατα v1.0 ( ) Χρησιµοποιήθηκε υλικό από τις αγγλικές διαφάνειες του Kevin Wayne. Κεφάλαιο 3 Γραφήµατα v1.0 (2010-05-25) Χρησιµοποιήθηκε υλικό από τις αγγλικές διαφάνειες του Kevin Wayne. 1 3.1 Βασικοί Ορισµοί και Εφαρµογές γραφήµατα γράφηµα G: ένας τρόπος κωδικοποίησης των σχέσεων

Διαβάστε περισσότερα

auth Αλγόριθμοι - Τμήμα Πληροφορικής ΑΠΘ -4ο εξάμηνο 1

auth Αλγόριθμοι - Τμήμα Πληροφορικής ΑΠΘ -4ο εξάμηνο 1 Σχεδίαση Αλγορίθμων Μείωσε και Βασίλευε http://delab.csd.auth.gr/courses/algorithms/ auth Αλγόριθμοι - Τμήμα Πληροφορικής ΑΠΘ -4ο εξάμηνο 1 Μείωσε και Βασίλευε 1. Μειώνουμε το στιγμιότυπο του προβλήματος

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

Εισαγωγή στην Επιστήμη των Υπολογιστών Εισαγωγή στην Επιστήμη των Υπολογιστών 4 ο εξάμηνο ΣΗΜΜΥ 5 η ενότητα: Γράφοι: προβλήματα και αλγόριθμοι Επιμέλεια διαφανειών: Στάθης Ζάχος, Άρης Παγουρτζής, Δημήτρης Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

Κεφάλαιο 4 Γραφήματα και Δένδρα Κεφάλαιο 4 Γραφήματα και Δένδρα Περιεχόμενα 4.1 Γραφήματα... 60 4.2 Δομές δεδομένων για την αναπαράσταση γραφημάτων... 64 4.2.1 Υλοποίηση σε Java... 66 4.3 Διερεύνηση γραφήματος... 69 4.4 Δένδρα... 86

Διαβάστε περισσότερα

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

ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΦΡΟΝΤΙΣΤΗΡΙΟ ΑΛΓΟΡΙΘΜΩΝ ΒΟΗΘΟΣ: ΒΑΓΓΕΛΗΣ ΔΟΥΡΟΣ 1 ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΦΡΟΝΤΙΣΤΗΡΙΟ ΑΛΓΟΡΙΘΜΩΝ ΒΟΗΘΟΣ: ΒΑΓΓΕΛΗΣ ΔΟΥΡΟΣ Φροντιστήριο #2: Πολυωνυμικοί Αλγόριθμοι, Εισαγωγή στα Γραφήματα, Αναζήτηση κατά Βάθος, Τοπολογική Ταξινόμηση

Διαβάστε περισσότερα

Θέματα Μεταγλωττιστών

Θέματα Μεταγλωττιστών Γιώργος Δημητρίου Ενότητα 7 η : Περιοχές: Εναλλακτική Μέθοδος Ανάλυσης Ροής Δεδομένων Περιοχές (Regions) Σε κάποιες περιπτώσεις βρόχων η ανάλυση ροής δεδομένων με τον επαναληπτικό αλγόριθμο συγκλίνει αργά

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

Προσεγγιστικοί Αλγόριθμοι Πολλά NP-πλήρη προβλήματα έχουν μεγάλο πρακτικό ενδιαφέρον. http://xkcd.com/287/ Πολλά NP-πλήρη προβλήματα έχουν μεγάλο πρακτικό ενδιαφέρον. Πως μπορούμε να αντιμετωπίσουμε το γεγονός ότι είναι απίθανη(;)

Διαβάστε περισσότερα

(elementary graph algorithms)

(elementary graph algorithms) (elementary graph algorithms) Παύλος Εφραιμίδης 1 περιεχόμενα γραφήματα αναπαραστάσεις οριζόντια διερεύνηση καθοδική διερεύνηση 2 ΓΡΑΦΉΜΑΤΑ 3 αναπαράσταση δύο καθιερωμένοι τρόποι: πίνακας γειτνίασης συλλογή

Διαβάστε περισσότερα

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

Κεφάλαιο 3. Γραφήµατα v1.1 (2012-01-12) Χρησιµοποιήθηκε υλικό από τις αγγλικές διαφάνειες του Kevin Wayne. Κεφάλαιο 3 Γραφήµατα v1.1 (2012-01-12) Χρησιµοποιήθηκε υλικό από τις αγγλικές διαφάνειες του Kevin Wayne. 1 3.1 Βασικοί Ορισµοί και Εφαρµογές γραφήµατα γράφηµα G: ένας τρόπος κωδικοποίησης των σχέσεων

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

Δομές Δεδομένων και Αλγόριθμοι Δομές Δεδομένων και Αλγόριθμοι Χρήστος Γκόγκος ΤΕΙ Ηπείρου Χειμερινό Εξάμηνο 2014-2015 Παρουσίαση 18 Dijkstra s Shortest Path Algorithm 1 / 12 Ο αλγόριθμος εύρεσης της συντομότερης διαδρομής του Dijkstra

Διαβάστε περισσότερα

Σχεδίαση και Ανάλυση Αλγορίθμων Ενότητα 11: ΠΡΟΒΛΗΜΑ ΔΙΑΤΡΕΞΗΣ ΓΡΑΦΗΜΑΤΟΣ

Σχεδίαση και Ανάλυση Αλγορίθμων Ενότητα 11: ΠΡΟΒΛΗΜΑ ΔΙΑΤΡΕΞΗΣ ΓΡΑΦΗΜΑΤΟΣ Σχεδίαση και Ανάλυση Αλγορίθμων Ενότητα 11: ΠΡΟΒΛΗΜΑ ΔΙΑΤΡΕΞΗΣ ΓΡΑΦΗΜΑΤΟΣ Δημήτριος Κουκόπουλος Σχολή Οργάνωσης και Διοίκησης Επιχειρήσεων Τμήμα Διαχείρισης Πολιτισμικού Περιβάλλοντος και Νέων Τεχνολογιών

Διαβάστε περισσότερα

7ο ΕΡΓΑΣΤΗΡΙΟ AAAABBBBAAAAABBBBBBCCCCCCCCCCCCCCBBABAAAABBBBBBCCCCD

7ο ΕΡΓΑΣΤΗΡΙΟ AAAABBBBAAAAABBBBBBCCCCCCCCCCCCCCBBABAAAABBBBBBCCCCD ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΛΑΜΙΑΣ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ ΥΠΟΛΟΓΙΣΤΩΝ ΣΧΕΔΙΑΣΜΟΣ ΚΑΙ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ 2010 11 Ιστοσελίδα μαθήματος: http://eclass.teilam.gr/di288 1 Συμπίεση

Διαβάστε περισσότερα

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

Γράφοι: κατευθυνόμενοι και μη Γράφοι: κατευθυνόμενοι και μη (V,E ) (V,E ) Γράφος (ή γράφημα): ζεύγος (V,E), V ένα μη κενό σύνολο, Ε διμελής σχέση πάνω στο V Μη κατευθυνόμενος γράφος: σχέση Ε συμμετρική V: κορυφές (vertices), κόμβοι

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

Για παράδειγμα η αρχική και η τελική κατάσταση αναπαριστώνται ως εξής: (ένα λίτρο)

Για παράδειγμα η αρχική και η τελική κατάσταση αναπαριστώνται ως εξής: (ένα λίτρο) 8 1 η ΕΡΓΑΣΙΑ ΣΤΟ ΜΑΘΗΜΑ ΤΕΧΝΗΤΗ ΝΟΗΜΟΣΥΝΗ Απάντηση 1ης άσκησης Κατάσταση (κόμβοι): Αναπαριστούμε μια κατάσταση του προβλήματος με ένα διατεταγμένο ζεύγος (X,Y) όπου X είναι τα λίτρα στο βάζο Α (χωρητικότητα

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

Επίλυση Προβλημάτων 1

Επίλυση Προβλημάτων 1 Επίλυση Προβλημάτων 1 Επίλυση Προβλημάτων Περιγραφή Προβλημάτων Αλγόριθμοι αναζήτησης Αλγόριθμοι τυφλής αναζήτησης Αναζήτηση πρώτα σε βάθος Αναζήτηση πρώτα σε πλάτος (ΒFS) Αλγόριθμοι ευρετικής αναζήτησης

Διαβάστε περισσότερα

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

Πανεπιστήμιο Πειραιώς Σχολή Τεχνολογιών Πληροφορικής και Επικοινωνιών Τμήμα Ψηφιακών Συστημάτων ομές εδομένων Πανεπιστήμιο Πειραιώς Σχολή Τεχνολογιών Πληροφορικής και Επικοινωνιών Τμήμα Ψηφιακών Συστημάτων 11. Γράφοι 2 ομές εδομένων 4 5 Χρήστος ουλκερίδης Τμήμα Ψηφιακών Συστημάτων 23/12/2016 Εισαγωγή Οι γράφοι

Διαβάστε περισσότερα

Τεχνητή Νοημοσύνη. 2η διάλεξη (2015-16) Ίων Ανδρουτσόπουλος. http://www.aueb.gr/users/ion/

Τεχνητή Νοημοσύνη. 2η διάλεξη (2015-16) Ίων Ανδρουτσόπουλος. http://www.aueb.gr/users/ion/ Τεχνητή Νοημοσύνη 2η διάλεξη (2015-16) Ίων Ανδρουτσόπουλος http://www.aueb.gr/users/ion/ 1 Οι διαφάνειες αυτής της διάλεξης βασίζονται στα βιβλία: Τεχνητή Νοημοσύνη των Βλαχάβα κ.ά., 3η έκδοση, Β. Γκιούρδας

Διαβάστε περισσότερα

Γράφημα. Συνδυαστικό αντικείμενο που αποτελείται από 2 σύνολα: Σύνολο κορυφών (vertex set) Σύνολο ακμών (edge set) 4 5 πλήθος κορυφών πλήθος ακμών

Γράφημα. Συνδυαστικό αντικείμενο που αποτελείται από 2 σύνολα: Σύνολο κορυφών (vertex set) Σύνολο ακμών (edge set) 4 5 πλήθος κορυφών πλήθος ακμών Γράφημα Συνδυαστικό αντικείμενο που αποτελείται από 2 σύνολα: Σύνολο κορυφών (vertex set) Σύνολο ακμών (edge set) 1 2 3 4 5 πλήθος κορυφών πλήθος ακμών Γράφημα Συνδυαστικό αντικείμενο που αποτελείται από

Διαβάστε περισσότερα

Τεχνητή Νοημοσύνη (ΥΠ23) 6 ο εξάμηνο Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ουρανία Χατζή

Τεχνητή Νοημοσύνη (ΥΠ23) 6 ο εξάμηνο Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ουρανία Χατζή Τεχνητή Νοημοσύνη (ΥΠ23) 6 ο εξάμηνο Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ουρανία Χατζή raniah@hua.gr 1 Αναζήτηση Δοθέντος ενός προβλήματος με περιγραφή είτε στον χώρο καταστάσεων

Διαβάστε περισσότερα

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

Κατανεμημένα Συστήματα Ι Κατανεμημένα Συστήματα Ι Παναγιώτα Παναγοπούλου Χριστίνα Σπυροπούλου 8η Διάλεξη 8 Δεκεμβρίου 2016 1 Ασύγχρονη κατασκευή BFS δέντρου Στα σύγχρονα συστήματα ο αλγόριθμος της πλημμύρας είναι ένας απλός αλλά

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

Προσεγγιστικοί Αλγόριθμοι Πολλά NP-πλήρη προβλήματα έχουν μεγάλο πρακτικό ενδιαφέρον. http://xkcd.com/287/ Πολλά NP-πλήρη προβλήματα έχουν μεγάλο πρακτικό ενδιαφέρον. Πως μπορούμε να αντιμετωπίσουμε το γεγονός ότι είναι απίθανη(;)

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

Διάλεξη 29: Γράφοι. Διδάσκων: Παναγιώτης Ανδρέου

Διάλεξη 29: Γράφοι. Διδάσκων: Παναγιώτης Ανδρέου Διάλεξη 9: Γράφοι Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: - Γράφοι - ορισμοί και υλοποίηση - Διάσχιση Γράφων Διδάσκων: Παναγιώτης νδρέου ΕΠΛ035 Δομές Δεδομένων και λγόριθμοι για Ηλ. Μηχ.

Διαβάστε περισσότερα

Ισορροπημένα Δένδρα. για κάθε λειτουργία; Ισορροπημένο δένδρο : Διατηρεί ύψος κάθε εισαγωγή ή διαγραφή

Ισορροπημένα Δένδρα. για κάθε λειτουργία; Ισορροπημένο δένδρο : Διατηρεί ύψος κάθε εισαγωγή ή διαγραφή Ισορροπημένα Δένδρα Μπορούμε να επιτύχουμε για κάθε λειτουργία; χρόνο εκτέλεσης Ισορροπημένο δένδρο : Διατηρεί ύψος κάθε εισαγωγή ή διαγραφή μετά από Περιστροφές x αριστερή περιστροφή από το x y α β y

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

Δένδρα. Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα:

Δένδρα. Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Δένδρα Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Εισαγωγή σε δενδρικές δομές δεδομένων, ορισμοί, πράξεις και αναπαράσταση στη μνήμη ΔυαδικάΔένδρακαιΔυαδικάΔένδραΑναζήτησης ΕΠΛ 231 Δομές

Διαβάστε περισσότερα

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

Στοιχεία Θεωρίας Γραφηµάτων (4) - έντρα Στοιχεία Θεωρίας Γραφηµάτων (4) - έντρα Ορέστης Τελέλης tllis@unipi.r Τµήµα Ψηφιακών Συστηµάτων, Πανεπιστήµιο Πειραιώς Ο. Τελέλης Πανεπιστήµιο Πειραιώς έντρα 1 / 27 έντρα έντρο είναι απλό συνδεδεµένο µη

Διαβάστε περισσότερα

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

ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΦΡΟΝΤΙΣΤΗΡΙΟ ΑΛΓΟΡΙΘΜΩΝ ΒΟΗΘΟΣ: ΒΑΓΓΕΛΗΣ ΔΟΥΡΟΣ ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΦΡΟΝΤΙΣΤΗΡΙΟ ΑΛΓΟΡΙΘΜΩΝ ΒΟΗΘΟΣ: ΒΑΓΓΕΛΗΣ ΔΟΥΡΟΣ Φροντιστήριο #: Εύρεση Ελαχίστων Μονοπατιών σε Γραφήματα που Περιλαμβάνουν και Αρνητικά Βάρη: Αλγόριθμος

Διαβάστε περισσότερα

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

Θέματα Υπολογισμού στον Πολιτισμό - Δένδρα. Δένδρα Δένδρα Δένδρα Ειδική κατηγορία γραφημάτων: συνεκτικά γραφήματα που δεν περιέχουν απλά κυκλώματα [1857] Arthur Cayley: για απαρίθμηση ορισμένων ειδών χημικών ενώσεων Χρησιμοποιούνται σε πληθώρα προβλημάτων,

Διαβάστε περισσότερα

Τεχνητή Νοημοσύνη. 3η διάλεξη ( ) Ίων Ανδρουτσόπουλος.

Τεχνητή Νοημοσύνη. 3η διάλεξη ( ) Ίων Ανδρουτσόπουλος. Τεχνητή Νοημοσύνη 3η διάλεξη (2016-17) Ίων Ανδρουτσόπουλος http://www.aueb.gr/users/ion/ 1 Οι διαφάνειες αυτής της διάλεξης βασίζονται στα βιβλία Τεχνητή Νοημοσύνη των Βλαχάβα κ.ά., 3η έκδοση, Β. Γκιούρδας

Διαβάστε περισσότερα

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

Κατανεμημένα Συστήματα Ι Εκλογή αρχηγού σε γενικά δίκτυα 20 Οκτωβρίου 2016 Παναγιώτα Παναγοπούλου Εκλογή αρχηγού σε γενικά δίκτυα Προηγούμενη διάλεξη Σύγχρονα Κατανεμημένα Συστήματα Μοντελοποίηση συστήματος Πρόβλημα εκλογής αρχηγού

Διαβάστε περισσότερα

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

Πανεπιστήμιο Πειραιώς Σχολή Τεχνολογιών Πληροφορικής και Επικοινωνιών Τμήμα Ψηφιακών Συστημάτων ομές εδομένων Πανεπιστήμιο Πειραιώς Σχολή Τεχνολογιών Πληροφορικής και Επικοινωνιών Τμήμα Ψηφιακών Συστημάτων 6. Δυαδικά Δέντρα 2 ομές εδομένων 4 5 Χρήστος ουλκερίδης Τμήμα Ψηφιακών Συστημάτων 18/11/2016 Εισαγωγή Τα

Διαβάστε περισσότερα

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

Κεφάλαιο 3. Γραφήματα. ver. 21/12/2014. Χρησιμοποιήθηκε υλικό από τις αγγλικές διαφάνειες του Kevin Wayne. Κεφάλαιο 3 Γραφήματα ver. 21/12/2014 Χρησιμοποιήθηκε υλικό από τις αγγλικές διαφάνειες του Kevin Wayne. 1 3.1 Βασικοί Ορισμοί και Εφαρμογές γραφήματα γράφημα G: ένας τρόπος κωδικοποίησης των σχέσεων ανά

Διαβάστε περισσότερα

Ισορροπημένα Δένδρα. για κάθε λειτουργία; Ισορροπημένο δένδρο : Διατηρεί ύψος κάθε εισαγωγή ή διαγραφή

Ισορροπημένα Δένδρα. για κάθε λειτουργία; Ισορροπημένο δένδρο : Διατηρεί ύψος κάθε εισαγωγή ή διαγραφή Ισορροπημένα Δένδρα Μπορούμε να επιτύχουμε για κάθε λειτουργία; χρόνο εκτέλεσης Ισορροπημένο δένδρο : Διατηρεί ύψος κάθε εισαγωγή ή διαγραφή μετά από Περιστροφές x αριστερή περιστροφή από το x y α β y

Διαβάστε περισσότερα

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

ΑΣΚΗΣΗ 1 Για τις ερωτήσεις 1-4 θεωρήσατε τον ακόλουθο γράφο. Ποιές από τις παρακάτω προτάσεις αληθεύουν και ποιές όχι; ΘΕΜΑΤΑ ΔΕΝΔΡΩΝ ΓΙΑ ΤΙΣ ΕΞΕΤΑΣΕΙΣ ΠΛΗ0 ΑΣΚΗΣΗ Για τις ερωτήσεις - θεωρήσατε τον ακόλουθο γράφο. Ποιές από τις παρακάτω προτάσεις αληθεύουν και ποιές όχι; Β Ε Α 6 Δ 5 9 8 0 Γ 7 Ζ Η. Σ/Λ Δυο από τα συνδετικά

Διαβάστε περισσότερα

Περιεχόμενα. Περιεχόμενα

Περιεχόμενα. Περιεχόμενα Περιεχόμενα xv Περιεχόμενα 1 Αρχές της Java... 1 1.1 Προκαταρκτικά: Κλάσεις, Τύποι και Αντικείμενα... 2 1.1.1 Βασικοί Τύποι... 5 1.1.2 Αντικείμενα... 7 1.1.3 Τύποι Enum... 14 1.2 Μέθοδοι... 15 1.3 Εκφράσεις...

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

ΥΣ02 Τεχνητή Νοημοσύνη Χειμερινό Εξάμηνο

ΥΣ02 Τεχνητή Νοημοσύνη Χειμερινό Εξάμηνο ΥΣ02 Τεχνητή Νοημοσύνη Χειμερινό Εξάμηνο 2010-2011 Πρώτη Σειρά Ασκήσεων (20% του συνολικού βαθμού στο μάθημα, Άριστα = 390 μονάδες) Ημερομηνία Ανακοίνωσης: 6/10/2010 Ημερομηνία Παράδοσης: 15/11/2010 σύμφωνα

Διαβάστε περισσότερα

Σχέσεις Μερικής ιάταξης

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

Διαβάστε περισσότερα

Δένδρα. Μαθηματικά (συνδυαστικά) αντικείμενα. Έχουν κεντρικό ρόλο στην επιστήμη των υπολογιστών :

Δένδρα. Μαθηματικά (συνδυαστικά) αντικείμενα. Έχουν κεντρικό ρόλο στην επιστήμη των υπολογιστών : Δένδρα Μαθηματικά (συνδυαστικά) αντικείμενα. Έχουν κεντρικό ρόλο στην επιστήμη των υπολογιστών : Ανάλυση αλγορίθμων (π.χ. δένδρα αναδρομής) Δομές δεδομένων (π.χ. δένδρα αναζήτησης) ακμή Κατηγορίες (αύξουσα

Διαβάστε περισσότερα

Κεφάλαιο 11 Ένωση Ξένων Συνόλων

Κεφάλαιο 11 Ένωση Ξένων Συνόλων Κεφάλαιο 11 Ένωση Ξένων Συνόλων Περιεχόμενα 11.1 Εισαγωγή... 227 11.2 Εφαρμογή στο Πρόβλημα της Συνεκτικότητας... 228 11.3 Δομή Ξένων Συνόλων με Συνδεδεμένες Λίστες... 229 11.4 Δομή Ξένων Συνόλων με Ανοδικά

Διαβάστε περισσότερα

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

3η Σειρά Γραπτών Ασκήσεων 1/55 3η Σειρά Γραπτών Ασκήσεων Αλγόριθμοι και Πολυπλοκότητα ΣΗΜΜΥ, Εθνικό Μετσόβιο Πολυτεχνείο 2/55 1 Άσκηση 1: Πομποί και Δέκτες 2 Άσκηση 2: Διακοπές στην Ικαρία 3 Άσκηση 3: Επιστροφή στη Γη 4 Άσκηση

Διαβάστε περισσότερα

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

Κατανεμημένα Συστήματα Ι Συναίνεση χωρίς την παρουσία σφαλμάτων Κατανεμημένα Συστήματα Ι 4η Διάλεξη 27 Οκτωβρίου 2016 Παναγιώτα Παναγοπούλου Κατανεμημένα Συστήματα Ι 4η Διάλεξη 1 Συναίνεση χωρίς την παρουσία σφαλμάτων Προηγούμενη

Διαβάστε περισσότερα

Σχέσεις Μερικής ιάταξης

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

Διαβάστε περισσότερα

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

Δοµές Δεδοµένων & Ανάλυση Αλγορίθµων 3ο Εξάµηνο. Γραφήµατα. (Graphs) Δοµές Δεδοµένων & Ανάλυση Αλγορίθµων 3ο Εξάµηνο Γραφήµατα (Grphs) http://tos.it.tith.gr/~mos/thing_gr.html Δηµοσθένης Σταµάτης Τµήµα Πληροφορικής ATEI ΘΕΣΣΑΛΟΝΙΚΗΣ Γράφημα (Grph) Oρισμός 1: Έστω το µη

Διαβάστε περισσότερα

Μετασχηματισμοί, Αναπαράσταση και Ισομορφισμός Γραφημάτων

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

Διαβάστε περισσότερα

Ευφυείς Τεχνολογίες Πράκτορες

Ευφυείς Τεχνολογίες Πράκτορες Ευφυείς Τεχνολογίες Πράκτορες Ενότητα 2: Αναπαράσταση Γνώσης και Επίλυση Προβλημάτων Δημοσθένης Σταμάτης mos@it.tith.gr www.it.tith.gr/~mos Μαθησιακοί Στόχοι της ενότητας 2 Πως ορίζεται ένα πρόβλημα στα

Διαβάστε περισσότερα

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

Ελαφρύτατες διαδρομές Ελαφρύτατες διαδρομές Ελαφρύτατες διαδρομές Κατευθυνόμενο γράφημα Συνάρτηση βάρους Ελαφρύτατη διαδρομή από το u στο v : διαδρομή με και ελάχιστο βάρος s 3 t 7 x 5 3 y z Βάρος ελαφρύτατης διαδρομής εάν

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα