Δυναμικά Σύνολα TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A AA A A Δυναμικό σύνολο Tα στοιχεία του μεταβάλλονται.

Slides:



Advertisements
Παρόμοιες παρουσιάσεις
Αναδρομικοί Αλγόριθμοι
Advertisements

Δομές Δεδομένων και Αλγόριθμοι
Δένδρα van Emde Boas TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A A A Μελετάμε την περίπτωση όπου αποθηκεύουμε.
Επίπεδα Γραφήματα (planar graphs)
Στοιχειώδεις Δομές Δεδομένων TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A A A Τύποι δεδομένων στη Java • Ακέραιοι.
Δυναμικοί πίνακες Πολλές δομές δεδομένων υλοποιούνται με χρήση πινάκων
Λίστες παράλειψης (skip lists) TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A A A
Άμεσοι Αλγόριθμοι: Προσπέλαση Λίστας (list access) TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A A A Έχουμε αποθηκεύσει.
Πίνακες-Αλφαριθμητικά
Κατακερματισμός.
Επίπεδα Γραφήματα : Προβλήματα και Υπολογιστική Πολυπλοκότητα TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A AA.
Πολυπλοκότητα Παράμετροι της αποδοτικότητας ενός αλγόριθμου:
Ισορροπημένα Δένδρα TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A A A Μπορούμε να επιτύχουμε χρόνο εκτέλεσης για.
Κατακερματισμός Βάσεις Δεδομένων Ευαγγελία Πιτουρά.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά1 Δυναμικός Κατακερματισμός.
Δομές Αναζήτησης TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A A A εισαγωγή αναζήτησηεπιλογή διατεταγμένος πίνακας.
Ψηφιακά Δένδρα TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A A A Μπορούμε να χρησιμοποιήσουμε την παραπάνω αναπαράσταση.
Δένδρα Αναζήτησης Πολλαπλής Διακλάδωσης TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A A A Δένδρα στα οποία κάθε.
Διαίρει και Βασίλευε πρόβλημα μεγέθους Ν διάσπαση πρόβλημα μεγέθους Ν-k πρόβλημα μεγέθους k.
Κοντινότεροι Κοινοί Πρόγονοι α βγ θ δεζ η π ν ι κλμ ρσ τ κκπ(λ,ι)=α, κκπ(τ,σ)=ν, κκπ(λ,π)=η κκπ(π,σ)=γ, κκπ(ξ,ο)=κ ξο κκπ(ι,ξ)=β, κκπ(τ,θ)=θ, κκπ(ο,μ)=α.
Προσεγγιστικοί Αλγόριθμοι
Δυναμική Διατήρηση Γραμμικής Διάταξης Διατηρεί μια γραμμική διάταξη δυναμικά μεταβαλλόμενης συλλογής στοιχείων. Υποστηρίζει τις λειτουργίες: Έλεγχος της.
Μέγιστη ροή TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A AA A A Συνάρτηση χωρητικότητας Κατευθυνόμενο γράφημα.
Αριθμοθεωρητικοί Αλγόριθμοι TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A AA A A Αλγόριθμοι που επεξεργάζονται.
Τυχαιοκρατικοί Αλγόριθμοι TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA Πιθανότητες και Αλγόριθμοι Ανάλυση μέσης.
Ισορροπημένα Δένδρα TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A A A Μπορούμε να επιτύχουμε χρόνο εκτέλεσης για.
TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A Δυναμικός Προγραμματισμός πρόβλημα μεγέθους Ν διάσπαση πρόβλημα.
Δομές Αναζήτησης TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A A A Χειριζόμαστε ένα σύνολο στοιχείων όπου το κάθε.
Ανάλυση αλγορίθμων Παράμετροι απόδοσης ενός αλγόριθμου: Χρόνος εκτέλεσης Απαιτούμενοι πόροι, π.χ. μνήμη, επικοινωνία (π.χ. σε κατανεμημένα συστήματα) Προσπάθεια.
Ελαφρύτατες διαδρομές TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A AA A A Συνάρτηση βάρους Κατευθυνόμενο γράφημα.
Ισορροπημένα Δένδρα TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A A A Μπορούμε να επιτύχουμε χρόνο εκτέλεσης για.
Ψηφιακά Δένδρα TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A A A Μπορούμε να χρησιμοποιήσουμε την παραπάνω αναπαράσταση.
Δυναμικά Σύνολα TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A AA A A Δυναμικό σύνολο Tα στοιχεία του μεταβάλλονται.
TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A A A Ουρά Προτεραιότητας (priority queue) Δομή δεδομένων που υποστηρίζει.
TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A A A Ουρά Προτεραιότητας (priority queue) Δομή δεδομένων που υποστηρίζει.
Ειδικά Θέματα Αλγορίθμων και Δομών Δεδομένων
Διερεύνηση γραφήματος. Ένας αλγόριθμος διερεύνησης γραφήματος επισκέπτεται τους κόμβους του γραφήματος με μια καθορισμένη στρατηγική, π.χ. κατά εύρος.
Ελαφρύτατες διαδρομές TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A AA A A.
Κ. Μόδη: Γεωστατιστική και Εφαρμογές της (Κεφάλαιο 4) 1 Από κοινού κατανομή πολλών ΤΜ Ορίζεται ως από κοινού συνάρτηση κατανομής F(x 1, …, x n ) n τυχαίων.
TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A A A Ουρά Προτεραιότητας (priority queue) Δομή δεδομένων που υποστηρίζει.
Γραμμικός Προγραμματισμός TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A AA A A Μια εταιρεία παράγει κέικ δύο κατηγοριών,
Δομές Αναζήτησης TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A A A Θέλουμε να υποστηρίξουμε δύο βασικές λειτουργίες:
Στοιχειώδεις Δομές Δεδομένων TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A A A Τύποι δεδομένων στη C Ακέραιοι.
Επίπεδα Γραφήματα: Έλεγχος Επιπεδότητας TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A AA A A αβ ζ η ε γ θ Το γράφημα.
Λεξικό, Union – Find Διδάσκοντες: Σ. Ζάχος, Δ. Φωτάκης Επιμέλεια διαφανειών: Δ. Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο.
Διερεύνηση γραφήματος. Ένας αλγόριθμος διερεύνησης γραφήματος επισκέπτεται τους κόμβους του γραφήματος με μια καθορισμένη στρατηγική, π.χ. κατά εύρος.
Advanced Data Indexing (Προηγμένη ευρετηρίαση δεδομένων) Κατακερματισμός – Hashing (1 ο Μέρος)
Λίστες παράλειψης (skip lists) TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A A A
Γράφημα TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A A A Συνδυαστικό αντικείμενο που αποτελείται από.
Μέγιστη ροή TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A AA A A Συνάρτηση χωρητικότητας Κατευθυνόμενο γράφημα.
ΕΠΛ 231 – Δομές Δεδομένων και Αλγόριθμοι13-1 Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Ο αλγόριθμος Dijkstra για εύρεση βραχυτέρων μονοπατιών.
Ελαφρύτατες διαδρομές TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A AA A A.
Μέγιστη ροή TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A AA A A Συνάρτηση χωρητικότητας Κατευθυνόμενο γράφημα.
Advanced Data Indexing (Προηγμένη ευρετηρίαση δεδομένων) Ροές Δεδομένων (3 ο Μέρος)
Συνδετικότητα γραφήματος (graph connectivity). α β Υπάρχει μονοπάτι μεταξύ α και β; Παραδείγματα: υπολογιστές ενός δικτύου ιστοσελίδες ισοδύναμες μεταβλητές.
Γράφημα Συνδυαστικό αντικείμενο που αποτελείται από 2 σύνολα:
Δυναμικός Κατακερματισμός
Μέγιστη ροή Κατευθυνόμενο γράφημα 12 Συνάρτηση χωρητικότητας
Διδάσκων: Δρ. Τσίντζα Παναγιώτα
Πίνακες Συμβόλων TexPoint fonts used in EMF.
Μέγιστη ροή Κατευθυνόμενο γράφημα 12 Συνάρτηση χωρητικότητας
Ισορροπημένα Δένδρα Μπορούμε να επιτύχουμε χρόνο εκτέλεσης
Δένδρα Αναζήτησης Πολλαπλής Διακλάδωσης
Ισορροπημένα Δένδρα Μπορούμε να επιτύχουμε χρόνο εκτέλεσης
Ισορροπημένα Δένδρα Μπορούμε να επιτύχουμε χρόνο εκτέλεσης
Ουρά Προτεραιότητας (priority queue)
Δομές Αναζήτησης Χειριζόμαστε ένα σύνολο στοιχείων όπου το κάθε στοιχείο έχει ένα κλειδί από ολικά διατεταγμένο σύνολο Θέλουμε να υποστηρίξουμε δύο.
Ελαφρύτατες διαδρομές
Εξωτερική Αναζήτηση Ιεραρχία Μνήμης Υπολογιστή Εξωτερική Μνήμη
Δυναμικός Κατακερματισμός
Μεταγράφημα παρουσίασης:

Δυναμικά Σύνολα TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A AA A A Δυναμικό σύνολο Tα στοιχεία του μεταβάλλονται μέσω εντολών εισαγωγής και διαγραφής εισαγωγή διαγραφή

Δυναμικά Σύνολα TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A AA A A Δυναμικό σύνολο Tα στοιχεία του μεταβάλλονται μέσω εντολών εισαγωγής και διαγραφής Βασικές λειτουργίες αναζήτηση(S,k): εισαγωγή(S,x): διαγραφή(S,x): επιστρέφει το στοιχείο με κλειδί k αν υπάρχει στο S θέτει

Δυναμικά Σύνολα TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A AA A A Αν το S είναι ολικά διατεταγμένο μπορούμε να έχουμε επιπλέον τις λειτουργίες ελάχιστο(S): μέγιστο(S): διάδοχος(S,x): προκάτοχος(S,x): Δυναμικό σύνολο Tα στοιχεία του μεταβάλλονται μέσω εντολών εισαγωγής και διαγραφής επιστρέφει το στοιχείο του S με το ελάχιστο κλειδί επιστρέφει το στοιχείο του S με το μέγιστο κλειδί επιστρέφει το αμέσως μεγαλύτερο από το x στοιχείο του S επιστρέφει το αμέσως μικρότερο από το x στοιχείο του S Βασικές λειτουργίες αναζήτηση(S,k): εισαγωγή(S,x): διαγραφή(S,x): επιστρέφει το στοιχείο με κλειδί k αν υπάρχει στο S θέτει

Δυναμικά Σύνολα TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A A A εισαγωγή αναζήτηση διατεταγμένος πίνακας διατεταγμένη λίστα μη διατεταγμένη λίστα μη διατεταγμένος πίνακας δένδρο δυαδικής αναζήτησης τυχαιοποιημένο δένδρο ισορροπημένο δένδρο δυαδικής αναζήτησης (*) Συμβαίνει με εξαιρετικά μικρή πιθανότητα εισαγωγή αναζήτηση κατακερματισμός χειρότερη περίπτωσημέση περίπτωση Με δυαδική αναζήτηση

Πίνακες Διασποράς TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A AA A A Δυναμικό σύνολο Tα στοιχεία του μεταβάλλονται μέσω εντολών εισαγωγής και διαγραφής Βασικές λειτουργίες αναζήτηση(S,k): εισαγωγή(S,x): διαγραφή(S,x): επιστρέφει το στοιχείο με κλειδί k αν υπάρχει στο S θέτει Οι πίνακες διασποράς (κατακερματισμός) δίνουν μια αποδοτική λύση όταν θέλουμε να υποστηρίξουμε μόνο τις παραπάνω λειτουργίες

