επιστρέφει το αμέσως μεγαλύτερο από το x στοιχείο του S επιστρέφει το αμέσως μικρότερο από το x στοιχείο του S

Σχετικά έγγραφα
Δυναμική Διατήρηση Γραμμικής Διάταξης

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

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

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

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

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

Κατακερματισμός (Hashing)

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

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

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

Ενότητα 6: Κατακερματισμός Ασκήσεις και Λύσεις

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

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

Δυναμικός Κατακερματισμός

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

Διάλεξη 14: Δέντρα IV - B-Δένδρα

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

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

Αναζήτηση. 1. Σειριακή αναζήτηση 2. Δυαδική Αναζήτηση. Εισαγωγή στην Ανάλυση Αλγορίθμων Μάγια Σατρατζέμη

a n + 6a n a n 2 + 8a n 3 = 0, a 0 = 1, a 1 = 2, a 2 = 8

Σχεδίαση & Ανάλυση Αλγορίθμων

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

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

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

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

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

Σχεδίαση και Ανάλυση Αλγορίθμων

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

Ταχεία Ταξινόμηση Quick-Sort

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

Ταξινόμηση. 1. Στατιστικά Διάταξης 2. Στατιστικά σε Μέσο Γραμμικό Χρόνο. Εισαγωγή στην Ανάλυση Αλγορίθμων Μάγια Σατρατζέμη

(Γραμμικές) Αναδρομικές Σχέσεις

Εξωτερική Αναζήτηση. Ιεραρχία Μνήμης Υπολογιστή. Εξωτερική Μνήμη. Εσωτερική Μνήμη. Κρυφή Μνήμη (Cache) Καταχωρητές (Registers) μεγαλύτερη ταχύτητα

(Γραμμικές) Αναδρομικές Σχέσεις

(Γραμμικές) Αναδρομικές Σχέσεις

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

Κεφάλαιο 13 Αντισταθμιστική Ανάλυση

ΔΥΑΔΙΚΗ ΑΝΑΖΗΤΗΣΗ & ΤΑΞΙΝΟΜΗΣΗ ΜΕ ΣΥΓΧΩΝΕΥΣΗ

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

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

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

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

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

Ν. Μ. Μισυρλής. Τµήµα Πληροφορικής και Τηλεπικοινωνιών, Πανεπιστήµιο Αθηνών. Καθηγητής: Ν. Μ. Μισυρλής 29 Μαΐου / 18

Πίνακες Διασποράς. Χρησιμοποιούμε ένα πίνακα διασποράς T και μια συνάρτηση διασποράς h. Ένα στοιχείο με κλειδί k αποθηκεύεται στη θέση

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

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

n ίδια n διαφορετικά n n 0 n n n 1 n n n n 0 4

Πρόβλημα 1 «Φασίνα» Εύρεση εκτέλεσης εργασιών με τον μικρότερο συνολικό χρόνο

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

Κατακερµατισµός. Οργάνωση Αρχείων (σύνοψη) Οργάνωση αρχείων: πως είναι τοποθετημένες οι εγγραφές ενός αρχείου όταν αποθηκεύονται στο δίσκο

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

Προγραμματισμός ΙI (Θ)

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

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

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

Οργάνωση αρχείων: πως είναι τοποθετηµένες οι εγγραφές ενός αρχείου όταν αποθηκεύονται στο δίσκο

Κεφ.11: Ευρετήρια και Κατακερματισμός

Outline. 6 Edit Distance

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

O n+2 = O n+1 + N n+1 = α n+1 N n+2 = O n+1. α n+2 = O n+2 + N n+2 = (O n+1 + N n+1 ) + (O n + N n ) = α n+1 + α n

Δυναμικός Προγραμματισμός

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

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

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

Γενικό πλάνο. Μαθηµατικά για Πληροφορική. Παράδειγµα αναδροµικού ορισµού. οµική επαγωγή ΠΑΡΑ ΕΙΓΜΑ. 3ο Μάθηµα

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

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

Μαθηµατικά για Πληροφορική

Τα δεδομένα (περιεχόμενο) μιας βάσης δεδομένων αποθηκεύεται στο δίσκο

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

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

Άσκηση 3 (ανακοινώθηκε στις 24 Απριλίου 2017, προθεσμία παράδοσης: 2 Ιουνίου 2017, 12 τα μεσάνυχτα).

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

Ταξινόμηση κάδου και ταξινόμηση Ρίζας Bucket-Sort και Radix-Sort

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

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

Υπολογιστικά & Διακριτά Μαθηματικά

Σύνοψη Προηγούμενου. Πίνακες (Arrays) Πίνακες (Arrays): Βασικές Λειτουργίες. Πίνακες (Arrays) Ορέστης Τελέλης

Πληροφορική 2. Δομές δεδομένων και αρχείων

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

Άσκηση 1 (ανακοινώθηκε στις 20 Μαρτίου 2017, προθεσμία παράδοσης: 24 Απριλίου 2017, 12 τα μεσάνυχτα).

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

Δυναμικά Σύνολα. Δυναμικό σύνολο. Tα στοιχεία του μεταβάλλονται μέσω εντολών εισαγωγής και διαγραφής. διαγραφή. εισαγωγή

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

Δυναμικός Προγραμματισμός

Δομές Αναζήτησης. εισαγωγή αναζήτηση επιλογή. εισαγωγή. αναζήτηση

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

Ουρές Προτεραιότητας: Υπενθύμιση. Σωροί / Αναδρομή / Ταξινόμηση. Υλοποίηση Σωρού. Σωρός (Εισαγωγή) Ορέστης Τελέλης

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

