Συνδετικότητα γραφήματος (graph connectivity)

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

Download "Συνδετικότητα γραφήματος (graph connectivity)"

Transcript

1 Συνδετικότητα γραφήματος (graph connectivity)

2 Συνδετικότητα γραφήματος (graph connectivity) Υπάρχει μονοπάτι μεταξύ α και β; α Παραδείγματα: υπολογιστές ενός δικτύου ιστοσελίδες ισοδύναμες μεταβλητές ενός προγράμματος τρανζίστορ σε ηλεκτρονικό κύκλωμα β

3 Συνδετικότητα γραφήματος (graph connectivity) Υπάρχει μονοπάτι μεταξύ α και β; α Παραδείγματα: υπολογιστές ενός δικτύου ιστοσελίδες ισοδύναμες μεταβλητές ενός προγράμματος τρανζίστορ σε ηλεκτρονικό κύκλωμα β

4 Σχέση ισοδυναμίας (equivalence relation) Η συδετικότητα σε ένα γράφημα ορίζει μία σχέση ισοδυναμίας μεταξύ των κόμβων του γραφήματος Σ = Διμερής σχέση μεταξύ αντικειμένων ενός συνόλου Α; υποσύνολο του Α Α Σ είναι σχέση ισοδυναμίας (equivalence relation): Αυτοπαθής: Συμμετρική: Μεταβατική: και

5 Το πρόβλημα ένωσης-εύρεσης (union-find) Θέλουμε μία δομή δεδομένων που να υποστηρίζει τις παρακάτω λειτουργίες: ένωση(α,β): αντικαθιστά τα σύνολα που περιέχουν τα α και β με την ένωση τους εύρεση(α): επιστρέφει το όνομα του συνόλου που περιέχει το α

6 Το πρόβλημα ένωσης-εύρεσης (union-find) Θέλουμε μία δομή δεδομένων που να υποστηρίζει τις παρακάτω λειτουργίες: ένωση(α,β): αντικαθιστά τα σύνολα που περιέχουν τα α και β με την ένωση τους εύρεση(α): επιστρέφει το όνομα του συνόλου που περιέχει το α Η δομή αυτή αρκεί για να επιλύσουμε το πρόβλημα τις συνδετικότητας: α α β β Για κάθε ακμή (α,β) εκτελούμε ένωση(α,β) Το α συνδέεται με το β αν και μόνο αν εύρεση(α)=εύρεση(β)

7 Αλγόριθμοι ένωσης-εύρεσης Ας υποθέσουμε ότι τα αντικείμενα μας είναι ακέραιοι αριθμοί: Χρησιμοποιούμε ένα πίνακα Π διαστάσεων Αρχικοποίηση : για

8 Αλγόριθμοι ένωσης-εύρεσης Ας υποθέσουμε ότι τα αντικείμενα μας είναι ακέραιοι αριθμοί: Χρησιμοποιούμε ένα πίνακα Π διαστάσεων Αρχικοποίηση : για Αρχικά κάθε αντικείμενο αποτελεί ένα ξεχωριστό σύνολο

9 Αλγόριθμοι ένωσης-εύρεσης Αρχικά κάθε αντικείμενο αποτελεί ένα ξεχωριστό σύνολο Ο αλγόριθμος διαβάζει ένα γράφημα από την είσοδο και πραγματοποιεί τις κατάλληλες ενώσεις. Το γράφημα δίνεται ως μια ακολουθία ακμών Π.χ. το παραπάνω γράφημα μπορεί να μας δίνεται ως η ακολουθία ακμών {,2} {2,3} {,3} {7,8} {4,6} {4,5} {6,7} {3,6} {5,7} {4,7}

10 Αλγόριθμοι ένωσης-εύρεσης: γρήγορη εύρεση Επιβάλλουμε την παρακάτω συνθήκη: Οποιαδήποτε δύο αντικείμενα α και β ανήκουν στο ίδιο σύνολο αν και μόνο αν ένωση(α,β) : για κάθε κ τέτοιο ώστε θέτουμε εύρεση(α) : επιστρέφουμε την τιμή του

11 Αλγόριθμοι ένωσης-εύρεσης: γρήγορη εύρεση Οποιαδήποτε δύο αντικείμενα α και β ανήκουν στο ίδιο σύνολο αν και μόνο αν ένωση(α,β) : για κάθε κ τέτοιο ώστε θέτουμε void union(int a, int b) { int k; if (Pi[a] == Pi[b]) return; for (k=; k<=n; k++) if (Pi[k]==Pi[b]) Pi[k]=Pi[a]; } εύρεση(α) : επιστρέφουμε την τιμή του void find(int a) { return Pi[a]; }

12 Αλγόριθμοι ένωσης-εύρεσης: γρήγορη εύρεση ένωση(α,β) : για κάθε κ τέτοιο ώστε θέτουμε ακολουθία ακμών {,2} {2,3} {,3} {7,8} {4,6} {4,5} {6,7} {3,6} {5,7} {4,7} γράφημα πίνακας δέντρο ένωσης-εύρεσης

13 Αλγόριθμοι ένωσης-εύρεσης: γρήγορη εύρεση ένωση(α,β) : για κάθε κ τέτοιο ώστε θέτουμε ακολουθία ακμών {,2} {2,3} {,3} {7,8} {4,6} {4,5} {6,7} {3,6} {5,7} {4,7} γράφημα πίνακας δέντρο ένωσης-εύρεσης

14 Αλγόριθμοι ένωσης-εύρεσης: γρήγορη εύρεση ένωση(α,β) : για κάθε κ τέτοιο ώστε θέτουμε ακολουθία ακμών {,2} {2,3} {,3} {7,8} {4,6} {4,5} {6,7} {3,6} {5,7} {4,7} γράφημα πίνακας δέντρο ένωσης-εύρεσης

15 Αλγόριθμοι ένωσης-εύρεσης: γρήγορη εύρεση ένωση(α,β) : για κάθε κ τέτοιο ώστε θέτουμε ακολουθία ακμών {,2} {2,3} {,3} {7,8} {4,6} {4,5} {6,7} {3,6} {5,7} {4,7} γράφημα πίνακας δέντρο ένωσης-εύρεσης

16 Αλγόριθμοι ένωσης-εύρεσης: γρήγορη εύρεση ένωση(α,β) : για κάθε κ τέτοιο ώστε θέτουμε ακολουθία ακμών {,2} {2,3} {,3} {7,8} {4,6} {4,5} {6,7} {3,6} {5,7} {4,7} γράφημα πίνακας δέντρο ένωσης-εύρεσης

17 Αλγόριθμοι ένωσης-εύρεσης: γρήγορη εύρεση ένωση(α,β) : για κάθε κ τέτοιο ώστε θέτουμε ακολουθία ακμών {,2} {2,3} {,3} {7,8} {4,6} {4,5} {6,7} {3,6} {5,7} {4,7} γράφημα πίνακας δέντρο ένωσης-εύρεσης

18 Αλγόριθμοι ένωσης-εύρεσης: γρήγορη εύρεση ένωση(α,β) : για κάθε κ τέτοιο ώστε θέτουμε ακολουθία ακμών {,2} {2,3} {,3} {7,8} {4,6} {4,5} {6,7} {3,6} {5,7} {4,7} γράφημα πίνακας δέντρο ένωσης-εύρεσης

19 Αλγόριθμοι ένωσης-εύρεσης: γρήγορη εύρεση ένωση(α,β) : για κάθε κ τέτοιο ώστε θέτουμε ακολουθία ακμών {,2} {2,3} {,3} {7,8} {4,6} {4,5} {6,7} {3,6} {5,7} {4,7} γράφημα πίνακας δέντρο ένωσης-εύρεσης

20 Αλγόριθμοι ένωσης-εύρεσης: γρήγορη εύρεση ένωση(α,β) : για κάθε κ τέτοιο ώστε θέτουμε ακολουθία ακμών {,2} {2,3} {,3} {7,8} {4,6} {4,5} {6,7} {3,6} {5,7} {4,7} γράφημα πίνακας δέντρο ένωσης-εύρεσης

21 Αλγόριθμοι ένωσης-εύρεσης: γρήγορη εύρεση ένωση(α,β) : για κάθε κ τέτοιο ώστε θέτουμε ακολουθία ακμών {,2} {2,3} {,3} {7,8} {4,6} {4,5} {6,7} {3,6} {5,7} {4,7} γράφημα πίνακας δέντρο ένωσης-εύρεσης

22 Αλγόριθμοι ένωσης-εύρεσης: γρήγορη εύρεση ένωση(α,β) : για κάθε κ τέτοιο ώστε θέτουμε ακολουθία ακμών {,2} {2,3} {,3} {7,8} {4,6} {4,5} {6,7} {3,6} {5,7} {4,7} γράφημα πίνακας δέντρο ένωσης-εύρεσης

23 Αλγόριθμοι ένωσης-εύρεσης: γρήγορη εύρεση ένωση(α,β) : για κάθε κ τέτοιο ώστε θέτουμε ακολουθία ακμών {,2} {2,3} {,3} {7,8} {4,6} {4,5} {6,7} {3,6} {5,7} {4,7} γράφημα πίνακας δέντρο ένωσης-εύρεσης

