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

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

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

Transcript

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

2 Περιστροφές x αριστερή περιστροφή από το x y α β y γ δεξιά περιστροφή από το y α x β γ link rotl(link x) { link y = x->r; x->r = y->l; y->l = x; return y; } αριστερή περιστροφή Η περιστροφή παίρνει χρόνο Ο(1) link rotr(link y) { link x = y->l; y->l = x->r; x->r = y; return x; } δεξιά περιστροφή

3 Περιστροφές δεξιά περιστροφή από το

4 Ισορροπημένα Δένδρα Μερικοί τύποι ισορροπημένων δένδρων Τυχαιοποιημένα δένδρα Αρθρωτά δένδρα (splay trees) Δένδρα AVL Κοκκινόμαυρα δένδρα (a,b) δένδρα Όλα τα παραπάνω χρησιμοποιούν περιστροφές για να παραμείνουν ισορροπημένα

5 Κοκκινόμαυρα Δένδρα (red-black trees) Κάθε κόμβος έχει τα ακόλουθα πεδία key : κλειδί color : χρώμα (1 bit) left, right: δείκτες στα παιδιά p : δείκτης στο γονέα (*) (*) δεν είναι απαραίτητος, αλλά απλοποιεί την περιγραφή και υλοποίηση των αλγορίθμων 3 Κάθε κόμβος είναι κόκκινος ή μαύρος Ο ριζικός κόμβος είναι μαύρος Οι καταληκτικοί κόμβοι είναι μαύροι Οι θυγατρικοί κόμβοι ενός κόκκινου κόμβου είναι μαύροι Οι διαδρομές από έναν κόμβο προς τους καταληκτικούς κόμβους-απογόνους του περιέχουν τον ίδιο αριθμό μαύρων κόμβων

6 Κοκκινόμαυρα Δένδρα Υλοποίηση με κόμβο-φρουρό NIL αντί για μηδενικούς (null) δείκτες κενός καταληκτικός κόμβος NIL

7 Κοκκινόμαυρα Δένδρα (red-black trees) Μαύρο ύψος κόμβου x b(x) = πλήθος μαύρων κόμβων εκτός 14 1 του x μέχρι κάποιο καταληκτικό κόμβο (NIL) Κάθε κόμβος είναι κόκκινος ή μαύρος Ο ριζικός κόμβος είναι μαύρος Οι καταληκτικοί κόμβοι είναι μαύροι Οι θυγατρικοί κόμβοι ενός κόκκινου κόμβου είναι μαύροι Οι διαδρομές από έναν κόμβο προς τους καταληκτικούς κόμβους-απογόνους του περιέχουν τον ίδιο αριθμό μαύρων κόμβων

8 Κοκκινόμαυρα Δένδρα (red-black trees) Μαύρο ύψος κόμβου x b(x) = πλήθος μαύρων κόμβων εκτός 14 1 του x μέχρι κάποιο καταληκτικό κόμβο (NIL) Λήμμα Ένα κοκκινόμαυρο δένδρο με n εσωτερικούς κόμβους έχει ύψος το πολύ Κάθε κόμβος είναι κόκκινος ή μαύρος Ο ριζικός κόμβος είναι μαύρος Οι καταληκτικοί κόμβοι είναι μαύροι Οι θυγατρικοί κόμβοι ενός κόκκινου κόμβου είναι μαύροι Οι διαδρομές από έναν κόμβο προς τους καταληκτικούς κόμβους-απογόνους του περιέχουν τον ίδιο αριθμό μαύρων κόμβων

9 Κοκκινόμαυρα Δένδρα Μαύρο ύψος κόμβου x b(x) = πλήθος μαύρων κόμβων εκτός του x μέχρι κάποιο καταληκτικό κόμβο (NIL) Λήμμα Ένα κοκκινόμαυρο δένδρο με n εσωτερικούς κόμβους έχει ύψος το πολύ Απόδειξη Δείχνουμε ότι το υποδένδρο με ρίζα x έχει τουλάχιστον εσωτερικούς κόμβους. Χρησιμοποιούμε επαγωγή ως προς το ύψος. Έστω k το ύψος του x. Βάση επαγωγής: k=0. Τότε ο x είναι φύλλο και επομένως το πλήθος των εσωτερικών κόμβων στο υποδένδρο με ρίζα x είναι 0.

10 Κοκκινόμαυρα Δένδρα Μαύρο ύψος κόμβου x b(x) = πλήθος μαύρων κόμβων εκτός του x μέχρι κάποιο καταληκτικό κόμβο (NIL) Λήμμα Ένα κοκκινόμαυρο δένδρο με n εσωτερικούς κόμβους έχει ύψος το πολύ Απόδειξη Δείχνουμε ότι το υποδένδρο με ρίζα x έχει τουλάχιστον εσωτερικούς κόμβους. Χρησιμοποιούμε επαγωγή ως προς το ύψος. Έστω k το ύψος του x. Επαγωγική υπόθεση: Οποιοδήποτε υπoδένδρο με ρίζα κόμβο y ύψους μικρότερου του k έχει τουλάχιστον εσωτερικούς κόμβους.

11 Κοκκινόμαυρα Δένδρα Μαύρο ύψος κόμβου x b(x) = πλήθος μαύρων κόμβων εκτός του x μέχρι κάποιο καταληκτικό κόμβο (NIL) Λήμμα Ένα κοκκινόμαυρο δένδρο με n εσωτερικούς κόμβους έχει ύψος το πολύ Απόδειξη Δείχνουμε ότι το υποδένδρο με ρίζα x έχει τουλάχιστον εσωτερικούς κόμβους. Χρησιμοποιούμε επαγωγή ως προς το ύψος. Έστω k το ύψος του x. Επαγωγική υπόθεση: Οποιοδήποτε υπoδένδρο με ρίζα κόμβο y ύψους μικρότερου του k έχει τουλάχιστον εσωτερικούς κόμβους. Επαγωγικό βήμα: Έστω y και z τα παιδιά του x. Ισχύει x y z Από την επαγωγική υπόθεση, τo υποδένδρo με ρίζα y έχει εσωτερικούς κόμβους. Ομοίως και για το υποδένδρο με ρίζα το z.

12 Κοκκινόμαυρα Δένδρα Μαύρο ύψος κόμβου x b(x) = πλήθος μαύρων κόμβων εκτός του x μέχρι κάποιο καταληκτικό κόμβο (NIL) Λήμμα Ένα κοκκινόμαυρο δένδρο με n εσωτερικούς κόμβους έχει ύψος το πολύ Απόδειξη Δείχνουμε ότι το υποδένδρο με ρίζα x έχει τουλάχιστον εσωτερικούς κόμβους. Χρησιμοποιούμε επαγωγή ως προς το ύψος. Έστω k το ύψος του x. Επαγωγική υπόθεση: Οποιοδήποτε υπoδένδρο με ρίζα κόμβο y ύψους μικρότερου του k έχει τουλάχιστον εσωτερικούς κόμβους. Επαγωγικό βήμα: Άρα το υπoδένδρο με ρίζα x έχει αριθμό εσωτερικών κόμβων μεγαλύτερο ή ίσο του x y z

13 Κοκκινόμαυρα Δένδρα Μαύρο ύψος κόμβου x b(x) = πλήθος μαύρων κόμβων εκτός του x μέχρι κάποιο καταληκτικό κόμβο (NIL) Λήμμα Ένα κοκκινόμαυρο δένδρο με n εσωτερικούς κόμβους έχει ύψος το πολύ Δείξαμε ότι το υποδένδρο με ρίζα x έχει εσωτερικούς κόμβους. Έστω h το ύψος της ρίζας και b το μαύρο ύψος της ρίζας. Ισχύει και επομένως

14 Εισαγωγή 1. Εκτελούμε τον αλγόριθμο εισαγωγής όπως σε ένα απλό δυαδικό δένδρο. Χρωματίζουμε το νέο κόμβο x κόκκινο.. Εξετάζουμε αν οι ιδιότητες χρωματισμού εξακολουθούν να ισχύουν. Αν ναι τερματίζουμε. 3. Διαφορετικά (ο πατέρας έχει κόκκινο χρώμα και ο παππούς μαύρο) αποκαθιστούμε τις ιδιότητες χρωματισμού χρησιμοποιώντας περιστροφές και αλλαγές χρωμάτων. Η παραπάνω διαδικασία ολοκληρώνεται σε χρόνο

15 Εισαγωγή

16 Εισαγωγή εισαγωγή του 4 Παραβιάζεται στο 5 η συνθήκη: «Οι θυγατρικοί κόμβοι ενός κόκκινου κόμβου είναι μαύροι»

17 Εισαγωγή Αλλαγή χρωμάτων Παραβιάζεται στο 5 η συνθήκη: «Οι θυγατρικοί κόμβοι ενός κόκκινου κόμβου είναι μαύροι»

18 Εισαγωγή Παραβιάζεται στο η συνθήκη: «Οι θυγατρικοί κόμβοι ενός κόκκινου κόμβου είναι μαύροι»

19 Εισαγωγή 11 αριστερή περιστροφή από Παραβιάζεται στο η συνθήκη: «Οι θυγατρικοί κόμβοι ενός κόκκινου κόμβου είναι μαύροι»

20 Εισαγωγή Παραβιάζεται στο 7 η συνθήκη: «Οι θυγατρικοί κόμβοι ενός κόκκινου κόμβου είναι μαύροι»