Πίνακες Διασποράς TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A AA A A κλειδί k k T συνάρτηση διασποράς U : χώρος πιθανών κλειδιών Τ : πίνακας μεγέθους m Χρησιμοποιούμε ένα πίνακα διασποράς T και μια συνάρτηση διασποράς h Ένα στοιχείο με κλειδί k αποθηκεύεται στη θέση

Πίνακες Διασποράς TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A AA A A Μετατροπή σε ακέραιο στο διάστημα - για αριθμό κινητής υποδιαστολής στο διάστημα int m, k; float x; k = x*m; π.χ. για m = 67 x = k = 38 x = k = 21 x = k = 38

Πίνακες Διασποράς TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A AA A A Μετατροπή σε ακέραιο στο διάστημα - για αλφαριθμητικά με χαρακτήρες κάθε χαρακτήρας αντιστοιχεί σε ένα ακέραιο σε κωδικοποίηση ASCII έχουμε ‘a’ = 97, ‘b’ = 98, ‘c’ = 99,… κλπ char s[4] = “have” π.χ. για m = 67 = 420 mod 67 = 18 k = ( ) mod 67

Πίνακες Διασποράς TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A AA A A Μετατροπή σε ακέραιο στο διάστημα - για αλφαριθμητικά με χαρακτήρες κάθε χαρακτήρας αντιστοιχεί σε ένα ακέραιο σε κωδικοποίηση ASCII έχουμε ‘a’ = 97, ‘b’ = 98, ‘c’ = 99,… κλπ char s[4] = “have” π.χ. για m = 67 = 420 mod 67 = 18 k = ( ) mod 67 Αντιστοιχεί στον ίδιο ακέραιο αλφαριθμητικά που προκύπτουν από μεταθέσεις των ίδιων χαρακτήρων. Π.χ. “stop” – “tops” – “pots” – “spot”, «γραφή» – «φραγή» Για να το αποφύγουμε πολλαπλασιάζουμε με ένα συντελεστή βάρους σε κάθε θέση

για να αποφύγουμε το πρόβλημα της υπερχείλισης χρησιμοποιούμε τον αλγόριθμο του Horner και τις αριθμητικές ιδιότητες της συνάρτησης mod Πίνακες Διασποράς TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A AA A A Μετατροπή σε ακέραιο στο διάστημα - για αλφαριθμητικά με χαρακτήρες των 7 bit (w = 2 7 = 128 χαρακτήρες) κάθε χαρακτήρας αντιστοιχεί σε ένα ακέραιο σε κωδικοποίηση ASCII έχουμε ‘a’ = 97, ‘b’ = 98, ‘c’ = 99,… κλπ char s[4] = “have” π.χ. για m = 67 = mod 67 = 52 k = (104* * * *128 0 ) mod * * * *128 0 = ((104* )* )*

Πίνακες Διασποράς TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A AA A A Μετατροπή σε ακέραιο στο διάστημα κάθε χαρακτήρας αντιστοιχεί σε ένα ακέραιο σε κωδικοποίηση ASCII έχουμε ‘a’ = 97, ‘b’ = 98, ‘c’ = 99,… κλπ char s[4] = “have” π.χ. για m = 67 k = (((104* )* )* ) mod 67 = 52 int w = 128; int k = 0; for (i=0; i<n; i++){ k = (k*w + s[i]) % m; } - για αλφαριθμητικά με χαρακτήρες των 7 bit (w = 2 7 = 128 χαρακτήρες)

Πίνακες σταθερών διευθύνσεων TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A AA A A Απλή λύση όταν το U είναι μικρό: 1 1 T συνάρτηση διασποράς U : χώρος πιθανών κλειδιών Τ : πίνακας μεγέθους m όπου U K K : χώρος ενεργών κλειδιών

Πίνακες σταθερών διευθύνσεων TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A AA A A Απλή λύση όταν το U είναι μικρό: 1 1 T συνάρτηση διασποράς U : χώρος πιθανών κλειδιών Τ : πίνακας μεγέθους m όπου U K K : χώρος ενεργών κλειδιών Δίνει Ο(1) χρόνο ανά πράξη.

Πίνακες σταθερών διευθύνσεων TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A AA A A Απλή λύση όταν το U είναι μικρό: 1 1 T συνάρτηση διασποράς U : χώρος πιθανών κλειδιών Τ : πίνακας μεγέθους m όπου U K K : χώρος ενεργών κλειδιών Τι γίνεται όμως αν το U είναι πολύ μεγάλο; Δίνει Ο(1) χρόνο ανά πράξη.

Πίνακες σταθερών διευθύνσεων TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A AA A A Απλή λύση όταν το U είναι μικρό: 1 1 T συνάρτηση διασποράς U : χώρος πιθανών κλειδιών Τ : πίνακας μεγέθους m όπου U K K : χώρος ενεργών κλειδιών Τι γίνεται όμως αν το U είναι πολύ μεγάλο και το Κ πολύ μικρότερο; Δίνει Ο(1) χρόνο ανά πράξη.

Πίνακες Διασποράς TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A AA A A Επιθυμητές ιδιότητες: χώρος χρόνος ανά λειτουργία (αναμενόμενη περίπτωση) συνάρτηση διασποράς U : χώρος πιθανών κλειδιών Τ : πίνακας μεγέθους m K : χώρος ενεργών κλειδιών k2k2 T 0 m-1 k1k1 k3k3 k4k4 U K

Πίνακες Διασποράς TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A AA A A Επιθυμητές ιδιότητες: χώρος χρόνος ανά λειτουργία (αναμενόμενη περίπτωση) συνάρτηση διασποράς U : χώρος πιθανών κλειδιών Τ : πίνακας μεγέθους m K : χώρος ενεργών κλειδιών k2k2 T 0 m-1 k1k1 k3k3 k4k4 U K Σύγκρουση (collision): για κλειδιά