24 Αλγόριθμοι ένωσης-εύρεσης: γρήγορη εύρεση ένωση(α,β) : για κάθε κ τέτοιο ώστε θέτουμε ακολουθία ακμών {,2} {2,3} {,3} {7,8} {4,6} {4,5} {6,7} {3,6} {5,7} {4,7} γράφημα πίνακας δέντρο ένωσης-εύρεσης

25 Αλγόριθμοι ένωσης-εύρεσης: γρήγορη εύρεση ένωση(α,β) : για κάθε κ τέτοιο ώστε θέτουμε ακολουθία ακμών {,2} {2,3} {,3} {7,8} {4,6} {4,5} {6,7} {3,6} {5,7} {4,7} γράφημα πίνακας δέντρο ένωσης-εύρεσης

26 Αλγόριθμοι ένωσης-εύρεσης: γρήγορη εύρεση ένωση(α,β) : για κάθε κ τέτοιο ώστε θέτουμε ακολουθία ακμών {,2} {2,3} {,3} {7,8} {4,6} {4,5} {6,7} {3,6} {5,7} {4,7} γράφημα πίνακας δέντρο ένωσης-εύρεσης

27 Αλγόριθμοι ένωσης-εύρεσης: γρήγορη εύρεση ένωση(α,β) : για κάθε κ τέτοιο ώστε θέτουμε ακολουθία ακμών {,2} {2,3} {,3} {7,8} {4,6} {4,5} {6,7} {3,6} {5,7} {4,7} γράφημα πίνακας δέντρο ένωσης-εύρεσης

28 Αλγόριθμοι ένωσης-εύρεσης: γρήγορη εύρεση Επιβάλλουμε την παρακάτω συνθήκη: Οποιαδήποτε δύο αντικείμενα α και β ανήκουν στο ίδιο σύνολο αν και μόνο αν ένωση(α,β) : για κάθε κ τέτοιο ώστε θέτουμε εύρεση(α) : επιστρέφουμε την τιμή του Ιδιότητα: Για ν αντικείμενα και μ πράξεις ένωσης, ο αλγόριθμος γρήγορης εύρεσης απαιτεί τουλάχιστον μν εντολές.

29 Αλγόριθμοι ένωσης-εύρεσης: γρήγορη ένωση δείκτης σε άλλο αντικείμενο του ίδιου συνόλου εύρεση(α) : ξεκινώντας από το α ακολουθούμε τους δείκτες μέχρι να βρούμε βρούμε αντικείμενο κ τέτοιο ώστε επιστρέφουμε την τιμή κ. α και β ανήκουν στο ίδιο σύνολο αν και μόνο αν εύρεση(α) = εύρεση(β) ένωση(α,β) : εκτελούμε κ εύρεση(α) και λ εύρεση(β) θέτουμε

30 Αλγόριθμοι ένωσης-εύρεσης: γρήγορη ένωση δείκτης σε άλλο αντικείμενο του ίδιου συνόλου εύρεση(α) : ξεκινώντας από το α ακολουθούμε τους δείκτες μέχρι να βρούμε βρούμε αντικείμενο κ τέτοιο ώστε επιστρέφουμε την τιμή κ. void find(int a) { int k=a; while (k!= Pi[k]) k=pi[k]; return k; } α και β ανήκουν στο ίδιο σύνολο αν και μόνο αν εύρεση(α) = εύρεση(β) ένωση(α,β) : εκτελούμε κ εύρεση(α) και λ εύρεση(β) θέτουμε void union(int a, int b) { int k=find(a); int l=find(b); Pi[l]=k; }

31 Αλγόριθμοι ένωσης-εύρεσης: γρήγορη ένωση ένωση(α,β) : εκτελούμε κ εύρεση(α) και λ εύρεση(β) θέτουμε ακολουθία ακμών γράφημα {,2} {2,3} {,3} {7,8} {4,6} {4,5} {6,7} {3,6} {5,7} {4,7} πίνακας δέντρο ένωσης-εύρεσης

32 Αλγόριθμοι ένωσης-εύρεσης: γρήγορη ένωση ένωση(α,β) : εκτελούμε κ εύρεση(α) και λ εύρεση(β) θέτουμε ακολουθία ακμών γράφημα {,2} {2,3} {,3} {7,8} {4,6} {4,5} {6,7} {3,6} {5,7} {4,7} πίνακας δέντρο ένωσης-εύρεσης

33 Αλγόριθμοι ένωσης-εύρεσης: γρήγορη ένωση ένωση(α,β) : εκτελούμε κ εύρεση(α) και λ εύρεση(β) θέτουμε ακολουθία ακμών γράφημα {,2} {2,3} {,3} {7,8} {4,6} {4,5} {6,7} {3,6} {5,7} {4,7} πίνακας δέντρο ένωσης-εύρεσης

34 Αλγόριθμοι ένωσης-εύρεσης: γρήγορη ένωση ένωση(α,β) : εκτελούμε κ εύρεση(α) και λ εύρεση(β) θέτουμε ακολουθία ακμών γράφημα {,2} {2,3} {,3} {7,8} {4,6} {4,5} {6,7} {3,6} {5,7} {4,7} πίνακας δέντρο ένωσης-εύρεσης

35 Αλγόριθμοι ένωσης-εύρεσης: γρήγορη ένωση ένωση(α,β) : εκτελούμε κ εύρεση(α) και λ εύρεση(β) θέτουμε ακολουθία ακμών γράφημα {,2} {2,3} {,3} {7,8} {4,6} {4,5} {6,7} {3,6} {5,7} {4,7} πίνακας δέντρο ένωσης-εύρεσης

36 Αλγόριθμοι ένωσης-εύρεσης: γρήγορη ένωση ένωση(α,β) : εκτελούμε κ εύρεση(α) και λ εύρεση(β) θέτουμε ακολουθία ακμών γράφημα {,2} {2,3} {,3} {7,8} {4,6} {4,5} {6,7} {3,6} {5,7} {4,7} πίνακας δέντρο ένωσης-εύρεσης

37 Αλγόριθμοι ένωσης-εύρεσης: γρήγορη ένωση ένωση(α,β) : εκτελούμε κ εύρεση(α) και λ εύρεση(β) θέτουμε ακολουθία ακμών γράφημα {,2} {2,3} {,3} {7,8} {4,6} {4,5} {6,7} {3,6} {5,7} {4,7} πίνακας δέντρο ένωσης-εύρεσης

38 Αλγόριθμοι ένωσης-εύρεσης: γρήγορη ένωση ένωση(α,β) : εκτελούμε κ εύρεση(α) και λ εύρεση(β) θέτουμε ακολουθία ακμών γράφημα {,2} {2,3} {,3} {7,8} {4,6} {4,5} {6,7} {3,6} {5,7} {4,7} πίνακας δέντρο ένωσης-εύρεσης

39 Αλγόριθμοι ένωσης-εύρεσης: γρήγορη ένωση ένωση(α,β) : εκτελούμε κ εύρεση(α) και λ εύρεση(β) θέτουμε ακολουθία ακμών γράφημα {,2} {2,3} {,3} {7,8} {4,6} {4,5} {6,7} {3,6} {5,7} {4,7} πίνακας δέντρο ένωσης-εύρεσης

40 Αλγόριθμοι ένωσης-εύρεσης: γρήγορη ένωση ένωση(α,β) : εκτελούμε κ εύρεση(α) και λ εύρεση(β) θέτουμε ακολουθία ακμών γράφημα {,2} {2,3} {,3} {7,8} {4,6} {4,5} {6,7} {3,6} {5,7} {4,7} πίνακας δέντρο ένωσης-εύρεσης

41 Αλγόριθμοι ένωσης-εύρεσης: γρήγορη ένωση ένωση(α,β) : εκτελούμε κ εύρεση(α) και λ εύρεση(β) θέτουμε ακολουθία ακμών γράφημα {,2} {2,3} {,3} {7,8} {4,6} {4,5} {6,7} {3,6} {5,7} {4,7} πίνακας δέντρο ένωσης-εύρεσης

42 Αλγόριθμοι ένωσης-εύρεσης: γρήγορη ένωση ένωση(α,β) : εκτελούμε κ εύρεση(α) και λ εύρεση(β) θέτουμε ακολουθία ακμών γράφημα {,2} {2,3} {,3} {7,8} {4,6} {4,5} {6,7} {3,6} {5,7} {4,7} πίνακας δέντρο ένωσης-εύρεσης

43 Αλγόριθμοι ένωσης-εύρεσης: γρήγορη ένωση ένωση(α,β) : εκτελούμε κ εύρεση(α) και λ εύρεση(β) θέτουμε ακολουθία ακμών γράφημα {,2} {2,3} {,3} {7,8} {4,6} {4,5} {6,7} {3,6} {5,7} {4,7} πίνακας δέντρο ένωσης-εύρεσης

44 Αλγόριθμοι ένωσης-εύρεσης: γρήγορη ένωση ένωση(α,β) : εκτελούμε κ εύρεση(α) και λ εύρεση(β) θέτουμε ακολουθία ακμών γράφημα {,2} {2,3} {,3} {7,8} {4,6} {4,5} {6,7} {3,6} {5,7} {4,7} πίνακας δέντρο ένωσης-εύρεσης