21 Εισαγωγή δεξιά περιστροφή από 7 και αλλαγή χρωμάτων Παραβιάζεται στο 7 η συνθήκη: «Οι θυγατρικοί κόμβοι ενός κόκκινου κόμβου είναι μαύροι»

22 Εισαγωγή δεξιά περιστροφή από 7 και αλλαγή χρωμάτων Παραβιάζεται στο 7 η συνθήκη: «Οι θυγατρικοί κόμβοι ενός κόκκινου κόμβου είναι μαύροι»

23 Εισαγωγή έγκυρο κοκκινόμαυρο δένδρο

24 Εισαγωγή έγκυρο κοκκινόμαυρο δένδρο Σε κάθε βήμα μεταφέρουμε την παραβίαση κατά ένα επίπεδο πιο πάνω βήματα αποκατάστασης

25 Εισαγωγή Διακρίνουμε περιπτώσεις Για απλότητα, υποθέτουμε ότι ο πατέρας του x είναι αριστερό παιδί του πατέρα του (εργαζόμαστε συμμετρικά εάν είναι δεξί παιδί). Συμβολισμός: υποδένδρο με μαύρο ριζικό κόμβο όλα τα έχουν το ίδιο μαύρο ύψος

26 Εισαγωγή Αποκατάσταση ιδιοτήτων χρωματισμού μετά από εισαγωγή Περίπτωση 1 Ο θείος (κόμβος-αδελφός του πατέρα) του x έχει κόκκινο χρώμα: αλλάζουμε το χρώμα του πατέρα και του θείου σε μαύρο και το χρώμα του παππού σε κόκκινο. Επαναλαμβάνουμε από τον κόμβο-παππού. C C α) A D A D B B Εάν (λόγω συνεχούς εφαρμογής της περίπτωσης 1) φθάσουμε στη ρίζα, την χρωματίζουμε με μαύρο χρώμα και σταματάμε.

27 Εισαγωγή Αποκατάσταση ιδιοτήτων χρωματισμού μετά από εισαγωγή Περίπτωση 1 Ο θείος (κόμβος-αδελφός του πατέρα) του x έχει κόκκινο χρώμα: αλλάζουμε το χρώμα του πατέρα και του θείου σε μαύρο και το χρώμα του παππού σε κόκκινο. Επαναλαμβάνουμε από τον κόμβο-παππού. C C β) Β D Β D Α Α Εάν (λόγω συνεχούς εφαρμογής της περίπτωσης 1) φθάσουμε στη ρίζα, την χρωματίζουμε με μαύρο χρώμα και σταματάμε.

28 Εισαγωγή Αποκατάσταση ιδιοτήτων χρωματισμού μετά από εισαγωγή Περίπτωση Ο θείος έχει μαύρο χρώμα και ο x είναι δεξί παιδί του πατέρα του: ανάγουμε την περίπτωση αυτή στην περίπτωση 3 με την εκτέλεση μιας περιστροφής (x και πατέρας του). A C B περίπτωση αριστερή περιστροφή Α Β C περίπτωση 3

29 Εισαγωγή Αποκατάσταση ιδιοτήτων χρωματισμού μετά από εισαγωγή Περίπτωση 3 Ο θείος έχει μαύρο χρώμα και ο x είναι αριστερό παιδί του πατέρα του. Το χρώμα του πατέρα του x αλλάζει σε μαύρο και του παππού σε κόκκινο και εκτελείται μια δεξιά περιστροφή (x και παππούς του). Τερματίζουμε. A C Α Β C B αριστερή περιστροφή Β C δεξιά περιστροφή και αναχρωμάτιση περίπτωση Α Δεν υπάρχουν πλέον διαδοχικοί κόκκινοι κόμβοι. Η διαδικασία αποκατάστασης έχει ολοκληρωθεί! περίπτωση 3

30 Εισαγωγή Εισαγωγή κατά σειρά των κλειδιών

31 Εισαγωγή Εισαγωγή κατά σειρά των κλειδιών

32 Εισαγωγή Εισαγωγή κατά σειρά των κλειδιών Περίπτωση 3 64

33 Εισαγωγή Εισαγωγή κατά σειρά των κλειδιών

34 Εισαγωγή Εισαγωγή κατά σειρά των κλειδιών Περίπτωση 1

35 Εισαγωγή Εισαγωγή κατά σειρά των κλειδιών Περίπτωση 1 Αλλάζουμε το χρώμα της ρίζας σε μαύρο

36 Εισαγωγή Εισαγωγή κατά σειρά των κλειδιών

37 Εισαγωγή Εισαγωγή κατά σειρά των κλειδιών Περίπτωση 4

38 Εισαγωγή Εισαγωγή κατά σειρά των κλειδιών Περίπτωση 4 Μετά την πρώτη περιστροφή Περίπτωση 3

39 Εισαγωγή Εισαγωγή κατά σειρά των κλειδιών Περίπτωση 4 Μετά την πρώτη περιστροφή Περίπτωση 3 Μετά την αλλαγή χρωμάτων

40 Εισαγωγή Εισαγωγή κατά σειρά των κλειδιών Περίπτωση 64 Μετά την πρώτη περιστροφή Περίπτωση 3 Μετά την αλλαγή χρωμάτων Μετά τη δεύτερη περιστροφή

41 Εισαγωγή Εισαγωγή κατά σειρά των κλειδιών Περίπτωση

42 Εισαγωγή Εισαγωγή κατά σειρά των κλειδιών Περίπτωση

43 Εισαγωγή Εισαγωγή κατά σειρά των κλειδιών Περίπτωση

44 Εισαγωγή Εισαγωγή κατά σειρά των κλειδιών Περίπτωση Μετά την αλλαγή χρωμάτων 5

45 Εισαγωγή Εισαγωγή κατά σειρά των κλειδιών Περίπτωση Μετά την αλλαγή χρωμάτων Μετά την περιστροφή

46 Εισαγωγή Εισαγωγή κατά σειρά των κλειδιών Περίπτωση

47 Εισαγωγή Εισαγωγή κατά σειρά των κλειδιών Περίπτωση

48 Εισαγωγή Εισαγωγή κατά σειρά των κλειδιών Περίπτωση Μετά την πρώτη περιστροφή Περίπτωση 3

49 Εισαγωγή Εισαγωγή κατά σειρά των κλειδιών Περίπτωση Μετά την πρώτη περιστροφή Περίπτωση 3 Μετά την αλλαγή χρωμάτων

50 Εισαγωγή Εισαγωγή κατά σειρά των κλειδιών Περίπτωση Μετά την πρώτη περιστροφή Περίπτωση 3 Μετά την αλλαγή χρωμάτων Μετά τη δεύτερη περιστροφή

51 Εισαγωγή Εισαγωγή κατά σειρά των κλειδιών Περίπτωση

52 Εισαγωγή Εισαγωγή κατά σειρά των κλειδιών Περίπτωση Μετά την αλλαγή χρωμάτων 19

53 Εισαγωγή Εισαγωγή κατά σειρά των κλειδιών Περίπτωση Μετά την αλλαγή χρωμάτων Μετά την περιστροφή

54 Εισαγωγή Εισαγωγή κατά σειρά των κλειδιών Περίπτωση

55 Εισαγωγή Εισαγωγή κατά σειρά των κλειδιών Περίπτωση

56 Εισαγωγή Εισαγωγή κατά σειρά των κλειδιών Περίπτωση Αλλάζουμε το χρώμα της ρίζας σε μαύρο 5

57 Εισαγωγή Εισαγωγή κατά σειρά των κλειδιών

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

59 Διαγραφή Διαγραφή κόμβου σε κοκκινόμαυρο δένδρο Έστω y ο κόμβος που θέλουμε να διαγράψουμε. Εφαρμόζουμε τον αλγόριθμο διαγραφής όπως στο απλό δυαδικό δένδρο αναζήτησης, διαγράφοντας τον κόμβο z όπου: 1) z=y αν o y είναι φύλλο ) z=παιδί του y αν o y έχει μόνο ένα παιδί 3) z=διάδοχος του y αν ο y έχει παιδιά (Στις περιπτώσεις και 3 αντιγράφουμε τα περιεχόμενα του z στον y πριν τη διαγραφή.) Στη συνέχεια, ελέγχουμε εάν ισχύουν οι ιδιότητες χρωματισμού, και εάν όχι, εκτελούμε κατάλληλες ενέργειες.

60 Διαγραφή Διαγραφή κόμβου σε κοκκινόμαυρο δένδρο 1. Ο z είναι κόκκινος ή είναι μαύρος µε κόκκινο παιδί: Δεν υπάρχει πρόβλημα. (Στη δεύτερη περίπτωση το μοναδικό παιδί του z γίνεται μαύρο.). Ο z είναι μαύρος µε μαύρο παιδί: Η διαγραφή του z δημιουργεί (τουλάχιστον) ένα μονοπάτι από τη ρίζα µε μαύρο ύψος μικρότερο κατά ένα. Υποθέτουμε ότι η μονάδα μαύρου χρώματος του z μεταφέρεται στο παιδί του x, το οποίο τώρα γίνεται διπλά μαύρο (που είναι µη επιτρεπτό). Πρέπει να μεταφέρουμε την επιπλέον μονάδα μαύρου χρώματος προς τα επάνω στο δένδρο μέχρι : να φθάσουμε στη ρίζα ή να βρούμε έναν κατάλληλο κόκκινο κόμβο τον οποίο χρωματίζουμε μαύρο και τερματίζουμε ή να εκτελέσουμε κατάλληλες περιστροφές και επαναχρωματισμούς κάποιων κόμβων ώστε να λυθεί το πρόβλημα.