Πίνακες Διασποράς TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A AA A A Επιθυμητές ιδιότητες: χώρος χρόνος ανά λειτουργία (αναμενόμενη περίπτωση) συνάρτηση διασποράς U : χώρος πιθανών κλειδιών Τ : πίνακας μεγέθους m K : χώρος ενεργών κλειδιών k2k2 T 0 m-1 k1k1 k3k3 k4k4 U K Η h πρέπει να δίνει τυχαιόμορφη κατανομή Σύγκρουση (collision): για κλειδιά

Πίνακες Διασποράς TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A AA A A Ποιά συνάρτηση διασποράς είναι καλύτερη;

Πίνακες Διασποράς TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A AA A A Σύγκρουση (collision): για κλειδιά Πρέπει να οριστεί ένας τρόπος διαχείρισης συγκρούσεων ώστε τα κλειδιά να μπορούν να βρεθούν αρκετά γρήγορα. Χρησιμοποιούνται 2 κύριοι τρόποι: Τοποθέτηση στην ίδια θέση (π.χ., σε αλυσίδα) Τοποθέτηση σε άλλη θέση

Πίνακες Διασποράς Αλυσιδωτής Σύνδεσης TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A AA A A k2k2 T 0 m-1 k1k1 k3k3 k4k4 U K k2k2 k1k1 k3k3 k4k4 Άρση των συγκρούσεων μέσω αλυσιδωτής σύνδεσης Κάθε δείχνει σε μία αλυσίδα για τα κλειδιά με διασπορά Σύγκρουση (collision): για κλειδιά

Πίνακες Διασποράς Αλυσιδωτής Σύνδεσης TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A AA A A k2k2 T 0 m-1 k1k1 k3k3 k4k4 U K k2k2 k1k1 k3k3 k4k4 εισαγωγή(Τ,x): εισαγωγή του x στη λίστα του Τ[h(κλειδί[x])] Σύγκρουση (collision): για κλειδιά Άρση των συγκρούσεων μέσω αλυσιδωτής σύνδεσης Κάθε δείχνει σε μία αλυσίδα για τα κλειδιά με διασπορά

Πίνακες Διασποράς Αλυσιδωτής Σύνδεσης TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A AA A A k2k2 T 0 m-1 k1k1 k3k3 k4k4 U K k1k1 k3k3 k4k4 k5k5 k5k5 k2k2 εισαγωγή(Τ,x): εισαγωγή του x στη λίστα του Τ[h(κλειδί[x])] Σύγκρουση (collision): για κλειδιά Άρση των συγκρούσεων μέσω αλυσιδωτής σύνδεσης Κάθε δείχνει σε μία αλυσίδα για τα κλειδιά με διασπορά

Πίνακες Διασποράς Αλυσιδωτής Σύνδεσης TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A AA A A k2k2 T 0 m-1 k1k1 k3k3 k4k4 U K k1k1 k3k3 k4k4 k5k5 k5k5 k2k2 αναζήτηση(Τ,k): αναζήτηση στοιχείου με κλειδί k στην αλυσίδα T[h(k)] εισαγωγή(Τ,x): εισαγωγή του x στη λίστα του Τ[h(κλειδί[x])] Σύγκρουση (collision): για κλειδιά Άρση των συγκρούσεων μέσω αλυσιδωτής σύνδεσης Κάθε δείχνει σε μία αλυσίδα για τα κλειδιά με διασπορά Η εισαγωγή παίρνει Ο(1) χρόνο αν γίνεται στην αρχή της αλυσίδας και δεν κάνουμε αναζήτηση αν το x είναι ήδη καταχωρημένο. Διαφορετικά πρέπει να προηγηθεί αναζήτηση του x.

Πίνακες Διασποράς Αλυσιδωτής Σύνδεσης TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A AA A A k2k2 T 0 m-1 k1k1 k3k3 k4k4 U K k1k1 k3k3 k4k4 k5k5 k5k5 k2k2 Η διαγραφή παίρνει Ο(1) χρόνο αν η θέση του x είναι γνωστή. (Δηλαδή έχουμε δείκτη στον κόμβο του x.) Διαφορετικά πρέπει να προηγηθεί αναζήτηση του x. Ο αναμενόμενος χρόνος αναζήτησης εξαρτάται από το αναμενόμενο μήκος μιας αλυσίδας. αναζήτηση(Τ,k): αναζήτηση στοιχείου με κλειδί k στην αλυσίδα T[h(k)] διαγραφή(Τ,x): διαγραφή του x από την αλυσίδα του Τ[h(κλειδί[x])] εισαγωγή(Τ,x): εισαγωγή του x στη λίστα του Τ[h(κλειδί[x])] Σύγκρουση (collision): για κλειδιά Άρση των συγκρούσεων μέσω αλυσιδωτής σύνδεσης Κάθε δείχνει σε μία αλυσίδα για τα κλειδιά με διασπορά

Πίνακες Διασποράς Αλυσιδωτής Σύνδεσης TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A AA A A seal tiger wolf vulture horse octopus mouse iguana rabbit frog koalaelephantalligator dog lion puma bat T Εισαγωγή “zebra”  key=  hash = 4 jaguar

Πίνακες Διασποράς Αλυσιδωτής Σύνδεσης TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A AA A A seal tiger wolf vulture zebra horse octopus mouse iguana rabbit frog koalaelephantalligator dog lion pumajaguar bat T Εισαγωγή “zebra”  key=  hash = 4

Πίνακες Διασποράς Αλυσιδωτής Σύνδεσης TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A AA A A k2k2 T 0 m-1 k1k1 k3k3 k4k4 U K k5k5 k5k5 k2k2 Συντελεστής πληρότητας πλήθος των ενεργών κλειδιών Στη χειρότερη περίπτωση η διασπορά είναι ίδια για όλα τα χρόνος αναζήτησης στη χειρότερη περίπτωση. k3k3 k1k1 k4k4