45 Αλγόριθμοι ένωσης-εύρεσης: γρήγορη ένωση ένωση(α,β) : εκτελούμε κ εύρεση(α) και λ εύρεση(β) θέτουμε ακολουθία ακμών γράφημα {,2} {2,3} {,3} {7,8} {4,6} {4,5} {6,7} {3,6} {5,7} {4,7} πίνακας δέντρο ένωσης-εύρεσης

46 Αλγόριθμοι ένωσης-εύρεσης: γρήγορη ένωση ένωση(α,β) : εκτελούμε κ εύρεση(α) και λ εύρεση(β) θέτουμε ακολουθία ακμών γράφημα {,2} {2,3} {,3} {7,8} {4,6} {4,5} {6,7} {3,6} {5,7} {4,7} πίνακας δέντρο ένωσης-εύρεσης

47 Αλγόριθμοι ένωσης-εύρεσης: γρήγορη ένωση εύρεση(α) : ξεκινώντας από το α ακολουθούμε τους δείκτες μέχρι να βρούμε βρούμε αντικείμενο κ τέτοιο ώστε επιστρέφουμε την τιμή κ. ένωση(α,β) : εκτελούμε κ εύρεση(α) και λ εύρεση(β) θέτουμε Ιδιότητα: Για ν αντικείμενα και μ ν πράξεις ένωσης, ο αλγόριθμος γρήγορης ένωσης μπορεί να χρειαστεί περισσότερες από μν/2 εντολές.

48 Αλγόριθμοι ένωσης-εύρεσης: γρήγορη ένωση εύρεση(α) : ξεκινώντας από το α ακολουθούμε τους δείκτες μέχρι να βρούμε βρούμε αντικείμενο κ τέτοιο ώστε επιστρέφουμε την τιμή κ. ένωση(α,β) : εκτελούμε κ εύρεση(α) και λ εύρεση(β) θέτουμε Ιδιότητα: Για ν αντικείμενα και μ ν πράξεις ένωσης, ο αλγόριθμος γρήγορης ένωσης μπορεί να χρειαστεί περισσότερες από μν/2 εντολές. Απόδειξη: Η ακολουθία ένωση(v-,ν), 7 8

49 Αλγόριθμοι ένωσης-εύρεσης: γρήγορη ένωση εύρεση(α) : ξεκινώντας από το α ακολουθούμε τους δείκτες μέχρι να βρούμε βρούμε αντικείμενο κ τέτοιο ώστε επιστρέφουμε την τιμή κ. ένωση(α,β) : εκτελούμε κ εύρεση(α) και λ εύρεση(β) θέτουμε Ιδιότητα: Για ν αντικείμενα και μ ν πράξεις ένωσης, ο αλγόριθμος γρήγορης ένωσης μπορεί να χρειαστεί περισσότερες από μν/2 εντολές. Απόδειξη: Η ακολουθία ένωση(v-,ν), ένωση(v-2,ν), 6 7 8

50 Αλγόριθμοι ένωσης-εύρεσης: γρήγορη ένωση εύρεση(α) : ξεκινώντας από το α ακολουθούμε τους δείκτες μέχρι να βρούμε βρούμε αντικείμενο κ τέτοιο ώστε επιστρέφουμε την τιμή κ. ένωση(α,β) : εκτελούμε κ εύρεση(α) και λ εύρεση(β) θέτουμε Ιδιότητα: Για ν αντικείμενα και μ ν πράξεις ένωσης, ο αλγόριθμος γρήγορης ένωσης μπορεί να χρειαστεί περισσότερες από μν/2 εντολές. Απόδειξη: Η ακολουθία ένωση(v-,ν), ένωση(v-2,ν), ένωση(v-3,ν)

51 Αλγόριθμοι ένωσης-εύρεσης: γρήγορη ένωση εύρεση(α) : ξεκινώντας από το α ακολουθούμε τους δείκτες μέχρι να βρούμε βρούμε αντικείμενο κ τέτοιο ώστε επιστρέφουμε την τιμή κ. ένωση(α,β) : εκτελούμε κ εύρεση(α) και λ εύρεση(β) θέτουμε Ιδιότητα: Για ν αντικείμενα και μ ν πράξεις ένωσης, ο αλγόριθμος γρήγορης ένωσης μπορεί να χρειαστεί περισσότερες από μν/2 εντολές. Απόδειξη: Η ακολουθία ένωση(v-,ν), ένωση(v-2,ν), ένωση(v-3,ν),, ένωση(,ν)

52 Αλγόριθμοι ένωσης-εύρεσης: γρήγορη ένωση εύρεση(α) : ξεκινώντας από το α ακολουθούμε τους δείκτες μέχρι να βρούμε βρούμε αντικείμενο κ τέτοιο ώστε επιστρέφουμε την τιμή κ. ένωση(α,β) : εκτελούμε κ εύρεση(α) και λ εύρεση(β) θέτουμε Ιδιότητα: Για ν αντικείμενα και μ ν πράξεις ένωσης, ο αλγόριθμος γρήγορης ένωσης μπορεί να χρειαστεί περισσότερες από μν/2 εντολές. Απόδειξη: Η ακολουθία ένωση(v-,ν), ένωση(v-2,ν), ένωση(v-3,ν),, ένωση(,ν) διατρέχει δείκτες (από το v προς τη ρίζα)

53 Αλγόριθμοι ένωσης-εύρεσης: γρήγορη ένωση εύρεση(α) : ξεκινώντας από το α ακολουθούμε τους δείκτες μέχρι να βρούμε βρούμε αντικείμενο κ τέτοιο ώστε επιστρέφουμε την τιμή κ. ένωση(α,β) : εκτελούμε κ εύρεση(α) και λ εύρεση(β) θέτουμε Ιδιότητα: Για ν αντικείμενα και μ ν πράξεις ένωσης, ο αλγόριθμος γρήγορης ένωσης μπορεί να χρειαστεί περισσότερες από μν/2 εντολές. Απόδειξη: Η ακολουθία ένωση(v-,ν), ένωση(v-2,ν), ένωση(v-3,ν),, ένωση(,ν) διατρέχει δείκτες (από το v προς τη ρίζα) Για μ ακόμα πράξεις του τύπου ένωση(ν,κ), έχουμε να διατρέξουμε Συνολικά έχουμε δείκτες τουλάχιστον.

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

55 η βελτίωση: σταθμισμένη γρήγορη ένωση ένωση(α,β) : εκτελούμε κ εύρεση(α) και λ εύρεση(β) Αν μέγεθος(κ) μέγεθος(λ), θέτουμε Διαφορετικά, θέτουμε γράφημα πίνακας δέντρο ένωσης-εύρεσης

56 η βελτίωση: σταθμισμένη γρήγορη ένωση ένωση(α,β) : εκτελούμε κ εύρεση(α) και λ εύρεση(β) Αν μέγεθος(κ) μέγεθος(λ), θέτουμε Διαφορετικά, θέτουμε γράφημα πίνακας δέντρο ένωσης-εύρεσης μέγεθος()=3 μέγεθος(4)=5 8

57 η βελτίωση: σταθμισμένη γρήγορη ένωση ένωση(α,β) : εκτελούμε κ εύρεση(α) και λ εύρεση(β) Αν μέγεθος(κ) μέγεθος(λ), θέτουμε Διαφορετικά, θέτουμε γράφημα πίνακας δέντρο ένωσης-εύρεσης

58 η βελτίωση: σταθμισμένη γρήγορη ένωση ένωση(α,β) : εκτελούμε κ εύρεση(α) και λ εύρεση(β) Αν μέγεθος(κ) μέγεθος(λ), θέτουμε Διαφορετικά, θέτουμε Ας θεωρήσουμε την ακολουθία ένωση(,2), ένωση(3,4), ένωση(5,6), ένωση(7,8)

59 η βελτίωση: σταθμισμένη γρήγορη ένωση ένωση(α,β) : εκτελούμε κ εύρεση(α) και λ εύρεση(β) Αν μέγεθος(κ) μέγεθος(λ), θέτουμε Διαφορετικά, θέτουμε Ας θεωρήσουμε την ακολουθία ένωση(,2), ένωση(3,4), ένωση(5,6), ένωση(7,8) ένωση(,3), ένωση(5,7)

60 η βελτίωση: σταθμισμένη γρήγορη ένωση ένωση(α,β) : εκτελούμε κ εύρεση(α) και λ εύρεση(β) Αν μέγεθος(κ) μέγεθος(λ), θέτουμε Διαφορετικά, θέτουμε Ας θεωρήσουμε την ακολουθία ένωση(,2), ένωση(3,4), ένωση(5,6), ένωση(7,8) ένωση(,3), ένωση(5,7) ένωση(,5)

61 η βελτίωση: σταθμισμένη γρήγορη ένωση ένωση(α,β) : εκτελούμε κ εύρεση(α) και λ εύρεση(β) Αν μέγεθος(κ) μέγεθος(λ), θέτουμε Διαφορετικά, θέτουμε Ομοίως, για ένωση(9,0), ένωση(,2), ένωση(3,4), ένωση(5,6) ένωση(9,), ένωση(3,5) ένωση(9,3)