61 Διαγραφή Διαγραφή κόμβου σε κοκκινόμαυρο δένδρο Θεωρούμε ότι το δένδρο υλοποιείται µε κόμβο-φρουρό (όλοι οι μηδενικοί δείκτες δείχνουν στον κόμβο φρουρό)

62 Διαγραφή Αποκατάσταση ιδιοτήτων χρωματισμού μετά από εισαγωγή x = το (διπλά μαύρο) παιδί του κόμβου που διαγράφηκε (μπορεί να είναι ο κόμβος φρουρός) w = ο αδελφός του x (ο w δεν μπορεί να είναι ο κόμβος φρουρός. Γιατί;) p = ο πατέρας του x. Υποθέτουμε ότι ο x είναι αριστερό παιδί του p. Η περίπτωση που ο x είναι δεξιό παιδί του p είναι συμμετρική. Περίπτωση 1 Ο w έχει κόκκινο χρώμα. Αναγόμαστε στην περίπτωση, αλλάζοντας το χρώμα του w σε μαύρο και του p σε κόκκινο και εκτελώντας µια αριστερή περιστροφή γύρω από τον πατέρα του x. B D A D B E C E A νέο C

63 Διαγραφή Αποκατάσταση ιδιοτήτων χρωματισμού μετά από εισαγωγή Περίπτωση Ο w έχει μαύρο χρώμα. α) Και τα δύο παιδιά του w είναι µαύρα. Αλλάζουμε το χρώμα του w σε κόκκινο, του x σε μαύρο (από διπλά μαύρο) και μεταφέρουμε το μαύρο που αφαιρέσαμε από τους w και x στον p. Αν ο p είναι κόκκινος, γίνεται μαύρος και ο αλγόριθμος τερματίζει. Διαφορετικά ο p γίνεται διπλά μαύρος και η διαδικασία επαναλαμβάνεται µε x = p. B B νέο A D A D C E C E

64 Διαγραφή Αποκατάσταση ιδιοτήτων χρωματισμού μετά από εισαγωγή Περίπτωση Ο w έχει μαύρο χρώμα. β) Το w->left είναι κόκκινο και το w->right μαύρο. Αλλάζουμε το χρώμα του w σε κόκκινο και του w>left σε μαύρο και εκτελούμε δεξιά περιστροφή γύρω από τον w Μεταπίπτουμε στην περίπτωση γ. B B A C νέο A D D C E E

65 Διαγραφή Αποκατάσταση ιδιοτήτων χρωματισμού μετά από εισαγωγή Περίπτωση Ο w έχει μαύρο χρώμα. γ) Το w->right είναι κόκκινο. Αλλάζουμε το χρώμα του w->right σε μαύρο, του w σε ό,τι ήταν το χρώμα του p και του p σε μαύρο και εκτελούμε αριστερή περιστροφή γύρω από τον p. Ο αλγόριθμος τερματίζει. B D A D B E C E A C

66 Διαγραφή x = το (διπλά μαύρο) παιδί του κόμβου που διαγράφηκε (μπορεί να είναι ο κόμβος φρουρός) w = ο αδελφός του x p = ο πατέρας του x. Υποθέτουμε ότι ο x είναι αριστερό παιδί του p. Η περίπτωση που ο x είναι δεξιό παιδί του p είναι συμμετρική. Περίπτωση 1 Ο w έχει κόκκινο χρώμα. Αναγόμαστε στην περίπτωση, αλλάζοντας το χρώμα του w σε μαύρο και του p σε κόκκινο και εκτελώντας µια αριστερή περιστροφή γύρω από τον πατέρα του x. Περίπτωση Ο w έχει μαύρο χρώμα. α) Και τα δύο παιδιά του w είναι µαύρα. Αλλάζουμε το χρώμα του w σε κόκκινο, του x σε μαύρο (από διπλά μαύρο) και μεταφέρουμε το μαύρο που αφαιρέσαμε από τους w και x στον p. Αν ο p είναι κόκκινος, γίνεται μαύρος και ο αλγόριθμος τερματίζει. Διαφορετικά ο p γίνεται διπλά μαύρος και η διαδικασία επαναλαμβάνεται µε x = p. β) Το w->left είναι κόκκινο και το w->right μαύρο. Αλλάζουμε το χρώμα του w σε κόκκινο και του w>left σε μαύρο και εκτελούμε δεξιά περιστροφή γύρω από τον w Μεταπίπτουμε στην περίπτωση γ. γ) Το w->right είναι κόκκινο. Αλλάζουμε το χρώμα του w->right σε μαύρο, του w σε ό,τι ήταν το χρώμα του p και του p σε μαύρο και εκτελούμε αριστερή περιστροφή γύρω από τον p. Ο αλγόριθμος τερματίζει. Εάν ο x φθάσει στη ρίζα του δένδρου, αγνοούμε την επιπλέον μονάδα μαύρου χρώματος. Ο αλγόριθμος τερματίζει.

67 Διαγραφή Διαγραφή κατά σειρά των κλειδιών Ο διάδοχος του 1 είναι ο 19. Αντιγράφουμε το 19 στον κόμβο του z

68 Διαγραφή Διαγραφή κατά σειρά των κλειδιών Ο διάδοχος του 1 είναι ο 19. Αντιγράφουμε το 19 στον κόμβο του z

69 Διαγραφή Διαγραφή κατά σειρά των κλειδιών Ο διάδοχος του 1 είναι ο 19. Αντιγράφουμε το 19 στον κόμβο του 1. Διαγράφουμε τον z z

70 Διαγραφή Διαγραφή κατά σειρά των κλειδιών Ο διάδοχος του 1 είναι ο 19. Αντιγράφουμε το 19 στον κόμβο του 1. Διαγράφουμε τον z Περίπτωση β: Ο w γίνεται κόκκινος, ο w->left μαύρος και εκτελούμε δεξιά περιστροφή του w w 90 5

71 Διαγραφή Διαγραφή κατά σειρά των κλειδιών Ο διάδοχος του 1 είναι ο 19. Αντιγράφουμε το 19 στον κόμβο του 1. Διαγράφουμε τον z Περίπτωση β: Ο w γίνεται κόκκινος, ο w->left μαύρος και εκτελούμε δεξιά περιστροφή του w. 5 p 1 5 νέο w 90 Περίπτωση γ: Ο w->right γίνεται μαύρος, ο w κόκκινος και ο p μαύρος και εκτελούμε αριστερή περιστροφή του p. Ο αλγόριθμος τερματίζει. 64

72 Διαγραφή Διαγραφή κατά σειρά των κλειδιών Ο διάδοχος του 1 είναι ο 19. Αντιγράφουμε το 19 στον κόμβο του 1. Διαγράφουμε τον z Περίπτωση β: Ο w γίνεται κόκκινος, ο w->left μαύρος και εκτελούμε δεξιά περιστροφή του w Περίπτωση γ: Ο w->right γίνεται μαύρος, ο w κόκκινος και ο p μαύρος και εκτελούμε αριστερή περιστροφή του p. Ο αλγόριθμος τερματίζει.

73 Διαγραφή Διαγραφή κατά σειρά των κλειδιών Διαγράφουμε τον z z 1 64

74 Διαγραφή Διαγραφή κατά σειρά των κλειδιών Διαγράφουμε τον z. 19 Περίπτωση α: Ο w γίνεται κόκκινος, και ο p μαύρος. 4 5 p w

75 Διαγραφή Διαγραφή κατά σειρά των κλειδιών Διαγράφουμε τον z. 19 Περίπτωση α: Ο w γίνεται κόκκινος, και ο p μαύρος. 4 Ο αλγόριθμος τερματίζει. 5 p w

76 Διαγραφή Διαγραφή κατά σειρά των κλειδιών Διαγράφουμε τον z z 64

77 Διαγραφή Διαγραφή κατά σειρά των κλειδιών Διαγράφουμε τον z. 19 Περίπτωση β: Ο w γίνεται κόκκινος, ο w->right μαύρος και εκτελούμε αριστερή περιστροφή του w. 4 5 w 5 64

78 Διαγραφή Διαγραφή κατά σειρά των κλειδιών Διαγράφουμε τον z. 19 Περίπτωση β: Ο w γίνεται κόκκινος, ο w->right μαύρος και εκτελούμε αριστερή περιστροφή του w. 4 5 νέο w 64 Περίπτωση γ: Ο w->left γίνεται μαύρος, ο w μαύρος και ο p μαύρος και εκτελούμε δεξιά περιστροφή του p. Ο αλγόριθμος τερματίζει. 5

79 Διαγραφή Διαγραφή κατά σειρά των κλειδιών Διαγράφουμε τον z. 19 Περίπτωση β: Ο w γίνεται κόκκινος, ο w->right μαύρος και εκτελούμε αριστερή περιστροφή του w Περίπτωση γ: Ο w->left γίνεται μαύρος, ο w μαύρος και ο p μαύρος και εκτελούμε δεξιά περιστροφή του p. Ο αλγόριθμος τερματίζει.

80 Διαγραφή Διαγραφή κατά σειρά των κλειδιών Ο διάδοχος του 4 είναι ο 5. Αντιγράφουμε το 5 στον κόμβο του z

81 Διαγραφή Διαγραφή κατά σειρά των κλειδιών Ο διάδοχος του 4 είναι ο 5. Αντιγράφουμε το 5 στον κόμβο του z