Πίνακες Διασποράς Αλυσιδωτής Σύνδεσης TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A AA A A k2k2 T 0 m-1 k1k1 k3k3 k4k4 U K k1k1 k3k3 k4k4 k5k5 k5k5 k2k2 Έστω το μήκος της αλυσίδας του. Έχουμε και επομένως το μέσο μήκος μιας αλυσίδας είναι. Υπόθεση απλής ομοιόμορφης διασποράς: κάθε νέο στοιχείο έχει ίση πιθανότητα να διασπαρεί σε οποιαδήποτε από τις m θέσεις. Συντελεστής πληρότητας πλήθος των ενεργών κλειδιών Μια επιτυχής αναζήτηση διασχίζει κατά μέσο όρο τους μισούς κόμβους αλυσίδας που δεν είναι κενή. Αναμενόμενος χρόνος ανεπιτυχούς αναζήτησης: Αναμενόμενος χρόνος επιτυχούς αναζήτησης:

Συναρτήσεις Διασποράς TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A AA A A Πότε είναι μία συνάρτηση διασποράς καλή; Επιθυμητή ιδιότητα: να ικανοποιεί την υπόθεση της απλής ομοιόμορφης διασποράς (δηλ. κάθε νέο στοιχείο έχει ίση πιθανότητα να διασπαρεί σε οποιαδήποτε από τις m θέσεις). Η παραπάνω ιδιότητα απαιτεί γνώση της κατανομής των κλειδιών, που συνήθως δεν είναι γνωστή. Παράδειγμα: Τα κλειδιά είναι ανεξάρτητοι και ομοιόμορφα κατανεμημένοι αριθμοί στο διάστημα [0,1]. Επιλέγοντας ικανοποιούμε την υπόθεση της απλής ομοιόμορφης διασποράς.

Συναρτήσεις Διασποράς TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A AA A A Διαιρετική μέθοδος κακή επιλογή : m = δύναμη του 2 καλή επιλογή : m = πρώτος αριθμός Πολλαπλασιαστική μέθοδος Πότε είναι μία συνάρτηση διασποράς καλή; Επιθυμητή ιδιότητα: να ικανοποιεί την υπόθεση της απλής ομοιόμορφης διασποράς (δηλ. κάθε νέο στοιχείο έχει ίση πιθανότητα να διασπαρεί σε οποιαδήποτε από τις m θέσεις). Πολλαπλασίασε πρόσθεσε και διαίρεσε (Multiply Add and Divide) ακέραιοι στο διάστημα με πρώτος αριθμός

Καθολική Διασπορά TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A AA A A Για κάθε καθορισμένη συνάρτηση διασποράς μπορούμε να επιλέξουμε κλειδιά που θα δίνουν τη χειρότερη δυνατή επίδοση. Προκειμένου να βελτιώσουμε την κατάσταση μπορούμε να βασιστούμε σε τυχαιοκρατικούς αλγόριθμους: Ορίζουμε μία οικογένεια συναρτήσεων και κατά τη διάρκεια της εκτέλεσης επιλέγουμε τυχαία μία από αυτές τις συναρτήσεις ως συνάρτηση διασποράς. Περιορίζουμε την πιθανότητα εμφάνισης παθολογικών περιπτώσεων.

Καθολική Διασπορά TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A AA A A πεπερασμένη συλλογή συναρτήσεων Η συλλογή είναι καθολική αν για κάθε ζεύγος διαφορετικών κλειδιών υπάρχουν το πολύ συναρτήσεις με

Καθολική Διασπορά TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A AA A A πεπερασμένη συλλογή συναρτήσεων Η συλλογή είναι καθολική αν για κάθε ζεύγος διαφορετικών κλειδιών υπάρχουν το πολύ συναρτήσεις με Συνεπώς

Καθολική Διασπορά TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A AA A A πεπερασμένη συλλογή συναρτήσεων Η συλλογή είναι καθολική αν για κάθε ζεύγος διαφορετικών κλειδιών υπάρχουν το πολύ συναρτήσεις με Συνεπώς Πιθανότητα σύμπτωσης όταν και επιλέγονται τυχαία και ανεξάρτητα.

Καθολική Διασπορά TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A AA A A καθολική συλλογή συναρτήσεων διασποράς που αντιστοιχίζει το σύμπαν στο σύνολο αυθαίρετο υποσύνολο του με αυθαίρετο στοιχείο του αριθμός στοιχειών με (τυχαία μεταβλητή) τυχαία επιλεγμένη συνάρτηση της Για κάθε έχουμε δείκτρια τυχαία μεταβλητή Έχουμε Άρα

Καθολική Διασπορά TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A AA A A Θεώρημα Έστω ότι επιλέγουμε τυχαία και κάνουμε εισαγωγή κλειδιών σε πίνακα μεγέθους. Έστω. Τότε Πόρισμα Ο αναμενόμενος χρόνος εκτέλεσης μίας ακολουθίας πράξεων με πράξεις εισαγωγής είναι Συνεπάγεται από το παραπάνω θεώρημα και την παρατήρηση ότι

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

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

Μέθοδος Μεταβλητών Διευθύνσεων (Ανοιχτή Διευθυνσιοδότηση) Η συνάρτηση διασποράς αντιστοιχεί σε κάθε κλειδί μία ακολουθία από διευθύνσεις του πίνακα Τ βολιδοσκοπική ακολουθία Συνάρτηση Διασποράς μετάθεση του

Η συνάρτηση διασποράς αντιστοιχεί σε κάθε κλειδί μία ακολουθία από διευθύνσεις του πίνακα Τ βολιδοσκοπική ακολουθία Συνάρτηση Διασποράς μετάθεση του T 0 m-1 αναζήτηση (Τ,k): βολιδοσκοπεί τις θέσεις T[h(k,i)] για i=0,1,…,m-1 μέχρι να βρει το αντικείμενο με κλειδί k ή μία κενή θέση. Μέθοδος Μεταβλητών Διευθύνσεων (Ανοιχτή Διευθυνσιοδότηση)