62 η βελτίωση: σταθμισμένη γρήγορη ένωση ένωση(α,β) : εκτελούμε κ εύρεση(α) και λ εύρεση(β) Αν μέγεθος(κ) μέγεθος(λ), θέτουμε Διαφορετικά, θέτουμε ένωση(,9)

63 η βελτίωση: σταθμισμένη γρήγορη ένωση ένωση(α,β) : εκτελούμε κ εύρεση(α) και λ εύρεση(β) Αν μέγεθος(κ) μέγεθος(λ), θέτουμε Διαφορετικά, θέτουμε ο μέγιστος αριθμός των δεικτών μέχρι τη ρίζα είναι

64 η βελτίωση: σταθμισμένη γρήγορη ένωση ένωση(α,β) : εκτελούμε κ εύρεση(α) και λ εύρεση(β) Αν μέγεθος(κ) μέγεθος(λ), θέτουμε Διαφορετικά, θέτουμε Ιδιότητα: Για ν αντικείμενα, ο αλγόριθμος σταθμισμένης γρήγορης ένωσης δημιουργεί δέντρα με ύψος το πολύ

65 η βελτίωση: σταθμισμένη γρήγορη ένωση ένωση(α,β) : εκτελούμε κ εύρεση(α) και λ εύρεση(β) Αν μέγεθος(κ) μέγεθος(λ), θέτουμε Διαφορετικά, θέτουμε Ιδιότητα: Για ν αντικείμενα, ο αλγόριθμος σταθμισμένης γρήγορης ένωσης δημιουργεί δέντρα με ύψος το πολύ Απόδειξη: Με επαγωγή. Για v=2 είναι προφανές ότι ισχύει. Έστω ότι μια πράξη ένωσης συνδυάζει σύνολα Α και Β με μέγεθος A B Ο αριθμός των δεικτών έως τη ρίζα του δέντρου για τα στοιχεία του A είναι

66 2 η βελτίωση: συμπίεση διαδρομής εύρεση(α) : ξεκινώντας από το α ακολουθούμε τους δείκτες μέχρι να βρούμε βρούμε τη ρίζα κ του δέντρου. Για κάθε αντικείμενο χ που συναντούμε, θέτουμε Τέλος επιστρέφουμε την τιμή κ.

67 2 η βελτίωση: συμπίεση διαδρομής εύρεση(α) : ξεκινώντας από το α ακολουθούμε τους δείκτες μέχρι να βρούμε βρούμε τη ρίζα κ του δέντρου. Για κάθε αντικείμενο χ που συναντούμε, θέτουμε Τέλος επιστρέφουμε την τιμή κ εύρεση(6) Ο χρόνος εκτέλεσης για οποιαδήποτε ακολουθία μ ν πράξεων εύρεσηςένωσης με ν αντικείμενα είναι σχεδόν γραμμική συνάρτηση των μ, v.

68 2 η βελτίωση: συμπίεση διαδρομής εύρεση(α) : ξεκινώντας από το α ακολουθούμε τους δείκτες μέχρι να βρούμε βρούμε τη ρίζα κ του δέντρου. Για κάθε αντικείμενο χ που συναντούμε, θέτουμε Τέλος επιστρέφουμε την τιμή κ εύρεση(6) Ο χρόνος εκτέλεσης για οποιαδήποτε ακολουθία μ ν πράξεων εύρεσηςένωσης με ν αντικείμενα είναι σχεδόν γραμμική συνάρτηση των μ, v. Χρόνος εκτέλεσης :, όπου η αντίστροφη συνάρτηση Ackerman

69 Συνάρτηση Ackerman Η συνάρτηση Ackerman ορίζεται ως εξής Η συνάρτηση είναι αντίστροφη της αυξάνει με πάρα πολύ αργό ρυθμό! Π.χ. για

70 2 η βελτίωση: συμπίεση διαδρομής εύρεση(α) : ξεκινώντας από το α ακολουθούμε τους δείκτες μέχρι να βρούμε βρούμε τη ρίζα κ του δέντρου. Για κάθε αντικείμενο χ που συναντούμε, θέτουμε Τέλος επιστρέφουμε την τιμή κ. Ο χρόνος εκτέλεσης για οποιαδήποτε ακολουθία μ ν πράξεων εύρεσηςένωσης με ν αντικείμενα είναι σχεδόν γραμμική συνάρτηση των μ, v. Χρόνος εκτέλεσης :, όπου η αντίστροφη συνάρτηση Ackerman Μια εντολή εύρεσης ή ένωση μπορεί να πάρει στη χειρότερη περίπτωση, ωστόσο χρόνο ακόμα και στη χειρότερη δυνατή ακολουθία μια λειτουργία εύρεσης ή ένωσης παίρνει χρόνο κατά μέσο όρο

71 2 η βελτίωση: συμπίεση διαδρομής εύρεση(α) : ξεκινώντας από το α ακολουθούμε τους δείκτες μέχρι να βρούμε βρούμε τη ρίζα κ του δέντρου. Για κάθε αντικείμενο χ που συναντούμε, θέτουμε Τέλος επιστρέφουμε την τιμή κ. Ο χρόνος εκτέλεσης για οποιαδήποτε ακολουθία μ ν πράξεων εύρεσηςένωσης με ν αντικείμενα είναι σχεδόν γραμμική συνάρτηση των μ, v. Χρόνος εκτέλεσης :, όπου η αντίστροφη συνάρτηση Ackerman Μια εντολή εύρεσης ή ένωση μπορεί να πάρει στη χειρότερη περίπτωση, ωστόσο χρόνο ακόμα και στη χειρότερη δυνατή ακολουθία μια λειτουργία εύρεσης ή ένωσης παίρνει χρόνο κατά μέσο όρο Αντισταθμιστική Ανάλυση

ΠΛΕ075: Προηγμένη Σχεδίαση Αλγορίθμων και Δομών Δεδομένων. Λουκάς Γεωργιάδης

ΠΛΕ075: Προηγμένη Σχεδίαση Αλγορίθμων και Δομών Δεδομένων. Λουκάς Γεωργιάδης ΠΛΕ075: Προηγμένη Σχεδίαση Αλγορίθμων και Δομών Δεδομένων Λουκάς Γεωργιάδης loukas@cs.uoi.gr www.cs.uoi.gr/~loukas Βασικές έννοιες και εφαρμογές Αλγόριθμος: Μέθοδος για την επίλυση ενός προβλήματος Δομή

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

Κοντινότεροι Κοινοί Πρόγονοι