82 Διαγραφή Διαγραφή κατά σειρά των κλειδιών Ο διάδοχος του 4 είναι ο 5. Αντιγράφουμε το 5 στον κόμβο του 4. Διαγράφουμε τον z z

83 Διαγραφή Διαγραφή κατά σειρά των κλειδιών Ο διάδοχος του 4 είναι ο 5. Αντιγράφουμε το 5 στον κόμβο του 4. Διαγράφουμε τον z. 5 p Περίπτωση α: Ο w γίνεται κόκκινος, και ο p διπλά μαύρος. w 5

84 Διαγραφή Διαγραφή κατά σειρά των κλειδιών Ο διάδοχος του 4 είναι ο 5. Αντιγράφουμε το 5 στον κόμβο του 4. Διαγράφουμε τον z. 5 p Περίπτωση α: Ο w γίνεται κόκκινος, και ο p διπλά μαύρος. w 5

85 Διαγραφή Διαγραφή κατά σειρά των κλειδιών Ο διάδοχος του 4 είναι ο 5. Αντιγράφουμε το 5 στον κόμβο του 4. Διαγράφουμε τον z νέο x p 64 w Περίπτωση α: Ο w γίνεται κόκκινος, και ο p διπλά μαύρος. 5 Περίπτωση α: Ο w γίνεται κόκκινος, και ο p διπλά μαύρος.

86 Διαγραφή Διαγραφή κατά σειρά των κλειδιών Ο διάδοχος του 4 είναι ο 5. Αντιγράφουμε το 5 στον κόμβο του 4. Διαγράφουμε τον z νέο x p 64 w Περίπτωση α: Ο w γίνεται κόκκινος, και ο p διπλά μαύρος. 5 Περίπτωση α: Ο w γίνεται κόκκινος, και ο p διπλά μαύρος.

87 Διαγραφή Διαγραφή κατά σειρά των κλειδιών Ο διάδοχος του 4 είναι ο 5. Αντιγράφουμε το 5 στον κόμβο του 4. Διαγράφουμε τον z νέο x 64 Περίπτωση α: Ο w γίνεται κόκκινος, και ο p διπλά μαύρος. 5 Περίπτωση α: Ο w γίνεται κόκκινος, και ο p διπλά μαύρος. Φθάσαμε στη ρίζα του δένδρου: Αγνοούμε την επιπλέον μονάδα μαύρου χρώματος και ο αλγόριθμος τερματίζει.

88 Διαγραφή Διαγραφή κατά σειρά των κλειδιών Διαγράφουμε τον z z

89 Διαγραφή Διαγραφή κατά σειρά των κλειδιών Διαγράφουμε τον z. 19 Περίπτωση α: Ο w γίνεται κόκκινος, και ο p μαύρος p w 5

90 Διαγραφή Διαγραφή κατά σειρά των κλειδιών Διαγράφουμε τον z. 19 Περίπτωση α: Ο w γίνεται κόκκινος, και ο p μαύρος p Ο αλγόριθμος τερματίζει. w 5

91 Διαγραφή Διαγραφή κατά σειρά των κλειδιών Διαγράφουμε τον z. 19 Ο αλγόριθμος τερματίζει z 5

92 Διαγραφή Διαγραφή κατά σειρά των κλειδιών Διαγράφουμε τον z. 19 Ο αλγόριθμος τερματίζει

93 Διαγραφή Διαγραφή κατά σειρά των κλειδιών Διαγράφουμε τον z z 64 5

94 Διαγραφή Διαγραφή κατά σειρά των κλειδιών Διαγράφουμε τον z. 19 Περίπτωση β: Ο w γίνεται κόκκινος, ο w->left μαύρος και εκτελούμε δεξιά περιστροφή του w w

95 Διαγραφή Διαγραφή κατά σειρά των κλειδιών Διαγράφουμε τον z. 19 p Περίπτωση β: Ο w γίνεται κόκκινος, ο w->left μαύρος και εκτελούμε δεξιά περιστροφή του w. Περίπτωση γ: Ο w->right γίνεται μαύρος, ο w μαύρος και ο p μαύρος και εκτελούμε αριστερή περιστροφή του p. Ο αλγόριθμος τερματίζει. 5 νέο w 64

96 Διαγραφή Διαγραφή κατά σειρά των κλειδιών Διαγράφουμε τον z. Περίπτωση β: Ο w γίνεται κόκκινος, ο w->left μαύρος και εκτελούμε δεξιά περιστροφή του w Περίπτωση γ: Ο w->right γίνεται μαύρος, ο w μαύρος και ο p μαύρος και εκτελούμε αριστερή περιστροφή του p. Ο αλγόριθμος τερματίζει.

97 Διαγραφή Άλλο παράδειγμα: Διαγραφή κατά σειρά των κλειδιών 5 Ο 5 έχει ένα κόκκινο παιδί. Διαγράφουμε τον 5 και κάνουμε τον μαύρο αριστερό παιδί του

98 Διαγραφή Άλλο παράδειγμα: Διαγραφή κατά σειρά των κλειδιών 5 Ο 5 έχει ένα κόκκινο παιδί. Διαγράφουμε τον 5 και κάνουμε τον μαύρο αριστερό παιδί του

99 Διαγραφή Άλλο παράδειγμα: Διαγραφή κατά σειρά των κλειδιών 5 Διαγράφουμε τον z. 19 z 64 5

100 Διαγραφή Άλλο παράδειγμα: Διαγραφή κατά σειρά των κλειδιών 5 Διαγράφουμε τον z. 19 p Περίπτωση 1: Ο w γίνεται μαύρος, ο p κόκκινος και εκτελούμε αριστερή περιστροφή του p w

101 Διαγραφή Άλλο παράδειγμα: Διαγραφή κατά σειρά των κλειδιών 5 Διαγράφουμε τον z. 64 Περίπτωση 1: Ο w γίνεται μαύρος, ο p κόκκινος και εκτελούμε αριστερή περιστροφή του p. p 19 Περίπτωση α: Ο w γίνεται κόκκινος, και ο p μαύρος. 5 νέο w Ο αλγόριθμος τερματίζει.

102 Διαγραφή Άλλο παράδειγμα: Διαγραφή κατά σειρά των κλειδιών 5 Διαγράφουμε τον z. 64 Περίπτωση 1: Ο w γίνεται μαύρος, ο p κόκκινος και εκτελούμε αριστερή περιστροφή του p. Περίπτωση α: Ο w γίνεται κόκκινος, και ο p μαύρος. Ο αλγόριθμος τερματίζει. 19 5

103 Διαγραφή 1. Εκτελούμε τον αλγόριθμο διαγραφής όπως σε ένα απλό δυαδικό δένδρο.. Αν προκύψει διπλά μαύρος κόμβος τότε αποκαθιστούμε τις ιδιότητες του κοκκινόμαυρου δένδρου χρησιμοποιώντας περιστροφές και αλλαγή χρωμάτων. 3. Ολοκληρώνεται σε χρόνο αναχρωματίσεις το πολύ τρεις περιστροφές

Εισαγωγή ενός νέου στοιχείου. Επιλογή i-οστoύ στοιχείου : Εύρεση στοιχείου με το i-οστό μικρότερο κλειδί

Εισαγωγή ενός νέου στοιχείου. Επιλογή i-οστoύ στοιχείου : Εύρεση στοιχείου με το i-οστό μικρότερο κλειδί Δομές Αναζήτησης Χειριζόμαστε ένα σύνολο στοιχείων κλειδί από ολικά διατεταγμένο σύνολο όπου το κάθε στοιχείο έχει ένα Θέλουμε να υποστηρίξουμε δύο βασικές λειτουργίες: Εισαγωγή ενός νέου στοιχείου με

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

h/2. Άρα, n 2 h/2-1 h 2log(n+1). Πως υλοποιούµε τη LookUp()? Πολυπλοκότητα?

h/2. Άρα, n 2 h/2-1 h 2log(n+1). Πως υλοποιούµε τη LookUp()? Πολυπλοκότητα? Κόκκινα-Μαύρα ένδρα (Red-Black Trees) Ένα κόκκινο-µαύρο δένδρο είναι ένα δυαδικό δένδρο αναζήτησης στο οποίο οι κόµβοι µπορούν να χαρακτηρίζονται από ένα εκ των δύο χρωµάτων: µαύρο-κόκκινο. Το χρώµα της

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

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

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

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

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

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

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

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

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

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

ΕΝΟΤΗΤΑ 5 ΥΝΑΜΙΚΑ ΛΕΞΙΚΑ ΙΣΟΖΥΓΙΣΜΕΝΑ ΕΝ ΡΑ

ΕΝΟΤΗΤΑ 5 ΥΝΑΜΙΚΑ ΛΕΞΙΚΑ ΙΣΟΖΥΓΙΣΜΕΝΑ ΕΝ ΡΑ ΕΝΟΤΗΤΑ 5 ΥΝΑΜΙΚΑ ΛΕΞΙΚΑ ΙΣΟΖΥΓΙΣΜΕΝΑ ΕΝ ΡΑ ενδρικές οµές για Υλοποίηση υναµικών Λεξικών υναµικά λεξικά λειτουργίες LookUp( ), Insert( ) και Delete( ) Αναζητούµε δένδρα για την αποτελεσµατική υλοποίηση

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

Δένδρα Αναζήτησης Πολλαπλής Διακλάδωσης