Η συνάρτηση διασποράς αντιστοιχεί σε κάθε κλειδί μία ακολουθία από διευθύνσεις του πίνακα Τ βολιδοσκοπική ακολουθία Συνάρτηση Διασποράς μετάθεση του T 0 m-1 αναζήτηση (Τ,k): βολιδοσκοπεί τις θέσεις T[h(k,i)] για i=0,1,…,m-1 μέχρι να βρει το αντικείμενο με κλειδί k ή μία κενή θέση. εισαγωγή (Τ,k): βολιδοσκοπεί τις θέσεις Τ[h(κλειδί[x],i)] για i=0,1,…,m-1 μέχρι να βρει την πρώτη κενή θέση και τοποθετεί το αντικείμενο εκεί. Μέθοδος Μεταβλητών Διευθύνσεων (Ανοιχτή Διευθυνσιοδότηση)

Η συνάρτηση διασποράς αντιστοιχεί σε κάθε κλειδί μία ακολουθία από διευθύνσεις του πίνακα Τ βολιδοσκοπική ακολουθία Συνάρτηση Διασποράς μετάθεση του x k T 0 m-1 αναζήτηση (Τ,k): βολιδοσκοπεί τις θέσεις T[h(k,i)] για i=0,1,…,m-1 μέχρι να βρει το αντικείμενο με κλειδί k ή μία κενή θέση. εισαγωγή (Τ,k): βολιδοσκοπεί τις θέσεις Τ[h(κλειδί[x],i)] για i=0,1,…,m-1 μέχρι να βρει την πρώτη κενή θέση και τοποθετεί το αντικείμενο εκεί. διαγραφή (Τ,x): ? Μέθοδος Μεταβλητών Διευθύνσεων (Ανοιχτή Διευθυνσιοδότηση)

Η συνάρτηση διασποράς αντιστοιχεί σε κάθε κλειδί μία ακολουθία από διευθύνσεις του πίνακα Τ βολιδοσκοπική ακολουθία Συνάρτηση Διασποράς μετάθεση του x k T 0 m-1 αναζήτηση (Τ,k): βολιδοσκοπεί τις θέσεις T[h(k,i)] για i=0,1,…,m-1 μέχρι να βρει το αντικείμενο με κλειδί k ή μία κενή θέση. εισαγωγή (Τ,k): βολιδοσκοπεί τις θέσεις Τ[h(κλειδί[x],i)] για i=0,1,…,m-1 μέχρι να βρει την πρώτη κενή θέση και τοποθετεί το αντικείμενο εκεί. διαγραφή (Τ,x): σήμανση της θέσης του x ως διαγεγραμμένης. Η αναζήτηση αντιπαρέρχεται τέτοιες θέσεις. Ο χρόνος εκτέλεσης δεν εξαρτάται από τον συντελεστή πληρότητας! Μέθοδος Μεταβλητών Διευθύνσεων (Ανοιχτή Διευθυνσιοδότηση)

TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A AA A A seal frog tiger bat dog T Εισαγωγή “zebra”  κλειδί k puma rabbit zebra

Μέθοδος Μεταβλητών Διευθύνσεων (Ανοιχτή Διευθυνσιοδότηση) TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A AA A A seal frog tiger bat dog T Εισαγωγή “zebra”  κλειδί k puma rabbit zebra

Μέθοδος Μεταβλητών Διευθύνσεων (Ανοιχτή Διευθυνσιοδότηση) TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A AA A A zebra seal frog tiger bat dog T Εισαγωγή “zebra”  κλειδί k puma rabbit zebra

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

Η συνάρτηση διασποράς αντιστοιχεί σε κάθε κλειδί μία ακολουθία από διευθύνσεις του πίνακα Τ βολιδοσκοπική ακολουθία Συνάρτηση Διασποράς μετάθεση της Υπόθεση της ομοιόμορφης διασποράς : η βολιδοσκοπική ακολουθία κάθε κλειδιού είναι μία τυχαία μετάθεση της Δύσκολο να υλοποιηθεί! Μέθοδος Μεταβλητών Διευθύνσεων (Ανοιχτή Διευθυνσιοδότηση)

Γραμμική Βολιδοσκόπηση βοηθητική συνάρτηση διασποράς

Γραμμική Βολιδοσκόπηση βοηθητική συνάρτηση διασποράς Μέθοδος Μεταβλητών Διευθύνσεων (Ανοιχτή Διευθυνσιοδότηση) zebra seal frog tiger bat zebra dog T puma rabbit zebra

Μέθοδος Μεταβλητών Διευθύνσεων (Ανοιχτή Διευθυνσιοδότηση) Γραμμική Βολιδοσκόπηση βοηθητική συνάρτηση διασποράς Δίνει μόνο m ακολουθίες Αν i διαδοχικές θέσεις είναι κατειλημμένες τότε η πιθανότητα να συμπληρωθεί η επόμενη είναι Πρωτεύουσα ομαδοποίηση : οι μακριές αλληλουχίες τείνουν να επεκτείνονται

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

Μέθοδος Μεταβλητών Διευθύνσεων (Ανοιχτή Διευθυνσιοδότηση) Διπλή Διασπορά βοηθητικές συναρτήσεις διασποράς

Μέθοδος Μεταβλητών Διευθύνσεων (Ανοιχτή Διευθυνσιοδότηση) Διπλή Διασπορά βοηθητικές συναρτήσεις διασποράς Πρέπει και να είναι αμοιβαία πρώτοι π.χ. μπορούμε να έχουμε ίσο με μία δύναμη του 2 και περιττό μετάθεση της

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