Κοντινότεροι Κοινοί Πρόγονοι Κοντινότεροι Κοινοί Πρόγονοι Μας δίνεται ένα δένδρο Τ με ρίζα και μια λίστα Λ από ζεύγη κόμβων. Θέλουμε να υπολογίσουμε τον κκπ(x,y) για κάθε ζεύγος κόμβων {x,y} της Λ. α β γ Λ = { {ι,ξ}, {τ,θ}, {ο,μ},

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

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

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

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

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

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

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

Δοµές Δεδοµένων. 2η Διάλεξη Αλγόριθµοι Ένωσης-Εύρεσης (Union-Find) Ε. Μαρκάκης. Βασίζεται στις διαφάνειες των R. Sedgewick K.

Δοµές Δεδοµένων. 2η Διάλεξη Αλγόριθµοι Ένωσης-Εύρεσης (Union-Find) Ε. Μαρκάκης. Βασίζεται στις διαφάνειες των R. Sedgewick K. Δοµές Δεδοµένων 2η Διάλεξη Αλγόριθµοι Ένωσης-Εύρεσης (Union-Find) Ε. Μαρκάκης Βασίζεται στις διαφάνειες των R. Sedgewick K. Wayne Περίληψη Συνδετικότητα δικτύου Αφαιρέσεις Συνδεδεµένα συστατικά Αφηρηµένη

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

Ανάλυση αλγορίθμων. Χρόνος εκτέλεσης: Αναμενόμενη περίπτωση. - απαιτεί γνώση της κατανομής εισόδου

Ανάλυση αλγορίθμων. Χρόνος εκτέλεσης: Αναμενόμενη περίπτωση. - απαιτεί γνώση της κατανομής εισόδου Ανάλυση αλγορίθμων Παράμετροι απόδοσης ενός αλγόριθμου: Χρόνος εκτέλεσης Απαιτούμενοι πόροι, π.χ. μνήμη, επικοινωνία (π.χ. σε κατανεμημένα συστήματα) Προσπάθεια υλοποίησης Ανάλυση της απόδοσης Θεωρητική

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

ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ. Αλγόριθµοι Ένωσης-Εύρεσης (Union-Find) Κεφάλαιο 1. Ε. Μαρκάκης Επικ. Καθηγητής

ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ. Αλγόριθµοι Ένωσης-Εύρεσης (Union-Find) Κεφάλαιο 1. Ε. Μαρκάκης Επικ. Καθηγητής ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ Αλγόριθµοι Ένωσης-Εύρεσης (Union-Find) Κεφάλαιο 1 Ε. Μαρκάκης Επικ. Καθηγητής Περίληψη Συνδετικότητα δικτύου Αφαιρέσεις (abstractions) Αφηρηµένη ένωση-εύρεση 1. Γρήγορη εύρεση 2. Γρήγορη

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

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

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

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

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

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

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

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

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

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

Ενότητα 9 Ξένα Σύνολα που υποστηρίζουν τη λειτουργία της Ένωσης (Union-Find)

Ενότητα 9 Ξένα Σύνολα που υποστηρίζουν τη λειτουργία της Ένωσης (Union-Find) Ενότητα 9 Ξένα Σύνολα που υποστηρίζουν τη (Union-Find) ΗΥ240 - Παναγιώτα Φατούρου 1 Ξένα Σύνολα που υποστηρίζουν τη λειτουργία της Ένωσης Έστω ότι S 1,, S k είναι ξένα υποσύνολα ενός συνόλου U, δηλαδή

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

Γραμμικός Προγραμματισμός

Γραμμικός Προγραμματισμός Μια εταιρεία παράγει κέικ δύο κατηγοριών, απλά και πολυτελείας: Ένα απλό κέικ αποδίδει κέρδος 1 ευρώ. Ένα κέικ πολυτελείας αποδίδει κέρδος 6 ευρώ. Η καθημερινή ζήτηση του απλού κέικ είναι 200. Η καθημερινή

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

1 (6) 9 (6) 2 (3) 10 (9) 3 (6) 11 (6) 4 (8) 12 (6) 5 (6) 13 (8) 6 (5) 14 (6) 7 (6) 15 (11) 8 (8)

1 (6) 9 (6) 2 (3) 10 (9) 3 (6) 11 (6) 4 (8) 12 (6) 5 (6) 13 (8) 6 (5) 14 (6) 7 (6) 15 (11) 8 (8) Πανεπιστήμιο Κύπρου Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών ΗΜΥ 311: Διακριτη Αναλυση και Δομες Χειμερινό Εξάμηνο 2015-2016 Καθηγητής: Χριστόφορος Χατζηκωστής Τελική Εξέταση Τρίτη, 22 Δεκεμβρίου,

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

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

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

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

Αντισταθμιστική ανάλυση

Αντισταθμιστική ανάλυση Αντισταθμιστική ανάλυση Θεωρήστε έναν αλγόριθμο Α που χρησιμοποιεί μια δομή δεδομένων Δ : Κατά τη διάρκεια εκτέλεσης του Α η Δ πραγματοποιεί μία ακολουθία από πράξεις. Παράδειγμα: Θυμηθείτε το πρόβλημα

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

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

ΕΠΛ 211: Θεωρία Υπολογισμού και Πολυπλοκότητας. Διάλεξη 2: Μαθηματικό Υπόβαθρο ΕΠΛ 211: Θεωρία Υπολογισμού και Πολυπλοκότητας Διάλεξη 2: Μαθηματικό Υπόβαθρο Τι θα κάνουμε σήμερα Συναρτήσεις & Σχέσεις (0.2.3) Γράφοι (Γραφήματα) (0.2.4) Λέξεις και Γλώσσες (0.2.5) Αποδείξεις (0.3) 1

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

Τομές Γραφήματος. Γράφημα (μη κατευθυνόμενο) Συνάρτηση βάρους ακμών. Τομή : Διαμέριση του συνόλου των κόμβων σε δύο μη κενά σύνολα

Τομές Γραφήματος. Γράφημα (μη κατευθυνόμενο) Συνάρτηση βάρους ακμών. Τομή : Διαμέριση του συνόλου των κόμβων σε δύο μη κενά σύνολα Τομές Γραφήματος Γράφημα (μη κατευθυνόμενο) Συνάρτηση βάρους ακμών Τομή : Διαμέριση του συνόλου των κόμβων σε δύο μη κενά σύνολα και 12 26 20 10 9 7 17 14 4 Τομές Γραφήματος Γράφημα (μη κατευθυνόμενο)

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

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

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

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

Πρόβληµα (ADT) Λεξικού. Αλγόριθµοι & Πολυπλοκότητα (Χειµώνας 2011) Λεξικό, Union - Find 2

Πρόβληµα (ADT) Λεξικού. Αλγόριθµοι & Πολυπλοκότητα (Χειµώνας 2011) Λεξικό, Union - Find 2 Πρόβληµα (ADT) Λεξικού Αλγόριθµοι & Πολυπλοκότητα (Χειµώνας 2011) Λεξικό, Union - Find 2 Πρόβληµα (ADT) Λεξικού Δυναµικά µεταβαλλόµενη συλλογή αντικειµένων που αναγνωρίζονται µε κλειδί (π.χ. κατάλογοι,

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

Union Find, Λεξικό. Δημήτρης Φωτάκης. Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών. Εθνικό Μετσόβιο Πολυτεχνείο

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

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

Τύποι Δεδομένων και Απλές Δομές Δεδομένων. Παύλος Εφραιμίδης V1.0 ( )

Τύποι Δεδομένων και Απλές Δομές Δεδομένων. Παύλος Εφραιμίδης V1.0 ( ) Τύποι Δεδομένων και Απλές Δομές Δεδομένων Παύλος Εφραιμίδης V1.0 (2014-01-13) Απλές Δομές Δεδομένων Στην ενότητα αυτή θα γνωρίσουμε ορισμένες απλές Δομές Δεδομένων και θα τις χρησιμοποιήσουμε για την αποδοτική

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

Ενότητα 9 Ξένα Σύνολα που υποστηρίζουν τη λειτουργία της Ένωσης (Union-Find)

Ενότητα 9 Ξένα Σύνολα που υποστηρίζουν τη λειτουργία της Ένωσης (Union-Find) Ενότητα 9 (Union-Find) ΗΥ240 - Παναγιώτα Φατούρου 1 Έστω ότι S 1,, S k είναι ξένα υποσύνολα ενός συνόλου U, δηλαδή ισχύει ότι S i S j =, για κάθε i,j µε i j και S 1 S k = U. Λειτουργίες q MakeSet(X): επιστρέφει

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

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

Ελάχιστο Γεννητικό Δένδρο. Παράδειγμα - Αλγόριθμος Prim. Γιατί δουλεύουν αυτοί οι αλγόριθμοι; Άπληστοι Αλγόριθμοι ΙΙI Αλγόριθμοι γραφημάτων Ελάχιστο Γεννητικό Δένδρο Παράδειγμα Κατασκευή δικτύων Οδικά, επικοινωνίας Έχουμε ένα συνεκτικό γράφημα (V,E) και ένας βάρος we σε κάθε ακμή e. Να βρεθεί υποσύνολο

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

HY118-Διακριτά Μαθηματικά. Θεωρία γράφων / γραφήματα. Τι έχουμε δει μέχρι τώρα. Υπογράφημα. 24 -Γράφοι

HY118-Διακριτά Μαθηματικά. Θεωρία γράφων / γραφήματα. Τι έχουμε δει μέχρι τώρα. Υπογράφημα. 24 -Γράφοι HY118-Διακριτά Μαθηματικά Θεωρία γράφων / γραφήματα Πέμπτη, 11/05/2017 Αντώνης Α. Αργυρός e-mail: argyros@csd.uoc.gr 11-May-17 1 1 11-May-17 2 2 Τι έχουμε δει μέχρι τώρα Κατευθυνόμενοι μη κατευθυνόμενοι

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

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

Δυναμικός προγραμματισμός για δέντρα ΘΕ5 Ιδιότητες Δέντρων και Αναδρομή για Δέντρα Δυναμικός προγραμματισμός για δέντρα Έστω ότι, για k=1,..., m, το γράφημα Γ k = (V k, E k ) είναι δέντρο. Έστω w V 1... V m, z k V k, για k=1,..., m. Συμβολίζουμε

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

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

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

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

HY118-Διακριτά Μαθηματικά. Θεωρία γράφων/ γραφήματα. Τι έχουμε δει μέχρι τώρα. Ισομορφισμός γράφων: Μία σχέση ισοδυναμίας μεταξύ γράφων.

HY118-Διακριτά Μαθηματικά. Θεωρία γράφων/ γραφήματα. Τι έχουμε δει μέχρι τώρα. Ισομορφισμός γράφων: Μία σχέση ισοδυναμίας μεταξύ γράφων. HY118-Διακριτά Μαθηματικά Θεωρία γράφων/ γραφήματα Τρίτη, 15/05/2018 Αντώνης Α. Αργυρός e-mail: argyros@csd.uoc.gr 16-May-18 1 1 16-May-18 2 2 Τι έχουμε δει μέχρι τώρα Κατευθυνόμενοι μη κατευθυνόμενοι

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

Κατηγορίες Συμπίεσης. Συμπίεση με απώλειες δεδομένων (lossy compression) π.χ. συμπίεση εικόνας και ήχου

Κατηγορίες Συμπίεσης. Συμπίεση με απώλειες δεδομένων (lossy compression) π.χ. συμπίεση εικόνας και ήχου Συμπίεση Η συμπίεση δεδομένων ελαττώνει το μέγεθος ενός αρχείου : Εξοικονόμηση αποθηκευτικού χώρου Εξοικονόμηση χρόνου μετάδοσης Τα περισσότερα αρχεία έχουν πλεονασμό στα δεδομένα τους Είναι σημαντική

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

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

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

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

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

Θεωρία Υπολογισμού και Πολυπλοκότητα Μαθηματικό Υπόβαθρο Θεωρία Υπολογισμού και Πολυπλοκότητα Μαθηματικό Υπόβαθρο Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Σύνολα Συναρτήσεις και Σχέσεις Γραφήματα Λέξεις και Γλώσσες Αποδείξεις ΕΠΛ 211 Θεωρία

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

Αλγόριθμοι Ταξινόμησης Μέρος 2

Αλγόριθμοι Ταξινόμησης Μέρος 2 Αλγόριθμοι Ταξινόμησης Μέρος 2 Μανόλης Κουμπαράκης 1 Προχωρημένοι Αλγόριθμοι Ταξινόμησης Στη συνέχεια θα παρουσιάσουμε τρείς προχωρημένους αλγόριθμους ταξινόμησης: treesort, quicksort και mergesort. 2

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

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

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

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

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

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

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

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

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

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

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

u v 4 w G 2 G 1 u v w x y z 4 Διάλεξη :.0.06 Θεωρία Γραφημάτων Γραφέας: Σ. Κ. Διδάσκων: Σταύρος Κολλιόπουλος. Εισαγωγικοί ορισμοί Ορισμός. Γράφημα G καλείται ένα ζεύγος G = (V, E) όπου V είναι το σύνολο των κορυφών (ή κόμβων) και E

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

HY118-Διακριτά Μαθηματικά

HY118-Διακριτά Μαθηματικά HY118-Διακριτά Μαθηματικά Πέμπτη, 11/05/2017 Αντώνης Α. Αργυρός e-mail: argyros@csd.uoc.gr 11-May-17 1 1 Θεωρία γράφων / γραφήματα 11-May-17 2 2 Τι έχουμε δει μέχρι τώρα Κατευθυνόμενοι μη κατευθυνόμενοι

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

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

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

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

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

Λεξικό, Union Find. ημήτρης Φωτάκης. Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών. Εθνικό Μετσόβιο Πολυτεχνείο Λεξικό, Union Find ημήτρης Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Άδεια Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons.

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

Διάλεξη 4: Απόδειξη: Για την κατεύθυνση, παρατηρούμε ότι διαγράφοντας μια κορυφή δεν μπορούμε να διαχωρίσουμε τα u και v. Αποδεικνύουμε

Διάλεξη 4: Απόδειξη: Για την κατεύθυνση, παρατηρούμε ότι διαγράφοντας μια κορυφή δεν μπορούμε να διαχωρίσουμε τα u και v. Αποδεικνύουμε Διάλεξη 4: 20.10.2016 Θεωρία Γραφημάτων Γραφέας: Σ. Κ. Διδάσκων: Σταύρος Κολλιόπουλος 4.1 2-συνεκτικά γραφήματα (συνέχεια) Πρόταση 4.1 Δύο μπλοκ ενός γραφήματος G μοιράζονται το πολύ μία κορυφή. Απόδειξη:

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

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

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

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

ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ. Δοµές Δεδοµένων

ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ. Δοµές Δεδοµένων ΟΝΟΜΑΤΕΠΩΝΥΜΟ: ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ AM: Δοµές Δεδοµένων Εξεταστική Ιανουαρίου 2014 Διδάσκων : Ευάγγελος Μαρκάκης 20.01.2014 ΥΠΟΓΡΑΦΗ ΕΠΟΠΤΗ: Διάρκεια εξέτασης : 2 ώρες και

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

HY118- ιακριτά Μαθηµατικά. Θεωρία γράφων / γραφήµατα. Τι έχουµε δει µέχρι τώρα. Υπογράφηµα Γράφοι

HY118- ιακριτά Μαθηµατικά. Θεωρία γράφων / γραφήµατα. Τι έχουµε δει µέχρι τώρα. Υπογράφηµα Γράφοι HY118- ιακριτά Μαθηµατικά Θεωρία γράφων / γραφήµατα Πέµπτη, 19/05/2016 Αντώνης Α. Αργυρός e-mail: argyros@csd.uoc.gr 5/22/2016 1 1 5/22/2016 2 2 Τι έχουµε δει µέχρι τώρα Κατευθυνόµενοι µη κατευθυνόµενοι

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

x (a 1 + a 2 ) mod 9, y (a 1 a 2 ) mod 9.

x (a 1 + a 2 ) mod 9, y (a 1 a 2 ) mod 9. Πανεπιστήμιο Κύπρου Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών ΗΜΥ 311: Διακριτη Αναλυση και Δομες Χειμερινό Εξάμηνο 2017-2018 Καθηγητής: Χριστόφορος Χατζηκωστής Τελική Εξέταση Πέμπτη, 14 Δεκεμβρίου,

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

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

Δομές Δεδομένων & Αλγόριθμοι - Πίνακες 1 Πίνακες Οι πίνακες έχουν σταθερό μέγεθος και τύπο δεδομένων. Βασικά πλεονεκτήματά τους είναι η απλότητα προγραμματισμού τους και η ταχύτητα. Ωστόσο δεν παρέχουν την ευελιξία η οποία απαιτείται

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

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

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

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

Δομές δεδομένων. Ενότητα 8: Ξένα Σύνολα που υποστηρίζουν τη λειτουργία της Ένωσης (Union-Find) Παναγιώτα Φατούρου Τμήμα Επιστήμης Υπολογιστών

Δομές δεδομένων. Ενότητα 8: Ξένα Σύνολα που υποστηρίζουν τη λειτουργία της Ένωσης (Union-Find) Παναγιώτα Φατούρου Τμήμα Επιστήμης Υπολογιστών ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ Δομές δεδομένων Ενότητα 8: Ξένα Σύνολα που υποστηρίζουν τη λειτουργία της Ένωσης (Union-Find) Παναγιώτα Φατούρου Τμήμα Επιστήμης Υπολογιστών Ενότητα 8 Ξένα Σύνολα

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

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

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

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

f(x) = και στην συνέχεια

f(x) = και στην συνέχεια ΕΡΩΤΗΣΕΙΣ ΜΑΘΗΤΩΝ Ερώτηση. Στις συναρτήσεις μπορούμε να μετασχηματίσουμε πρώτα τον τύπο τους και μετά να βρίσκουμε το πεδίο ορισμού τους; Όχι. Το πεδίο ορισμού της συνάρτησης το βρίσκουμε πριν μετασχηματίσουμε

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

Εισαγωγή στην C. Μορφή Προγράµµατος σε γλώσσα C

Εισαγωγή στην C. Μορφή Προγράµµατος σε γλώσσα C Εισαγωγή στην C Μορφή Προγράµµατος σε γλώσσα C Τµήµα Α Με την εντολή include συµπεριλαµβάνω στο πρόγραµµα τα πρότυπα των συναρτήσεων εισόδου/εξόδου της C.Το αρχείο κεφαλίδας stdio.h είναι ένας κατάλογος

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

Initialize each person to be free. while (some man is free and hasn't proposed to every woman) { Choose such a man m w = 1 st woman on m's list to

Initialize each person to be free. while (some man is free and hasn't proposed to every woman) { Choose such a man m w = 1 st woman on m's list to Κεφάλαιο 2 Δοµές Δεδοµένων Ι Χρησιµοποιήθηκε υλικό από τις αγγλικές διαφάνειες του Kevin Wayne. 1 Δοµές Δεδοµένων Ι Στην ενότητα αυτή θα γνωρίσουµε ορισµένες Δοµές Δεδοµένων και θα τις χρησιµοποιήσουµε

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

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

Θεωρία Γραφημάτων και Εφαρμογές - Διακριτά Μαθηματικά ΙΙ Φεβρουάριος 2017 Θεωρία Γραφημάτων και Εφαρμογές - Διακριτά Μαθηματικά ΙΙ Φεβρουάριος 2017 ΕΓΘΑ : Σ. Κοσμαδάκης, «Εισαγωγή στα Γραφήματα, Θεωρία-Ασκήσεις». Α 1 Έστω η παρακάτω σχέση Q(k) πάνω στο σύνολο {1, 2} όπου k τυχαίος

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

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

ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ. Βασικές Ιδιότητες και Διάσχιση Κεφάλαιο 5 ( και ) Ε. Μαρκάκης Επίκουρος Καθηγητής ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ Βασικές Ιδιότητες και Διάσχιση Κεφάλαιο 5 (5.1-5.2 και 5.4-5.6) Ε. Μαρκάκης Επίκουρος Καθηγητής Περίληψη Δέντρα Βασικοί ορισµοί Μαθηµατικές ιδιότητες Διάσχιση δέντρων Preorder, postorder,

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

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

E(G) 2(k 1) = 2k 3. Διάλεξη :..06 Θεωρία Γραφημάτων Διδάσκων: Σταύρος Κολλιόπουλος Γραφέας: Τζαλάκας Ανδρέας & Σ.Κ.. Εξωεπίπεδα γραφήματα (συνέχεια) Ορισμός. Εστω γράφημα G = (V, E) και S V. S-λοβός (S-lobe) ενάγεται από

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

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

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

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

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

Επαγωγή και αναδρομή για άκυκλα συνεκτικά γραφήματα ΘΕ4 Αναδρομή και Επαγωγή για Γραφήματα Επαγωγή και αναδρομή για άκυκλα συνεκτικά γραφήματα Επαγωγή για άκυκλα συνεκτικά γραφήματα (με αφαίρεση κορυφής) Η αρχή της επαγωγής, με αφαίρεση κορυφής, για δεδομένη

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

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

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

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

ΕΝΟΤΗΤΑ 9 ΕΝΩΣΗ ΞΕΝΩΝ ΣΥΝΟΛΩΝ ( ΟΜΕΣ UNION-FIND)

ΕΝΟΤΗΤΑ 9 ΕΝΩΣΗ ΞΕΝΩΝ ΣΥΝΟΛΩΝ ( ΟΜΕΣ UNION-FIND) ΕΝΟΤΗΤΑ 9 ΕΝΩΣΗ ΞΕΝΩΝ ΣΥΝΟΛΩΝ ( ΟΜΕΣ UNION-FIND) Ένωση Ξένων Συνόλων (Disjoint Sets with Union) S 1,, S k : ξένα υποσύνολα ενός συνόλου U δηλ., S i S j =, αν i j, και S 1 S k = U. Λειτουργίες που θέλουµε

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

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

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

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

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

Εισαγωγικές Έννοιες. ημήτρης Φωτάκης. Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών. Εθνικό Μετσόβιο Πολυτεχνείο Εισαγωγικές Έννοιες ημήτρης Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Άδεια Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons.

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

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

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

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

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

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

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

Διάλεξη 2η: Αλγόριθμοι και Προγράμματα

Διάλεξη 2η: Αλγόριθμοι και Προγράμματα Διάλεξη 2η: Αλγόριθμοι και Προγράμματα Τμήμα Επιστήμης Υπολογιστών, Πανεπιστήμιο Κρήτης Εισαγωγή στην Επιστήμη Υπολογιστών Βασίζεται σε διαφάνειες του Κ Παναγιωτάκη Πρατικάκης (CSD) Αλγόριθμοι και Προγράμματα

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

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

Επίλυση Προβληµάτων µε Greedy Αλγόριθµους Επίλυση Προβληµάτων µε Greedy Αλγόριθµους Περίληψη Επίλυση προβληµάτων χρησιµοποιώντας Greedy Αλγόριθµους Ελάχιστα Δέντρα Επικάλυψης Αλγόριθµος του Prim Αλγόριθµος του Kruskal Πρόβληµα Ελάχιστης Απόστασης

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

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

Δομές Δεδομένων και Αλγόριθμοι Δομές Δεδομένων και Αλγόριθμοι Χρήστος Γκόγκος ΤΕΙ Ηπείρου, Τμήμα Μηχανικών Πληροφορικής ΤΕ Χειμερινό Εξάμηνο 2014-2015 (Παρουσίαση 5) 1 / 17 Απόδοση προγραμμάτων Συχνά χρειάζεται να εκτιμηθεί η απόδοση

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

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

z 1 E(G) 2(k 1) = 2k 3. x z 2 H 1 H 2 Διάλεξη :..06 Θεωρία Γραφημάτων Διδάσκων: Σταύρος Κολλιόπουλος Γραφέας: Τζαλάκας Ανδρέας & Σ.Κ.. Εξωεπίπεδα γραφήματα (συνέχεια) Ορισμός. Εστω γράφημα G = (V, E) και S V. S-λοβός (S-lobe) ενάγεται από

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

Σχέσεις. Διμελής Σχέση. ΣτοΊδιοΣύνολο. Αναπαράσταση

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

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

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

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

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

Βασικές Έννοιες Δοµών Δεδοµένων

Βασικές Έννοιες Δοµών Δεδοµένων Δοµές Δεδοµένων Δοµές Δεδοµένων Στην ενότητα αυτή θα γνωρίσουµε ορισµένες Δοµές Δεδοµένων και θα τις χρησιµοποιήσουµε για την αποδοτική επίλυση του προβλήµατος του ευσταθούς ταιριάσµατος Βασικές Έννοιες

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

Φροντιστήριο #8 Ασκήσεις σε Γράφους 16/5/2017

Φροντιστήριο #8 Ασκήσεις σε Γράφους 16/5/2017 Φροντιστήριο #8 Ασκήσεις σε Γράφους 16/5/2017 Άσκηση 8.1: Στο παρακάτω σχήμα φαίνονται δέκα λατινικοί χαρακτήρες (A, F, K, M, R, S, T, V, X και Z) με τη μορφή γράφων. Ποιοι από αυτούς είναι ισομορφικοί;

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

Εισαγωγή στους Αλγόριθµους. Αλγόριθµοι. Ιστορικά Στοιχεία. Ο πρώτος Αλγόριθµος. Παραδείγµατα Αλγορίθµων. Τι είναι Αλγόριθµος

Εισαγωγή στους Αλγόριθµους. Αλγόριθµοι. Ιστορικά Στοιχεία. Ο πρώτος Αλγόριθµος. Παραδείγµατα Αλγορίθµων. Τι είναι Αλγόριθµος Εισαγωγή στους Αλγόριθµους Αλγόριθµοι Τι είναι αλγόριθµος; Τι µπορεί να υπολογίσει ένας αλγόριθµος; Πως αξιολογείται ένας αλγόριθµος; Παύλος Εφραιµίδης pefraimi@ee.duth.gr Αλγόριθµοι Εισαγωγικές Έννοιες

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

w S n lim (n 1)! = x(x + q)(x + q + q 2 ) (x + q + q q n 1 ),

w S n lim (n 1)! = x(x + q)(x + q + q 2 ) (x + q + q q n 1 ), Ασκήσεις #1 1. Εστω a(n, k) το πλήθος των υποσυνόλων του {1, 2,..., n} με k στοιχεία τα οποία δεν περιέχουν διαδοχικούς ακεραίους. (α) Δείξτε ότι το a(n, k) είναι ίσο με το πλήθος των συνθέσεων (r 0, r

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

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

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

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

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

Πανεπιστήμιο Δυτικής Μακεδονίας. Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών. Διακριτά Μαθηματικά. Ενότητα 7: Σχέσεις και Συναρτήσεις Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Διακριτά Μαθηματικά Ενότητα 7: Σχέσεις και Συναρτήσεις Αν. Καθηγητής Κ. Στεργίου e-mail: kstergiou@uowm.gr Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών

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

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

Σημειωματάριο Τετάρτης 29 Νοε. 2017 Σημειωματάριο Τετάρτης 29 Νοε. 2017 Γραφήματα (γράφοι), η αναπαράστασή τους στον υπολογιστή και μερικά προβλήματα σε αυτά Είδαμε σήμερα λίγα πράγματα για γραφήματα (ή γράφους). Γράφημα είναι, στην απλούστερή

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

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

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

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

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

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ & ΥΠΟΛΟΓΙΣΤΙΚΗ ΦΥΣΙΚΗ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ & ΥΠΟΛΟΓΙΣΤΙΚΗ ΦΥΣΙΚΗ Μέρος 5ο ΝΙΚΟΛΑΟΣ ΣΤΕΡΓΙΟΥΛΑΣ ΤΜΗΜΑ ΦΥΣΙΚΗΣ ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ 1 Η ΕΝΤΟΛΗ for Με την εντολή for δημιουργούμε βρόχους επανάληψης σε

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

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

Αλγόριθμοι και Πολυπλοκότητα Αλγόριθμοι και Πολυπλοκότητα Ροή Δικτύου Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Μοντελοποίηση Δικτύων Μεταφοράς Τα γραφήματα χρησιμοποιούνται συχνά για την μοντελοποίηση

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

d k 10 k + d k 1 10 k d d = k i=0 d i 10 i.

d k 10 k + d k 1 10 k d d = k i=0 d i 10 i. Διακριτά Μαθηματικά ΙΙ Χρήστος Νομικός Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων 2018 Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά και Πληροφορικής Μαθηματικά Πανεπιστήμιο ΙΙ Ιωαννίνων

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

(a 1, b 1 ) (a 2, b 2 ) = (a 1 a 2, b 1 b 2 ).

(a 1, b 1 ) (a 2, b 2 ) = (a 1 a 2, b 1 b 2 ). ΕΜ0 - Διακριτά Μαθηματικά Ιανουαρίου 006 Άσκηση - Λύσεις Πρόβλημα [0 μονάδες] Εστω L και L δύο κυκλώματα σε ένα γράφημα G. Εστω a μία ακμή που ανήκει και στο L και στο L και έστω b μία ακμή που ανήκει

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

Δοµές Δεδοµένων. 11η Διάλεξη Ταξινόµηση Quicksort και Ιδιότητες Δέντρων. Ε. Μαρκάκης

Δοµές Δεδοµένων. 11η Διάλεξη Ταξινόµηση Quicksort και Ιδιότητες Δέντρων. Ε. Μαρκάκης Δοµές Δεδοµένων 11η Διάλεξη Ταξινόµηση Quicksort και Ιδιότητες Δέντρων Ε. Μαρκάκης Περίληψη Quicksort Χαρακτηριστικά επιδόσεων Μη αναδροµική υλοποίηση Δέντρα Μαθηµατικές ιδιότητες Δοµές Δεδοµένων 11-2

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

Αναδρομικοί Αλγόριθμοι

Αναδρομικοί Αλγόριθμοι Αναδρομικός αλγόριθμος (recursive algorithm) Επιλύει ένα πρόβλημα λύνοντας ένα ή περισσότερα στιγμιότυπα του ίδιου προβλήματος. Αναδρομικός αλγόριθμος (recursive algorithm) Επιλύει ένα πρόβλημα λύνοντας

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

ΔΕΙΓΜΑ ΠΡΙΝ ΤΙΣ ΔΙΟΡΘΩΣΕΙΣ - ΕΚΔΟΣΕΙΣ ΚΡΙΤΙΚΗ

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

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

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

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

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

Διάλεξη 4: Θεωρία Γραφημάτων Γραφέας: Σ. Κ. Διδάσκων: Σταύρος Κολλιόπουλος συνεκτικά γραφήματα (συνέχεια) Πρόταση 4.1 Δύο μπλοκ ενός

Διάλεξη 4: Θεωρία Γραφημάτων Γραφέας: Σ. Κ. Διδάσκων: Σταύρος Κολλιόπουλος συνεκτικά γραφήματα (συνέχεια) Πρόταση 4.1 Δύο μπλοκ ενός Διάλεξη 4: 20.10.2016 Θεωρία Γραφημάτων Γραφέας: Σ. Κ. Διδάσκων: Σταύρος Κολλιόπουλος 4.1 2-συνεκτικά γραφήματα (συνέχεια) Πρόταση 4.1 Δύο μπλοκ ενός γραφήματος G μοιράζονται το πολύ μία κορυφή. Απόδειξη:

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

Γ7.5 Αλγόριθμοι Αναζήτησης. Γ Λυκείου Κατεύθυνσης

Γ7.5 Αλγόριθμοι Αναζήτησης. Γ Λυκείου Κατεύθυνσης Γ7.5 Αλγόριθμοι Αναζήτησης Γ Λυκείου Κατεύθυνσης Εισαγωγή Αλγόριθμος αναζήτησης θεωρείται ένας αλγόριθμος, ο οποίος προσπαθεί να εντοπίσει ένα στοιχείο με συγκεκριμένες ιδιότητες, μέσα σε μία συλλογή από

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

Σημειωματάριο Δευτέρας 4 Δεκ. 2017

Σημειωματάριο Δευτέρας 4 Δεκ. 2017 Σημειωματάριο Δευτέρας 4 Δεκ. 2017 Ο αλγόριθμος Floyd-Warshall για την έυρεση όλων των αποστάσεων σε ένα γράφημα με βάρη στις ακμές Συνεχίσαμε σήμερα το θέμα της προηγούμενης Τετάρτης. Έχουμε ένα γράφημα

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

Παράδειγμα 8. Να βρείτε την τιμή της παράστασης:

Παράδειγμα 8. Να βρείτε την τιμή της παράστασης: Μιγαδικοί αριθμοί Σελ 10 ΜΕΘΟΔΟΛΟΓΙΑ 104 Ασκήσεις με παραστάσεις της μορφής συγκεκριμένοι μιγαδικοί z 1 z με z 1,z i Εξετάζουμε μήπως οι μιγαδικοί συνδέονται με σχέση της μορφής z i 1 z ii Αντικάθιστούμε

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

Προγραμματισμός Ι (ΗΥ120)

Προγραμματισμός Ι (ΗΥ120) Προγραμματισμός Ι (ΗΥ120) Διάλεξη 20: Δυαδικό Δέντρο Αναζήτησης Δυαδικό δέντρο Κάθε κόμβος «γονέας» περιέχει δύο δείκτες που δείχνουν σε δύο κόμβους «παιδιά» του ιδίου τύπου. Αν οι δείκτες προς αυτούς

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

Δυαδικά Δέντρα Αναζήτησης (Binary Search Trees) Ορισμός : Ένα δυαδικό δέντρο αναζήτησης t είναι ένα δυαδικό δέντρο, το οποίο είτε είναι κενό είτε:

Δυαδικά Δέντρα Αναζήτησης (Binary Search Trees) Ορισμός : Ένα δυαδικό δέντρο αναζήτησης t είναι ένα δυαδικό δέντρο, το οποίο είτε είναι κενό είτε: Δυαδικά Δέντρα Αναζήτησης (Binary Search Trees) Ορισμός : Ένα δυαδικό δέντρο αναζήτησης t είναι ένα δυαδικό δέντρο, το οποίο είτε είναι κενό είτε: (i) όλα τα περιεχόμενα στο αριστερό υποδέντρο του t είναι

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

Φροντιστήριο #9 Ασκήσεις σε Γράφους 18/5/2018

Φροντιστήριο #9 Ασκήσεις σε Γράφους 18/5/2018 Φροντιστήριο #9 Ασκήσεις σε Γράφους 18/5/2018 Άσκηση 9.1: Στο παρακάτω σχήμα φαίνονται δέκα λατινικοί χαρακτήρες (A, F, K, M, R, S, T, V, X και Z) με τη μορφή γράφων. Ποιοι από αυτούς είναι ισομορφικοί;

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

Δυναμικός Κατακερματισμός. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

Δυναμικός Κατακερματισμός. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Δυναμικός Κατακερματισμός Βάσεις Δεδομένων 2017-2018 1 Κατακερματισμός Πρόβλημα στατικού κατακερματισμού: Έστω Μ κάδους και r εγγραφές ανά κάδο - το πολύ Μ * r εγγραφές (αλλιώς μεγάλες αλυσίδες υπερχείλισης)

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

Ουρά Προτεραιότητας (priority queue)

Ουρά Προτεραιότητας (priority queue) Ουρά Προτεραιότητας (priority queue) Δομή δεδομένων που υποστηρίζει τις ακόλουθες λειτουργίες PQinsert : εισαγωγή στοιχείου PQdelmax : επιστροφή του στοιχείου με το μεγαλύτερο* κλειδί και διαγραφή του

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

ΟιβασικέςπράξειςπουορίζουντονΑΤΔ δυαδικό δέντρο αναζήτησης είναι οι ακόλουθες:

ΟιβασικέςπράξειςπουορίζουντονΑΤΔ δυαδικό δέντρο αναζήτησης είναι οι ακόλουθες: Δυαδικά Δέντρα Αναζήτησης (Binary Search Trees) Ορισμός : Ένα δυαδικό δέντρο αναζήτησης t είναι ένα δυαδικό δέντρο, το οποίο είτε είναι κενό είτε: (i) όλα τα περιεχόμενα στο αριστερό υποδέντρο του t είναι

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ. ΑΣΚΗΣΗ 4 Σωροί, Γράφοι

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ. ΑΣΚΗΣΗ 4 Σωροί, Γράφοι ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΠΛ 231: Δομές Δεδομένων και Αλγόριθμοι Εαρινό Εξάμηνο 2013 ΑΣΚΗΣΗ 4 Σωροί, Γράφοι Διδάσκων Καθηγητής: Παναγιώτης Ανδρέου Ημερομηνία Υποβολής: 05/04/2013 Ημερομηνία

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

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

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

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

Μη κατευθυνόµενα γραφήµατα. Στοιχεία Θεωρίας Γραφηµάτων (1) Υπογραφήµατα.

Μη κατευθυνόµενα γραφήµατα. Στοιχεία Θεωρίας Γραφηµάτων (1) Υπογραφήµατα. Κατευθυνόµενα γραφήµατα Απλό κατευθυνόµενο Γράφηµα G είναι διατεταγµένο Ϲεύγος (V, E), µε: Στοιχεία Θεωρίας Γραφηµάτων (1) σύνολο κορυφών / κόµβων V, Ορέστης Τελέλης tllis@unipi.r Τµήµα Ψηφιακών Συστηµάτων,

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

Αναζήτηση και ταξινόμηση

Αναζήτηση και ταξινόμηση Αναζήτηση και ταξινόμηση Περιεχόμενα Αναζήτηση (searching): εύρεση ενός στοιχείου σε έναν πίνακα Ταξινόμηση (sorting): αναδιάταξη των στοιχείων ενός πίνακα ώστε να είναι τοποθετημένα με μια καθορισμένη

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

Ουρά Προτεραιότητας (priority queue)

Ουρά Προτεραιότητας (priority queue) Ουρά Προτεραιότητας (priority queue) Δομή δεδομένων που υποστηρίζει δύο βασικές λειτουργίες : Εισαγωγή στοιχείου με δεδομένο κλειδί. Επιστροφή ενός στοιχείου με μέγιστο (ή ελάχιστο) κλειδί και διαγραφή

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

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

Πανεπιστήμιο Δυτικής Μακεδονίας. Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών. Διακριτά Μαθηματικά. Ενότητα 2: Γραφήματα Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Διακριτά Μαθηματικά Ενότητα 2: Γραφήματα Αν. Καθηγητής Κ. Στεργίου e-mail: kstergiou@uowm.gr Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Άδειες Χρήσης

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

q(g \ S ) = q(g \ S) S + d = S.

q(g \ S ) = q(g \ S) S + d = S. Διάλεξη 9: 9.11.2016 Θεωρία Γραφημάτων Διδάσκων: Σταύρος Κολλιόπουλος Γραφέας: Παναγιωτίδης Αλέξανδρος & Σ. Κ. Θεώρημα 9.1 Εστω γράφημα G = (V, E), υπάρχει τέλειο ταίριασμα στο G αν και μόνο αν για κάθε

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