Δένδρα Αναζήτησης Πολλαπλής Διακλάδωσης Δένδρα Αναζήτησης Πολλαπλής Διακλάδωσης Δένδρα στα οποία κάθε κόμβος μπορεί να αποθηκεύει ένα ή περισσότερα κλειδιά. Κόμβος με d διακλαδώσεις : k 1 k 2 k 3 k 4 d-1 διατεταγμένα κλειδιά d διατεταγμένα παιδιά

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

Δομές δεδομένων. Ενότητα 5η: Υλοποίηση Λεξικών με Ισοζυγισμένα Δένδρα Παναγιώτα Φατούρου Τμήμα Επιστήμης Υπολογιστών

Δομές δεδομένων. Ενότητα 5η: Υλοποίηση Λεξικών με Ισοζυγισμένα Δένδρα Παναγιώτα Φατούρου Τμήμα Επιστήμης Υπολογιστών ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ Δομές δεδομένων Ενότητα 5η: Υλοποίηση Λεξικών με Ισοζυγισμένα Δένδρα Παναγιώτα Φατούρου Τμήμα Επιστήμης Υπολογιστών ΕΝΟΤΗΤΑ 5 ΥΛΟΠΟΙΗΣΗ ΛΕΞΙΚΩΝ ΜΕ ΙΣΟΖΥΓΙΣΜΕΝΑ ΔΕΝΔΡΑ

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

9. Κόκκινα-Μαύρα Δέντρα

9. Κόκκινα-Μαύρα Δέντρα Πανεπιστήμιο Πειραιώς Σχολή Τεχνολογιών Πληροφορικής και Επικοινωνιών Τμήμα Ψηφιακών Συστημάτων 9. Κόκκινα-Μαύρα Δέντρα 2 ομές εδομένων 4 5 Χρήστος ουλκερίδης Τμήμα Ψηφιακών Συστημάτων 9/12/2016 Δέντρα,

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

Κεφάλαιο 8 Ισορροπημένα Δένδρα Αναζήτησης

Κεφάλαιο 8 Ισορροπημένα Δένδρα Αναζήτησης Κεφάλαιο 8 Ισορροπημένα Δένδρα Αναζήτησης Περιεχόμενα 8.1 Κατηγορίες ισορροπημένων δένδρων αναζήτησης... 155 8.1.1 Περιστροφές... 156 8.2 Δένδρα AVL... 157 8.2.1 Αποκατάσταση συνθήκης ισορροπίας... 158

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

Δομές Δεδομένων (Εργ.) Ακ. Έτος Διδάσκων: Ευάγγελος Σπύρου. Εργαστήριο 10 Δυαδικά Δένδρα Αναζήτησης

Δομές Δεδομένων (Εργ.) Ακ. Έτος Διδάσκων: Ευάγγελος Σπύρου. Εργαστήριο 10 Δυαδικά Δένδρα Αναζήτησης ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ Δομές Δεδομένων (Εργ.) Ακ. Έτος 2017-18 Διδάσκων: Ευάγγελος Σπύρου Εργαστήριο 10 Δυαδικά Δένδρα Αναζήτησης 1. Στόχος του εργαστηρίου Στόχος του δέκατου εργαστηρίου

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

Red-Black Δέντρα. Red-Black Δέντρα

Red-Black Δέντρα. Red-Black Δέντρα Red-Black Δέντρα v 6 3 8 4 z Red-Black Δέντρα Περίληψη Από τα (2,4) δέντρα στα red-black δέντρα Red-black δέντρο Ορισμός Ύψος Εισαγωγή αναδόμηση επαναχρωματισμός Διαγραφή αναδόμηση επαναχρωματισμός προσαρμογή

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

Διάλεξη 13: Δέντρα ΙΙΙ Ισοζυγισμένα Δέντρα, AVL Δέντρα

Διάλεξη 13: Δέντρα ΙΙΙ Ισοζυγισμένα Δέντρα, AVL Δέντρα Διάλεξη 13: Δέντρα ΙΙΙ Ισοζυγισμένα Δέντρα, AVL Δέντρα Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Ισοζυγισμένα Δέντρα Υλοποίηση AVL δέντρων Εισαγωγή Κόμβων και Περιστροφές σε AVL δέντρα

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

Διάλεξη 13: Δέντρα ΙΙΙ Ισοζυγισμένα Δέντρα, AVL Δέντρα. Διδάσκων: Παναγιώτης Ανδρέου

Διάλεξη 13: Δέντρα ΙΙΙ Ισοζυγισμένα Δέντρα, AVL Δέντρα. Διδάσκων: Παναγιώτης Ανδρέου Διάλεξη 13: Δέντρα ΙΙΙ Ισοζυγισμένα Δέντρα, AVL Δέντρα Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Ισοζυγισμένα Δέντρα Υλοποίηση AVL δέντρων Εισαγωγή Κόμβων και Περιστροφές σε AVL δέντρα

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

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

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

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

Διάλεξη 13: Δέντρα ΙΙΙ - Ισοζυγισμένα Δέντρα, AVL Δέντρα

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

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

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

Διάλεξη 17: Δυαδικά Δέντρα. Διδάσκων: Κωνσταντίνος Κώστα Διαφάνειες: Δημήτρης Ζεϊναλιπούρ Διάλεξη 7: Δυαδικά Δέντρα Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Δυαδικά Δένδρα Δυαδικά Δένδρα Αναζήτησης Πράξεις Εισαγωγής, Εύρεσης Στοιχείου, Διαγραφής Μικρότερου Στοιχείου Διδάσκων:

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

Διαχρονικές δομές δεδομένων

Διαχρονικές δομές δεδομένων Διαχρονικές δομές δεδομένων Μια τυπική δομή δεδομένων μεταβάλλεται με πράξεις εισαγωγής ή διαγραφής Π.χ. κοκκινόμαυρο δένδρο εισαγωγή 0 18 0 5 39 73 1 46 6 80 Αποκατάσταση ισορροπίας 5 39 73 0 46 6 80

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

ΕΝΟΤΗΤΑ 5 ΥΛΟΠΟΙΗΣΗ ΛΕΞΙΚΩΝ ΜΕ ΙΣΟΖΥΓΙΣΜΕΝΑ ΔΕΝΔΡΑ

ΕΝΟΤΗΤΑ 5 ΥΛΟΠΟΙΗΣΗ ΛΕΞΙΚΩΝ ΜΕ ΙΣΟΖΥΓΙΣΜΕΝΑ ΔΕΝΔΡΑ ΕΝΟΤΗΤΑ ΥΛΟΠΟΙΗΣΗ ΛΕΞΙΚΩΝ ΜΕ ΙΣΟΖΥΓΙΣΜΕΝΑ ΔΕΝΔΡΑ ΗΥ24 - Παναγιώτα Φατούρου 1 Ισοζυγισµένα Δένδρα Χρονική Πολυπλοκότητα αναζήτησης σε δοµές που έχουν ήδη διδάχθει: q Στατική Μη-Ταξινοµηµένη Λίστα -> Ο(n),

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

Ισοζυγισμένα υαδικά έντρα Αναζήτησης

Ισοζυγισμένα υαδικά έντρα Αναζήτησης Ισοζυγισμένα υαδικά έντρα Αναζήτησης ομές εδομένων 3ο εξάμηνο ιδάσκων: Χρήστος ουλκερίδης ιαφάνειες προσαρμοσμένες από το υλικό της Μαρίας Χαλκίδη Ισοζυγισμένα υαδικά έντρα Αναζήτησης Ισοζυγισμένα Α είναι

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

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

Διδάσκων: Παναγιώτης Ανδρέου Διάλεξη 23: Ισοζυγισμένα Δέντρα, AVL Δέντρα Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: - Ισοζυγισμένα Δέντρα - Υλοποίηση AVL-δέντρων - Εισαγωγή Κόμβων και Περιστροφές σε AVL δέντρα Διδάσκων:

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

Κατ οίκον Εργασία 3 Σκελετοί Λύσεων

Κατ οίκον Εργασία 3 Σκελετοί Λύσεων Κατ οίκον Εργασία 3 Σκελετοί Λύσεων Άσκηση 1 (α) Έστω Α(n) και Κ(n) ο αριθμός των ακμών και ο αριθμός των κόμβων ενός αυστηρά δυαδικού δένδρου με n φύλλα. Θέλουμε να αποδείξουμε για κάθε n 1 την πρόταση

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

Ενότητες 3 & 4: Δένδρα, Σύνολα & Λεξικά Ασκήσεις και Λύσεις

Ενότητες 3 & 4: Δένδρα, Σύνολα & Λεξικά Ασκήσεις και Λύσεις Ενότητες 3 & 4: Δένδρα, Σύνολα & Λεξικά Ασκήσεις και Λύσεις Άσκηση 1 Γράψτε μία αναδρομική συνάρτηση που θα παίρνει ως παράμετρο ένα δείκτη στη ρίζα ενός δυαδικού δένδρου και θα επιστρέφει το βαθμό του

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

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

Διδάσκων: Παναγιώτης Ανδρέου Διάλεξη 12: Δέντρα ΙΙ -Δυαδικά Δέντρα Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: - Δυαδικά Δένδρα - Δυαδικά Δένδρα Αναζήτησης(ΔΔΑ) - Εύρεση Τυχαίου, Μέγιστου, Μικρότερου στοιχείου - Εισαγωγή

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

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

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

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

ΗΥ240 - Παναγιώτα Φατούρου 2