Μέθοδος Μεταβλητών Διευθύνσεων (Ανοιχτή Διευθυνσιοδότηση) Υπόθεση της ομοιόμορφης διασποράς : η βολιδοσκοπική ακολουθία κάθε κλειδιού είναι μία τυχαία μετάθεση της Θεώρημα Το αναμενόμενο πλήθος βολιδοσκοπήσεων είναι το πολύ : Συντελεστής πληρότητας. Για τη μέθοδο των μεταβλητών διευθύνσεων έχουμε σε μία επιτυχή αναζήτηση σε μία ανεπιτυχή αναζήτηση Π.χ. Για α=0.9 έχουμε U=10 και S=2.558 Για α=0.5 έχουμε U=2 και S=1.386

Μέθοδος Μεταβλητών Διευθύνσεων (Ανοιχτή Διευθυνσιοδότηση) Υπόθεση της ομοιόμορφης διασποράς : η βολιδοσκοπική ακολουθία κάθε κλειδιού είναι μία τυχαία μετάθεση της Αν ισχύει η υπόθεση ομοιόμορφης διασποράς, τότε η πιθανότητα η j -οστή βολιδοσκόπηση να βρει κατειλημμένη θέση δεδομένου ότι οι πρώτες (j-1) πράξεις βολιδοσκόπησης βρήκαν κατειλημμένες θέσεις είναι Άρα η πιθανότητα να χρειαστούν τουλάχιστον βολιδοσκοπήσεις είναι Επομένως, το αναμενόμενο πλήθος βολιδοσκοπήσεων σε ανεπιτυχή αναζήτηση είναι

Μέθοδος Μεταβλητών Διευθύνσεων (Ανοιχτή Διευθυνσιοδότηση) Υπόθεση της ομοιόμορφης διασποράς : η βολιδοσκοπική ακολουθία κάθε κλειδιού είναι μία τυχαία μετάθεση της Το αναμενόμενο πλήθος προσπελάσεων σε επιτυχημένη αναζήτηση είναι ίσο με το αναμενόμενο πλήθος προσπελάσεων για την εισαγωγή κάθε ενός από τα n κλειδιά. Το αναμενόμενο πλήθος προσπελάσεων για την εισαγωγή του i -οστού κλειδιού είναι ίσο με το αναμενόμενο πλήθος προσπελάσεων σε μη επιτυχημένη αναζήτηση όταν έχουν ήδη εισαχθεί (i-1) κλειδιά. Επομένως: Ν-οστός αρμονικός αριθμός

Μέθοδος Μεταβλητών Διευθύνσεων (Ανοιχτή Διευθυνσιοδότηση) Υπόθεση της ομοιόμορφης διασποράς : η βολιδοσκοπική ακολουθία κάθε κλειδιού είναι μία τυχαία μετάθεση της Το αναμενόμενο πλήθος προσπελάσεων σε επιτυχημένη αναζήτηση είναι ίσο με το αναμενόμενο πλήθος προσπελάσεων για την εισαγωγή κάθε ενός από τα n κλειδιά. Το αναμενόμενο πλήθος προσπελάσεων για την εισαγωγή του i -οστού κλειδιού είναι ίσο με το αναμενόμενο πλήθος προσπελάσεων σε μη επιτυχημένη αναζήτηση όταν έχουν ήδη εισαχθεί (i-1) κλειδιά. Επομένως:

Ταξινομημένοι Πίνακες Διασποράς Αν τα κλειδιά είναι ταξινομημένα έχουμε μείωση του χρόνου για αποτυχημένες αναζητήσεις: Αν ένα μεγαλύτερο κλειδί από το ζητούμενο k προσπελαστεί τερματίζει η αναζήτηση. Μέθοδος με Αλυσίδες Διατηρούμε τα κλειδιά στις αλυσίδες ταξινομημένα. Μέθοδος Ανοικτής Διευθυνσιοδότησης Τα κλειδιά πρέπει να εισαχθούν έτσι ώστε τα κλειδιά που προηγούνται στην ακολουθία αναζήτησης από το k, θα πρέπει να είναι μικρότερα από το k. Ιδέα Αν στην ακολουθία αναζήτησης για το κλειδί k δούμε κλειδί k’>k, τότε αντικαθιστούμε το k’ με το k και συνεχίζουμε με την εισαγωγή του k’ βάσει της ακολουθίας αναζήτησης του k’.

Ταξινομημένοι Πίνακες Διασποράς Η τελική μορφή του πίνακα διασποράς μετά τις εισαγωγές των κλειδιών είναι η ίδια ανεξάρτητα από τη σειρά εισαγωγής των κλειδιών. Υπόθεση Η πιθανότητα να επιλεγεί ένα συγκεκριμένο κλειδί από τον χώρο κλειδιών είναι η ίδια για όλα τα κλειδιά του χώρου. Τότε: Ο αναμενόμενος χρόνος για επιτυχημένη αναζήτηση δεν αλλάζει. Ο αναμενόμενος χρόνος για μη επιτυχημένη αναζήτηση γίνεται περίπου ίδιος με το χρόνο επιτυχημένης αναζήτησης.

Πλήρης Διασπορά Όταν το σύνολο των κλειδιών είναι στατικό μπορούμε να πετύχουμε άριστη επίδοση : O(1) χρόνο χειρότερης περίπτωσης ανά πράξη

Πλήρης Διασπορά k2k2 T 0 m-1 k1k1 k3k3 k4k4 K k1k1 k3k3 k4k4 k5k5 k2k2 k5k5 Όταν το σύνολο των κλειδιών είναι στατικό μπορούμε να πετύχουμε άριστη επίδοση : O(1) χρόνο χειρότερης περίπτωσης ανά πράξη Ιδέα: Διασπορά δύο επιπέδων με χρήση καθολικής διασποράς ανά επίπεδο