Πληροφορική 2. Αλγόριθμοι

Μέγιστη Ροή Ελάχιστη Τομή

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

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

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

Ψηφιακή Επεξεργασία Σημάτων

Τεχνικές Σχεδιασμού Αλγορίθμων

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

Εργαστήριο Τεχνολογίας Πολυμέσων & Γραφικών, Τ.Ε.Π Π.Μ, Μάθημα: Γραφικά με Η/Υ

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

Transcript:

Μελετάμε την περίπτωση όπου αποθηκεύουμε ένα (δυναμικό) σύνολο στοιχειών,, τα οποίo είναι υποσύνολο του. Υποστηριζόμενες λειτουργίες αναζήτηση(s,x): εισαγωγή(s,x): διαγραφή(s,x): διάδοχος(s,x): προκάτοχος(s,x): επιστρέφει το στοιχείο x αν υπάρχει στο S θέτει θέτει επιστρέφει το αμέσως μεγαλύτερο από το x στοιχείο του S επιστρέφει το αμέσως μικρότερο από το x στοιχείο του S Οι λειτουργίες εύρεσης διαδόχου και προκατόχου αυξάνουν την πολυπλοκότητα του προβλήματος. Χωρίς αυτές ο δυναμικός πλήρης κατακερματισμός λύνει το πρόβλημα σε σταθερό αναμενόμενο αντισταθμιστικό χρόνο και χώρο. Με χώρο αρκεί ένας πίνακας δυαδικών ψηφίων.

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

Χωρίζουμε το χώρο σε τμήματα μεγέθους Αν τότε. Η θέση του εντός του είναι η. Ενεργό τμήμα : περιέχει στοιχεία του

Εύρεση διαδόχου ενός στοιχείου Είναι το μικρότερο στοιχείο τέτοιο ώστε, αν υπάρχει. Διαφορετικά είναι το μικρότερο στοιχείο του επόμενου ενεργού τμήματος, Η αναζήτηση μπορεί να γίνει αναδρομικά αν διατηρήσουμε σε μια δομή για τα πιο σημαντικά ψηφία τα ενεργά τμήματα. Για κάθε ενεργό τμήμα η δομή για το αποθηκεύει την τιμή.

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

Εισαγωγή ενός στοιχείου Η εισαγωγή του μπορεί να προκαλέσει το πολύ δύο αναδρομικές κλήσεις: μια για την εισαγωγή του στην δομή για το, αν το ήταν προηγουμένως ανενεργό, και μια για την εισαγωγή του εντός της δομής για το. Άρα ο χρόνος εισαγωγής στη χειρότερη περίπτωση δίνεται από την αναδρομή Αντικαθιστούμε και οπότε έχουμε

Για να βελτιώσουμε τους χρόνους εκτέλεσης των λειτουργιών πρέπει να μειώσουμε τον αριθμό των αναδρομικών κλήσεων

Για να βελτιώσουμε τους χρόνους εκτέλεσης των λειτουργιών πρέπει να μειώσουμε τον αριθμό των αναδρομικών κλήσεων Αρκεί να διατηρούμε σε κάθε αναδρομική δομή το μέγιστο και το ελάχιστο στοιχείο που αποθηκεύει!

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

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

δομή για τα στοιχεία του δομή για τα στοιχεία του

Εισαγωγή ενός στοιχείου Σταματάμε την αναδρομή για την εισαγωγή του όταν φτάσουμε είτε σε κενή δομή (οπότε θέτουμε απλά ) και τελειώνουμε εισάγοντας το στην άνω δομή. Άρα ο χρόνος εισαγωγής στη χειρότερη περίπτωση δίνεται από την αναδρομή Αντικαθιστούμε και οπότε έχουμε

Πολυπλοκότητα χώρου top bottom min, max, size Αντικαθιστούμε και οπότε έχουμε

Βελτίωση πολυπλοκότητας χώρου Χωρίζουμε το σύνολο σε υποσύνολα μεγέθους. Αν και με τότε. Κάθε αποθηκεύεται σε ένα ισορροπημένο δυαδικό δένδρο αναζήτησης. (Χώρος, χρόνος αναζήτησης.) Από κάθε επιλέγουμε το μέγιστο στοιχείο του ως αντιπρόσωπο. Οι αντιπρόσωποι αποθηκεύονται σε μία δομή veb με τη διαφορά ότι αντί για στατικό πίνακα χρησιμοποιούμε δομή δυναμικού πλήρους κατακερματισμού για τα τμήματα. Ο συνολικός χώρος για τη δομή veb είναι.

Βελτίωση πολυπλοκότητας χώρου Εύρεση διαδόχου ενός στοιχείου Η δομή veb μας επιστρέφει τον μικρότερο αντιπρόσωπο τέτοιον ώστε. Στη συνέχεια αναζητούμε τον διάδοχο του στο. Επομένως ο συνολικός χρόνος αναζήτησης είναι.

Βελτίωση πολυπλοκότητας χώρου Εισαγωγή στοιχείου Βρίσκουμε το σύνολο στο οποίο ανήκει ο διάδοχος του. Αν η εισαγωγή του στο αυξάνει το μέγεθος του σε τότε διασπάμε το σε δύο νέα σύνολα και κάνουμε τις κατάλληλες αλλαγές στη δομή veb αντιπροσώπων. Η δομή επιτυγχάνει αναμενόμενο αντισταθμιστικό χρόνο εισαγωγής.