ΗΥ240 - Παναγιώτα Φατούρου 2 ΕΝΟΤΗΤΑ ΥΛΟΠΟΙΗΣΗ ΛΕΞΙΚΩΝ ΜΕ ΙΣΟΖΥΓΙΣΜΕΝΑ ΕΝ ΡΑ ΗΥ24 - Παναγιώτα Φατούρου 1 Ισοζυγισµένα ένδρα Χρονική Πολυπλοκότητα αναζήτησης σε δοµές που έχουν ήδη διδάχθει: Στατική Μη-Ταξινοµηµένη Λίστα -> Ο(n), όπου

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

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

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

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

Διάλεξη 12: Δέντρα ΙΙ Δυαδικά Δέντρα

Διάλεξη 12: Δέντρα ΙΙ Δυαδικά Δέντρα Διάλεξη 12: Δέντρα ΙΙ Δυαδικά Δέντρα Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Δυαδικά Δένδρα Δυαδικά Δένδρα Αναζήτησης (ΔΔΑ) Εύρεση Τυχαίου, Μέγιστου, Μικρότερου στοιχείου Εισαγωγή στοιχείου

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

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

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

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

ΕΠΛ 231 οµές εδοµένων και Αλγόριθµοι Άννα Φιλίππου,

ΕΠΛ 231 οµές εδοµένων και Αλγόριθµοι Άννα Φιλίππου, AVL- ένδρα Στην ενότητα αυτή θα µελετηθούν τα εξής επιµέρους θέµατα: Υλοποίηση ΑVL-δένδρων Εισαγωγή κόµβων και περιστροφές ΕΠΛ 231 οµές εδοµένων και Αλγόριθµοι Άννα Φιλίππου, 2006 7-1 AVL ένδρα Είναι δυνατό

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

Δομές Δεδομένων. Ενότητα 13: B-Δέντρα/AVL-Δέντρα. Καθηγήτρια Μαρία Σατρατζέμη. Τμήμα Εφαρμοσμένης Πληροφορικής. Δομές Δεδομένων

Δομές Δεδομένων. Ενότητα 13: B-Δέντρα/AVL-Δέντρα. Καθηγήτρια Μαρία Σατρατζέμη. Τμήμα Εφαρμοσμένης Πληροφορικής. Δομές Δεδομένων Ενότητα 13: B-Δέντρα/AVL-Δέντρα Καθηγήτρια Μαρία Σατρατζέμη Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε

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

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

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

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

Ενότητα 7 Ουρές Προτεραιότητας

Ενότητα 7 Ουρές Προτεραιότητας Ενότητα Ουρές Προτεραιότητας ΗΥ4 - Παναγιώτα Φατούρου Ουρές Προτεραιότητας Θεωρούµε ένα χώρο κλειδιών U και έστω ότι µε κάθε κλειδί Κ (τύπου Key) έχει συσχετισθεί κάποια πληροφορία Ι (τύπου Type). Έστω

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

Δοµές Δεδοµένων. 18η Διάλεξη Ισορροπηµένα δέντρα. Ε. Μαρκάκης

Δοµές Δεδοµένων. 18η Διάλεξη Ισορροπηµένα δέντρα. Ε. Μαρκάκης Δοµές Δεδοµένων 18η Διάλεξη Ισορροπηµένα δέντρα Ε. Μαρκάκης Περίληψη Επανάληψη των Τυχαιοποιηµένων ΔΔΑ, Στρεβλών ΔΔΑ, Δέντρων 2-3-4 Δέντρα κόκκινου-µαύρου Λίστες Παράλειψης Χαρακτηριστικά επιδόσεων - συµπεράσµατα

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

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

Δομές Δεδομένων. Δημήτρης Μιχαήλ. Δέντρα Αναζήτησης. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Δομές Δεδομένων Δέντρα Αναζήτησης Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Το πρόβλημα Αναζήτηση Θέλουμε να διατηρήσουμε αντικείμενα με κλειδιά και να μπορούμε εκτός από

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

Κατ οίκον Εργασία 2 Σκελετοί Λύσεων

Κατ οίκον Εργασία 2 Σκελετοί Λύσεων ΕΠΛ 3 Δομές Δεδομένων και Αλγόριθμοι Νοέμβριος 00 Κατ οίκον Εργασία Σκελετοί Λύσεων Άσκηση Έστω ο αριθμός φύλλων που βρίσκονται στο επίπεδο ενός δυαδικού δένδρου. Θέλουμε να αποδείξουμε την πρόταση: Η

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

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

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

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

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

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

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

Εκτενείς Δομές Δεδομένων

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

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

Διδάσκων: Κωνσταντίνος Κώστα

Διδάσκων: Κωνσταντίνος Κώστα Διάλεξη Ε4: Επανάληψη Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Εισαγωγή σε δενδρικές δομές δεδομένων, Δυαδικά Δένδρα Αναζήτησης Ισοζυγισμένα Δένδρα & 2-3 Δένδρα Διδάσκων: Κωνσταντίνος

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

Ενότητα 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): επιστρέφει

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

Red-black δέντρα (Κεφ. 5)

Red-black δέντρα (Κεφ. 5) Red-black δέντρα (Κεφ. ) Δομές Δεδομένων Παπαγιαννόπουλος Δημήτριος 30 Μαρτίου 07 30 Μαρτίου 07 papagianno@ceid.upatras.gr . Εισαγωγή Περιεχόμενα. Ορισμός red-black δέντρων 3. Αναζήτηση σε red-black δέντρα

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

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

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

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

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

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

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

Αλγόριθμοι και πολυπλοκότητα Μελανέρυθρα δεντρα

Αλγόριθμοι και πολυπλοκότητα Μελανέρυθρα δεντρα ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ Αλγόριθμοι και πολυπλοκότητα Μελανέρυθρα δεντρα Ιωάννης Τόλλης Τμήμα Επιστήμης Υπολογιστών Μελανέρυθρα δεντρα v 3 8 z Red-Black Trees 1 Περιγραφή και Διαβασμα Από

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

Red- black δέντρα Εκτενείς Δομές Δεδομένων (Κεφ. 5)

Red- black δέντρα Εκτενείς Δομές Δεδομένων (Κεφ. 5) ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ Η/Υ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΗΣ Red- black δέντρα Εκτενείς Δομές Δεδομένων (Κεφ. ) Δομές Δεδομένων Μπαλτάς Αλέξανδρος 4 Μαρτίου 0 ampaltas@ceid.upatras.gr Περιεχόμενα. Εισαγωγή. Ορισμός red- black

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

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

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

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

Διάλεξη 18: B-Δένδρα

Διάλεξη 18: B-Δένδρα Διάλεξη 18: B-Δένδρα Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Εισαγωγή & Ισοζυγισμένα Δένδρα 2-3 Δένδρα, Περιγραφή Πράξεων της Εισαγωγής και άλλες πράξεις Β-δένδρα Διδάσκων: Κωνσταντίνος

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

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

Δομές Δεδομένων και Αλγόριθμοι Δομές Δεδομένων και Αλγόριθμοι Χρήστος Γκόγκος ΤΕΙ Ηπείρου Χειμερινό Εξάμηνο 2014-2015 Παρουσίαση 16 Δένδρα (Trees) 1 / 42 Δένδρα (Trees) Ένα δένδρο είναι ένα συνδεδεμένο γράφημα χωρίς κύκλους Για κάθε

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

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ Δομές δεδομένων Άσκηση αυτοαξιολόγησης 3-4 Παναγιώτα Φατούρου Τμήμα Επιστήμης Υπολογιστών Ενότητες 3 & 4: ένδρα, Σύνολα & Λεξικά Ασκήσεις και Λύσεις Άσκηση 1 Γράψτε

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

ΕΝΟΤΗΤΑ 5 ΣΥΝΟΛΑ - ΛΕΞΙΚΑ. ΗΥ240 - Παναγιώτα Φατούρου 1