Πλήρης Διασπορά k2k2 T 0 m-1 k1k1 k3k3 k4k4 K k1k1 k3k3 k4k4 k5k5 k2k2 k5k5 Όταν το σύνολο των κλειδιών είναι στατικό μπορούμε να πετύχουμε άριστη επίδοση : O(1) χρόνο χειρότερης περίπτωσης ανά πράξη Ιδέα: Διασπορά δύο επιπέδων με χρήση καθολικής διασποράς ανά επίπεδο 1 ο επίπεδο 2 ο επίπεδο : δευτερογενής πίνακας διασποράς για κάθεT[i]

Πλήρης Διασπορά k2k2 T 0 m-1 k1k1 k3k3 k4k4 K k1k1 k3k3 k4k4 k5k5 k2k2 k5k5 Όταν το σύνολο των κλειδιών είναι στατικό μπορούμε να πετύχουμε άριστη επίδοση : O(1) χρόνο χειρότερης περίπτωσης ανά πράξη Ιδέα: Διασπορά δύο επιπέδων με χρήση καθολικής διασποράς ανά επίπεδο 1 ο επίπεδο 2 ο επίπεδο : δευτερογενής πίνακας διασποράς για κάθεT[i] Στο 2 ο επίπεδο αποφεύγουμε τις συμπτώσεις

Πλήρης Διασπορά Συνάρτηση διασποράς 1ου επιπέδου : Παράδειγμα Συνάρτηση διασποράς 2ου επιπέδου :

Πλήρης Διασπορά πρωτογενής πίνακας διασποράς με θέσεις και συνάρτηση διασποράς δευτερογενής πίνακας διασποράς με θέσεις και συνάρτηση διασποράς Για να αποφύγουμε τις συγκρούσεις στο δεύτερο επίπεδο θα επιλέξουμε. Έστω ο συνολικός αριθμός κλειδιών και ο αριθμός των κλειδιών που αποθηκεύονται στον. Θα δείξουμε ότι για κατάλληλα επιλεγμένη ο αναμενόμενος χώρος που απαιτείται για τους δευτερογενείς πίνακες είναι

Πλήρης Διασπορά Επιλέγουμε την πρωτογενή συνάρτηση διασποράς από την καθολική οικογένεια. Επιλέγουμε κάθε δευτερογενή συνάρτηση διασποράς από την καθολική οικογένεια.

Πλήρης Διασπορά Θεώρημα Έστω ότι επιλέγουμε τυχαία μια συνάρτηση διασποράς από καθολική οικογένεια συναρτήσεων διασποράς. Αν αποθηκεύσουμε κλειδιά και το μέγεθος του πίνακα διασποράς είναι τότε η πιθανότητα να υπάρχει σύγκρουση είναι. Ο αριθμός των πιθανών συγκρούσεων είναι, όσα τα διαφορετικά ζεύγη κλειδιών. Από τον τρόπο επιλογής της προκύπτει ότι η πιθανότητα σύγκρουσης ενός ζεύγους κλειδιών είναι το πολύ. Άρα ο αναμενόμενος αριθμός συγκρούσεων είναι Από την ανισότητα του Markov έχουμε

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

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

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

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

Πλήρης Διασπορά Θεώρημα Έστω ότι επιλέγουμε τυχαία μια συνάρτηση διασποράς από καθολική οικογένεια συναρτήσεων διασποράς. Αν αποθηκεύσουμε κλειδιά και το μέγεθος του πίνακα διασποράς είναι τότε Άρα ο αναμενόμενος χώρος που απαιτείται για την αποθήκευση όλων των δευτερογενών πινάκων είναι Από την ανισότητα του Markov έχουμε Δηλαδή μπορούμε να βρούμε με λίγες δοκιμές μια κατάλληλη πρωτογενή συνάρτηση διασποράς.

Πλήρης Διασπορά Η τεχνική της πλήρους διασποράς μπορεί να επεκταθεί και σε δυναμικά σύνολα [Dietzfelbinger, Karlin, Mehlhorn, Meyer auf der Heide, Rohnert, and Tarjan, 1994] : αντισταθμιστίκο αναμενόμενο κόστος ανά εισαγωγή και διαγραφή.

Δυναμικοί Πίνακες Διασποράς Η απόδοση του κατακερματισμού επιδεινώνεται όσο αυξάνει ο συντελεστής Συντελεστής πληρότητας Επιπλέον στην μέθοδο των μεταβλητών διευθύνσεων πρέπει

Δυναμικοί Πίνακες Διασποράς Η απόδοση του κατακερματισμού επιδεινώνεται όσο αυξάνει ο συντελεστής Συντελεστής πληρότητας Επιπλέον στην μέθοδο των μεταβλητών διευθύνσεων πρέπει Για να αντιμετωπίσουμε το παραπάνω ζήτημα μπορούμε να διπλασιάσουμε το μέγεθος του πίνακα διασποράς κάθε φορά που ο συντελεστής φθάνει μία συγκεκριμένη τιμή (π.χ. 50% για τη μέθοδο των μεταβλητών διευθύνσεων) T’T’ T

Δυναμικοί Πίνακες Διασποράς Η απόδοση του κατακερματισμού επιδεινώνεται όσο αυξάνει ο συντελεστής Συντελεστής πληρότητας Επιπλέον στην μέθοδο των μεταβλητών διευθύνσεων πρέπει Για να αντιμετωπίσουμε το παραπάνω ζήτημα μπορούμε να διπλασιάσουμε το μέγεθος του πίνακα διασποράς κάθε φορά που ο συντελεστής φθάνει μία συγκεκριμένη τιμή (π.χ. 50% για τη μέθοδο των μεταβλητών διευθύνσεων) T’T’ T Παίρνει (αναμενόμενο) χρόνο γιατί όλα τα στοιχεία πρέπει να εισαχθούν στο νέο πίνακα. Ευτυχώς ο διπλασιασμός δε συμβαίνει συχνά, αποτελεί καλή λύση όταν μας ενδιαφέρει να είναι χαμηλό το μέσο κόστος ανά πράξη (σε αντίθεση με το κόστος χειρότερης περίπτωσης)