ΕΝΟΤΗΤΑ 5 ΣΥΝΟΛΑ - ΛΕΞΙΚΑ. ΗΥ240 - Παναγιώτα Φατούρου 1 ΕΝΟΤΗΤΑ 5 ΣΥΝΟΛΑ - ΛΕΞΙΚΑ ΗΥ24 - Παναγιώτα Φατούρου 1 Σύνολα (Sets) Τα µέλη ενός συνόλου προέρχονται από κάποιο χώρο U αντικειµένων/στοιχείων (π.χ., σύνολα αριθµών, λέξεων, ζευγών αποτελούµενα από έναν

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

Εκτενείς Δομές Δεδομένων

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

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

αντικειµένων/στοιχείων (π.χ., σύνολα αριθµών, λέξεων, ζευγών

αντικειµένων/στοιχείων (π.χ., σύνολα αριθµών, λέξεων, ζευγών ΕΝΟΤΗΤΑ ΣΥΝΟΛΑ - ΛΕΞΙΚΑ ΗΥ24 - Παναγιώτα Φατούρου 1 Σύνολα (Sets) Τα µέλη ενός συνόλου προέρχονται από κάποιο χώρο U αντικειµένων/στοιχείων (π.χ., σύνολα αριθµών, λέξεων, ζευγών αποτελούµενα από έναν αριθµό

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

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

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

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

Κεφάλαιο 14 Προηγμένες Ουρές Προτεραιότητας

Κεφάλαιο 14 Προηγμένες Ουρές Προτεραιότητας Κεφάλαιο 14 Προηγμένες Ουρές Προτεραιότητας Περιεχόμενα 14.1 Διωνυμικά Δένδρα... 255 14.2 Διωνυμικές Ουρές... 258 14.1.1 Εισαγωγή στοιχείου σε διωνυμική ουρά... 258 14.1.2 Διαγραφή μεγίστου από διωνυμική

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΠΛ 23: οµές εδοµένων και Αλγόριθµοι Ενδιάµεση Εξέταση Ηµεροµηνία : ευτέρα, 3 Νοεµβρίου 2008 ιάρκεια : 2.00-4.00 ιδάσκουσα : Άννα Φιλίππου Ονοµατεπώνυµο: ΣΚΕΛΕΤΟΙ

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

Ενότητα 7 Ουρές Προτεραιότητας

Ενότητα 7 Ουρές Προτεραιότητας Ενότητα 7 Ουρές Προτεραιότητας ΗΥ240 - Παναγιώτα Φατούρου Ουρές Προτεραιότητας Θεωρούµε ένα χώρο κλειδιών U και έστω ότι µε κάθε κλειδί Κ (τύπου Key) έχει συσχετισθεί κάποια πληροφορία Ι (τύπου Type).

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

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

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

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

ΕΠΛ 231 οµές εδοµένων και Αλγόριθµοι Άννα Φιλίππου,

ΕΠΛ 231 οµές εδοµένων και Αλγόριθµοι Άννα Φιλίππου, B- ένδρα Στην ενότητα αυτή θα µελετηθούν τα εξής επιµέρους θέµατα: 2-3 ένδρα, Υλοποίηση και πράξεις Β-δένδρα ΕΠΛ 231 οµές εδοµένων και Αλγόριθµοι Άννα Φιλίππου, 2006 8-1 2-3 ένδρα Γενίκευση των δυαδικών

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

ΕΠΛ 231 Δοµές Δεδοµένων και Αλγόριθµοι 8-1

ΕΠΛ 231 Δοµές Δεδοµένων και Αλγόριθµοι 8-1 B-Δένδρα Στην ενότητα αυτή θα µελετηθούν τα εξής επιµέρους θέµατα: 2-3 Δένδρα, Υλοποίηση και πράξεις Β-δένδρα ΕΠΛ 231 Δοµές Δεδοµένων και Αλγόριθµοι 8-1 2-3 Δένδρα Γενίκευση των δυαδικών δένδρων αναζήτησης.

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

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

Διάλεξη 14: Δέντρα IV B Δένδρα. Διδάσκων: Παναγιώτης Ανδρέου Διάλεξη 14: Δέντρα IV B Δένδρα Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: 2 3 Δένδρα, Εισαγωγή και άλλες πράξεις Άλλα Δέντρα: Β δένδρα, Β+ δέντρα, R δέντρα Διδάσκων: Παναγιώτης Ανδρέου ΕΠΛ231

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

Π(n) : 1 + a + + a n = αν+1 1

Π(n) : 1 + a + + a n = αν+1 1 Διακριτά Μαθηματικά [Rosen, κεφ. 5] Γιάννης Εμίρης Τμήμα Πληροφορικής & Τηλεπικοινωνιών, ΕΚΠΑ Νοέμβριος 2017 Επαγωγή και Αναδρομή [Rosen, κεφ. 5] Μαθηματική επαγωγή [Rosen 5.1] Μέθοδος απόδειξης μιας μαθηματικής

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

Θεωρία Υπολογισμού και Πολυπλοκότητα Ασυμφραστικές Γλώσσες (3)

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

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

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

Παράδειγμα δομικής επαγωγής Ορισμός δομικής επαγωγής Συμβολοσειρές Γλώσσες Δυαδικά δένδρα Μαθηματικά Πληροφορικής 3ο Μάθημα Αρχικός συγγραφέας: Ηλίας Μαθηματικά Πληροφορικής 3ο Μάθημα Αρχικός συγγραφέας: Ηλίας Κουτσουπιάς Τροποποιήσεις: Σταύρος Κολλιόπουλος Τμήμα Πληροφορικής και Τηλεπικοινωνιών Πανεπιστήμιο Αθηνών Δομική επαγωγή Η ιδέα της μαθηματικής

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

ΛΥΣΗ ΤΗΣ ΔΕΥΤΕΡΗΣ ΑΣΚΗΣΗΣ Όλγα Γκουντούνα

ΛΥΣΗ ΤΗΣ ΔΕΥΤΕΡΗΣ ΑΣΚΗΣΗΣ Όλγα Γκουντούνα ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΜΑΘΗΜΑ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ΑΚΑΔ. ΕΤΟΣ 2011-12 ΔΙΔΑΣΚΟΝΤΕΣ Ιωάννης Βασιλείου Καθηγητής Τιμολέων Σελλής Καθηγητής Άσκηση 1

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

Π(n) : 1 + a + + a n = an+1 1 a 1. a 1. + a k+1 = ak+2 1

Π(n) : 1 + a + + a n = an+1 1 a 1. a 1. + a k+1 = ak+2 1 Διακριτά Μαθηματικά [Rosen, κεφ. 5] Γιάννης Εμίρης Τμήμα Πληροφορικής & Τηλεπικοινωνιών, ΕΚΠΑ Νοέμβριος 2018 Επαγωγή και Αναδρομή [Rosen, κεφ. 5] Μαθηματική επαγωγή [Rosen 5.1] Μέθοδος απόδειξης μιας μαθηματικής

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

έντρα ομές εδομένων 3ο εξάμηνο ιδάσκων: Χρήστος ουλκερίδης ιαφάνειες προσαρμοσμένες από το υλικό της Μαρίας Χαλκίδη

έντρα ομές εδομένων 3ο εξάμηνο ιδάσκων: Χρήστος ουλκερίδης ιαφάνειες προσαρμοσμένες από το υλικό της Μαρίας Χαλκίδη έντρα 2-3-4 ομές εδομένων 3ο εξάμηνο ιδάσκων: Χρήστος ουλκερίδης ιαφάνειες προσαρμοσμένες από το υλικό της Μαρίας Χαλκίδη Σημερινό Μάθημα 2-3-4 έντρα Ισοζυγισμένα δέντρα αναζήτησης έντρα αναζήτησης πολλαπλών

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

Δυναμική Διατήρηση Γραμμικής Διάταξης

Δυναμική Διατήρηση Γραμμικής Διάταξης Διατηρεί μια γραμμική διάταξη δυναμικά μεταβαλλόμενης συλλογής στοιχείων. Υποστηρίζει τις λειτουργίες: Εισαγωγή νέου στοιχείου y αμέσως μετά από το στοιχείο x. x y Διαγραφή στοιχείου y. y Έλεγχος της σειράς

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

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

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

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

ΕΠΛ 211: Θεωρία Υπολογισμού και Πολυπλοκότητας. Διάλεξη 11: Μη Ασυμφραστικές Γλώσσες

ΕΠΛ 211: Θεωρία Υπολογισμού και Πολυπλοκότητας. Διάλεξη 11: Μη Ασυμφραστικές Γλώσσες ΕΠΛ 211: Θεωρία Υπολογισμού και Πολυπλοκότητας Διάλεξη 11: Μη Ασυμφραστικές Γλώσσες Τι θα κάνουμε σήμερα Εισαγωγικά (2.3) Το Λήμμα της Άντλησης για ασυμφραστικές γλώσσες (2.3.1) Παραδείγματα 1 Πότε μια

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

Δυαδικά Δένδρα Αναζήτησης, Δένδρα AVL

Δυαδικά Δένδρα Αναζήτησης, Δένδρα AVL Δυαδικά Δένδρα Αναζήτησης, Δένδρα AVL Υλικό από τις σηµειώσεις Ν. Παπασπύρου, 2006 Δέντρα δυαδικής αναζήτησης Δενδρικές δοµές δεδοµένων στις οποίες Όλα τα στοιχεία στο αριστερό υποδέντρο της ρίζας είναι

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

Παράδειγμα δομικής επαγωγής Ορισμός δομικής επαγωγής Συμβολοσειρές Γλώσσες Δυαδικά δένδρα Μαθηματικά Πληροφορικής 3ο Μάθημα Τμήμα Πληροφορικής και Τηλ

Παράδειγμα δομικής επαγωγής Ορισμός δομικής επαγωγής Συμβολοσειρές Γλώσσες Δυαδικά δένδρα Μαθηματικά Πληροφορικής 3ο Μάθημα Τμήμα Πληροφορικής και Τηλ Μαθηματικά Πληροφορικής 3ο Μάθημα Τμήμα Πληροφορικής και Τηλεπικοινωνιών Πανεπιστήμιο Αθηνών Δομική επαγωγή Η ιδέα της μαθηματικής επαγωγής μπορεί να επεκταθεί και σε άλλες δομές εκτός από το σύνολο N

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

13/5/2015 ΟΥΡΕΣ ΠΡΟΤΕΡΑΙΟΤΗΤΑΣ. Δομές Δεδομένων. Ουρές Προτεραιότητας

13/5/2015 ΟΥΡΕΣ ΠΡΟΤΕΡΑΙΟΤΗΤΑΣ. Δομές Δεδομένων. Ουρές Προτεραιότητας ΟΥΡΕΣ ΠΡΟΤΕΡΑΙΟΤΗΤΑΣ Δομές Δεδομένων Τι θα δούμε Ουρές προτεραιότητας Πράξεις Διωνυμικές Ουρές Διωνυμικά Δέντρα Διωνυμικοί Σωροί Ουρές Fibonacci Αναπαράσταση Πράξεις Ανάλυση Συγκρίσεις Ουρές προτεραιότητας

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

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

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

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

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

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

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

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

Δομές Δεδομένων. Δημήτρης Μιχαήλ. Δέντρα Αναζήτησης. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Δομές Δεδομένων Δέντρα Αναζήτησης Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Το πρόβλημα Αναζήτηση Θέλουμε να διατηρήσουμε αντικείμενα με κλειδιά και να μπορούμε εκτός από

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

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

Μελετάμε την περίπτωση όπου αποθηκεύουμε ένα (δυναμικό) σύνολο στοιχειών. Ένα στοιχείο γράφεται ως, όπου κάθε. Ψηφιακά Δένδρα Μελετάμε την περίπτωση όπου αποθηκεύουμε ένα (δυναμικό) σύνολο στοιχειών τα οποία είναι ακολουθίες συμβάλλων από ένα πεπερασμένο αλφάβητο Ένα στοιχείο γράφεται ως, όπου κάθε. Μπορούμε να

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

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

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

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

Διάλεξη 16: Σωροί. Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: - Ουρές Προτεραιότητας - Ο ΑΤΔ Σωρός, Υλοποίηση και πράξεις

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

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

Διασυνδεδεμένες Δομές. Δυαδικά Δέντρα. Προγραμματισμός II 1

Διασυνδεδεμένες Δομές. Δυαδικά Δέντρα. Προγραμματισμός II 1 Διασυνδεδεμένες Δομές Δυαδικά Δέντρα Προγραμματισμός II 1 lalis@inf.uth.gr Δέντρα Τα δέντρα είναι κλασικές αναδρομικές δομές Ένα δέντρο αποτελείται από υποδέντρα, καθένα από τα οποία μπορεί να θεωρηθεί

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

Το Πρόβληµα Οµοφωνίας Σύγχρονα Συστήµατα Μεταβίβασης Μηνύµατος Μοντέλο Κατάρρευσης (crash model) Οι διεργασίες µπορούν να σταµατούν να εκτελούνται σε

Το Πρόβληµα Οµοφωνίας Σύγχρονα Συστήµατα Μεταβίβασης Μηνύµατος Μοντέλο Κατάρρευσης (crash model) Οι διεργασίες µπορούν να σταµατούν να εκτελούνται σε Οµοφωνία σε σύστηµα µε αϖοτυχίες διεργασιών Παναγιώτα Φατούρου Κατανεµηµένα Συστήµατα 1 Το Πρόβληµα Οµοφωνίας Σύγχρονα Συστήµατα Μεταβίβασης Μηνύµατος Μοντέλο Κατάρρευσης (crash model) Οι διεργασίες µπορούν

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

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

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

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

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

Αλγόριθµοι και Πολυπλοκότητα Αλγόριθµοι και Πολυπλοκότητα Ν. Μ. Μισυρλής Τµήµα Πληροφορικής και Τηλεπικοινωνιών, Πανεπιστήµιο Αθηνών Καθηγητής: Ν. Μ. Μισυρλής () Αλγόριθµοι και Πολυπλοκότητα Φεβρουαρίου 0 / ένδρα Ενα δένδρο είναι

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

Αναδροµή. Σε αυτήν την (βοηθητική) ενότητα θα µελετηθούν τα εξής : Η έννοια της αναδροµής Υλοποίηση και αποδοτικότητα Αφαίρεση της αναδροµής

Αναδροµή. Σε αυτήν την (βοηθητική) ενότητα θα µελετηθούν τα εξής : Η έννοια της αναδροµής Υλοποίηση και αποδοτικότητα Αφαίρεση της αναδροµής Αναδροµή Σε αυτήν την (βοηθητική) ενότητα θα µελετηθούν τα εξής : Η έννοια της αναδροµής Υλοποίηση και αποδοτικότητα Αφαίρεση της αναδροµής 1 Αναδροµή Βασική έννοια στα Μαθηµατικά και στην Πληροφορική.

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

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 Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά και Πληροφορικής Μαθηματικά Πανεπιστήμιο ΙΙ Ιωαννίνων

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

Το Πρόβληµα Οµοφωνίας Σύγχρονα Συστήµατα Μεταβίβασης Μηνύµατος Μοντέλο Κατάρρευσης (crash model) Οι διεργασίες µπορούν να σταµατούν να εκτελούνται σε

Το Πρόβληµα Οµοφωνίας Σύγχρονα Συστήµατα Μεταβίβασης Μηνύµατος Μοντέλο Κατάρρευσης (crash model) Οι διεργασίες µπορούν να σταµατούν να εκτελούνται σε Οµοφωνία σε σύγχρονο σύστηµα µε αϖοτυχίες κατάρρευσης διεργασιών Παναγιώτα Φατούρου Κατανεµηµένος Υπολογισµός 1 Το Πρόβληµα Οµοφωνίας Σύγχρονα Συστήµατα Μεταβίβασης Μηνύµατος Μοντέλο Κατάρρευσης (crash

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

οµές εδοµένων 3 ο Εξάµηνο ΕΝΟΤΗΤΑ 4 ΕΝ ΡΑ

οµές εδοµένων 3 ο Εξάµηνο ΕΝΟΤΗΤΑ 4 ΕΝ ΡΑ ΕΝΟΤΗΤΑ 4 ΕΝ ΡΑ 1 ένδρα εσωτερικός κόµβος u το δένδρο έχει ύψος 4 u έχει ύψος 3 w έχει βάθος 2 κόµβος ένδρο: γράφηµα χωρίς κύκλους o Ρίζα (root) o Κόµβος (node) o Ακµή (edge) o Γονέας (parent) Παιδί (child)

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

ΟΥΡΕΣ ΠΡΟΤΕΡΑΙΟΤΗΤΑΣ

ΟΥΡΕΣ ΠΡΟΤΕΡΑΙΟΤΗΤΑΣ ΟΥΡΕΣ ΠΡΟΤΕΡΑΙΟΤΗΤΑΣ Δομές Δεδομένων Παπαγιαννόπουλος Δημήτριος 30 Μαρτίου 2017 18 Μαΐου 2017 papagianno@ceid.upatras.gr 1 Περιεχόμενα Ουρές προτεραιότητας Πράξεις Διωνυμικές Ουρές Διωνυμικά Δέντρα Διωνυμικοί

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

Μπαλτάς Αλέξανδρος 21 Απριλίου 2015

Μπαλτάς Αλέξανδρος 21 Απριλίου 2015 ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ Η/Υ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΗΣ B- Trees Δομές Δεδομένων Μπαλτάς Αλέξανδρος 21 Απριλίου 2015 ampaltas@ceid.upatras.gr Περιεχόμενα 1. Εισαγωγή 2. Ορισμός B- tree 3. Αναζήτηση σε B- tree 4. Ένθεση σε

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

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

Διάλεξη 26: Σωροί. Διδάσκων: Παναγιώτης Ανδρέου Διάλεξη 26: Σωροί Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: - Ουρές Προτεραιότητας -Ο ΑΤΔ Σωρός, Υλοποίηση και πράξεις Διδάσκων: Παναγιώτης Ανδρέου ΕΠΛ035 Δομές Δεδομένων και Αλγόριθμοι

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

1. Πότε χρησιμοποιούμε την δομή επανάληψης; Ποιες είναι οι διάφορες εντολές (μορφές) της;

1. Πότε χρησιμοποιούμε την δομή επανάληψης; Ποιες είναι οι διάφορες εντολές (μορφές) της; 1. Πότε χρησιμοποιούμε την δομή επανάληψης; Ποιες είναι οι διάφορες (μορφές) της; Η δομή επανάληψης χρησιμοποιείται όταν μια σειρά εντολών πρέπει να εκτελεστεί σε ένα σύνολο περιπτώσεων, που έχουν κάτι

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

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

Δομές Δεδομένων. Δημήτρης Μιχαήλ. Ουρές Προτεραιότητας. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Δομές Δεδομένων Ουρές Προτεραιότητας Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ουρά Προτεραιότητας Το πρόβλημα Έχουμε αντικείμενα με κλειδιά και θέλουμε ανά πάσα στιγμή

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

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

Διάλεξη 24: B-Δένδρα. Διδάσκων: Παναγιώτης Ανδρέου Διάλεξη 24: B-Δένδρα Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: - Εισαγωγή & Ισοζυγισμένα Δένδρα - 2-3 Δένδρα, Εισαγωγή και άλλες πράξεις -Β-δένδρα Διδάσκων: Παναγιώτης Ανδρέου ΕΠΛ035 Δομές

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

ΕΠΛ 231 οµές εδοµένων και Αλγόριθµοι Άννα Φιλίππου, 2006 9-1

ΕΠΛ 231 οµές εδοµένων και Αλγόριθµοι Άννα Φιλίππου, 2006 9-1 Σωροί Στην ενότητα αυτή θα µελετηθούν τα εξής επιµέρους θέµατα: Ουρές Προτεραιότητας Σωροί υλοποίηση και πράξεις Ο αλγόριθµος ταξινόµησης HeapSort Παραλλαγές Σωρών ΕΠΛ 231 οµές εδοµένων και Αλγόριθµοι

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

Ισοζυγισµένο έντρο (AVL Tree)

Ισοζυγισµένο έντρο (AVL Tree) Εργαστήριο 7 Ισοζυγισµένο έντρο (AVL Tree) Εισαγωγή Εκτός από τα δυαδικά δέντρα αναζήτησης (inry serh trees) που εξετάσαµε σε προηγούµενο εργαστήριο, υπάρχουν αρκετά είδη δέντρων αναζήτησης µε ξεχωριστό

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