Advanced Data Indexing
|
|
- Κλειώ Λιάπης
- 8 χρόνια πριν
- Προβολές:
Transcript
1 Advanced Data Indexing (Προηγμένη ευρετηρίαση δεδομένων) Αναζήτηση Δέντρα (2 ο Μέρος)
2 Διαχρονικά -Δέντρα (Persistent -trees) Σε μερικές εφαρμογές βάσεων/δομών δεδομένων όπου γίνονται ενημερώσεις μας ενδιαφέρει η υποστήριξη ερωτημάτων που αφορούν και την τρέχουσα αλλά και προηγούμενες εκδόσεις της βάσης/δομής. multiversion databases multiversion structures Είδη Διαχρονικότητας: Μερική: Ενημερώνεται η τρέχουσα έκδοση μόνο (από όπου παίρνουμε την καινούργια έκδοση). Πλήρης: Μπορεί να γίνονται ενημερώσεις σε όλες τις εκδόσεις (πιο δύσκολη περίπτωση).
3 Μία Εύκολη Λύση Αντιγραφή ολόκληρης της δομής σε κάθε πράξη ενημέρωσης. Διατήρηση μίας δομής «προσπέλασης εκδοχών» (σε -Δέντρο) ενημέρωση Πλεονεκτήματα: i i+1 i+2 i i+1 i+2 I/O κόστος Ο(log N+Ζ/Β) για ερωτήματα περιοχής σε οποιαδήποτε έκδοση. I/O κόστος Ο(log N) για ερωτήματα αναζήτησης ή για μία ενημέρωση σε οποιαδήποτε έκδοση. Μειονεκτήματα: αν U το πλήθος των ενημερώσεων, τότε: O(UN/) χώρος. i+3
4 Μία πιο Αποδοτική Λύση Ιδέα: Αντί να κρατάμε αντίγραφα όλης της δομής, έχουμε μόνο μία δομή και σε κάθε στοιχείο της δομής προστίθεται και ένα «διάστημα ύπαρξής» του. Η αρχή του διαστήματος εκφράζει τη στιγμή της εισαγωγής του στην δομή (insert). Το τέλος του διαστήματος εκφράζει τη στιγμή της διαγραφής του από την δομή (delete). Αν τα στοιχεία είναι πολυδιάστατα και έχουμε ενημέρωση (update) σε κάποιες μόνο διαστάσεις ενός στοιχείου, μία λύση είναι να το διαγράψουμε και να το επανεισάγουμε ενημερωμένο (delete+insert). Η δομή θα πρέπει να είναι σύνθετη ώστε να διαχειρίζεται και τα διαστήματα ύπαρξης και τα ίδια τα στοιχεία. Λύση: Συνδυασμός ενός κατευθυνόμενου γράφου και ενός Β-Δέντρου.
5 Διαχρονικά -Δέντρα Ένα Διαχρονικό -Δέντρο με παράμετρο b (>16) αποτελείται από: Ένα Κατευθυνόμενο Γράφο T G όπου: Οι κόμβοι του περιέχουν στοιχεία με διαστήματα ύπαρξης. T Σε κάθε χρονική στιγμή t, οι κόμβοι με ζωντανά στοιχεία την στιγμή t (τα στοιχεία που έχουν την στιγμή t στο διάστημα ύπαρξής τους), διαμορφώνουν ένα -Δέντρο με παράμετρο φύλλων και διακλάδωσης b. Ένα -δένδρο T με παράμετρο φύλλων και διακλάδωσης b, που έχει φύλλα του τους κόμβους ρίζες (roots) του T G (κόμβοι με in-deg=0), ταξινομημένους ως προς τις χρονικές στιγμές της αρχής των διαστημάτων ύπαρξης (insert times). T G
6 Διαχρονικά -Δέντρα Αν θέσουμε b= τότε μπορούμε να σχηματίσουμε οποιαδήποτε έκδοση του διαχρονικού Β-Δέντρου με κόστος: Ο(log N+Z/Β) I/Oς. Για να κάνουμε ένα οποιοδήποτε ερώτημα τη χρονική στιγμή t: Βρίσκουμε τον κατάλληλο κόμβο ρίζα στο γράφημα T G χρησιμοποιώντας το T. Κάνουμε την αναζήτηση στο T G όπως σε ένα κανονικό Β-Δέντρο. T T G
7 Αποδοτική Ενημέρωση (της τελευταίας έκδοσης [current version]) Οι ενημερώσεις γίνονται όπως και στο απλό -Δέντρο. Όλα τα φύλλα περιέχουν από b/4 έως b στοιχεία. Για να έχουμε γραμμικό χώρο Ο(Ν/Β), θέτουμε b= και διατηρούμε τον εξής περιορισμό: Κάθε νέος κόμβος θα πρέπει να περιέχει μεταξύ 3/ και 7/ ζωντανά στοιχεία και καθόλου νεκρά στοιχεία: Στην κόκκινη περιοχή απαγορεύεται η εισαγωγή στοιχείων. Στην πράσινη περιοχή αποθηκεύονται τα ζωντανά στοιχεία ενώ οι κίτρινες περιοχές είναι περιοχές όπου προσωρινά μπορούμε να έχουμε στοιχεία αλλά το αποφεύγουμε. Ζωντανά στοιχεία είναι αυτά που είναι ενεργά μέχρι αυτή τη στιγμή. Τα νεκρά δεν υφίστανται στην τελευταία έκδοση.
8 Ένθεση (στην τρέχουσα έκδοση) Εύρεση του αντίστοιχου φύλλου u και ένθεση του στοιχείου Αν το u περιέχει +1 στοιχεία έχουμε Υπερχείλιση μπλοκ: Γίνεται Διάσπαση Εκδοχών (version split): Αντιγράφονται όλα τα x ζωντανά στοιχεία του u σε νέο κόμβο u, διαγράφεται ο δείκτης του u από την τρέχουσα έκδοση ενώ προστίθεται ο δείκτης του u. Αν x > 7/: Υπερχείλιση () Αν x < 3/: Υποχείλιση () Αν 3/ x 7/ τότε αναδρομικά ενημερώνεται ο πατέρας του u. u u
9 Ένθεση (στην τρέχουσα έκδοση) Υπερχείλιση (x > 7/) Διάσπαση u σε u και u με x/2 στοιχεία στον καθένα (3Β/<x/2 /2) Αναδρομική ενημέρωση parent(u): Διαγραφή δείκτη u και ένθεση δεικτών u και u Υποχείλιση (x < 3/) Συγχώνευση x στοιχείων με y ζωντανά στοιχεία από διάσπαση εκδοχών σε κάποιο αδερφό του (Β/2 x+y 11/) [/4+/4 x+y 3/+]. Αν x+y 7/ τότε (υπερχείλιση) διάσπαση σε κόμβους με (x+y)/2 στοιχεία ο καθένας (7Β/16 (x+y)/2 11/16) [(1/2)7/ x+y (1/2)11/]. Αναδρομική ενημέρωση parent(u): διαγραφή δύο δεικτών και ένθεση ενός/δύο δεικτών.
10 Διαγραφή (στην τρέχουσα έκδοση) Εύρεση αντίστοιχου φύλλου u, και διαγραφή του στοιχείου. Αν το u περιέχει x</4 ζωντανά στοιχεία: Υποχείλιση μπλοκ Διάσπαση εκδοχής: Ο u καταργείται: καινούργιος κόμβος u με x ζωντανά στοιχεία από u. Υποχείλιση (x < 3/): Συγχώνευση (διάσπαση εκδοχής) και πιθανώς διάσπαση (υπερχείλιση) Αναδρομική ενημέρωση parent(u): Διαγραφή δύο δεικτών και ένθεση ενός/δύο δεικτών
11 Το Διαχρονικό Β-Δέντρο Ένθεση Υπερχείλιση μπλοκ ΟΚ 0,0 Διαγραφή Υποχείλιση μπλοκ Διάσπαση Εκδοχής Διάσπαση Εκδοχής ΟΚ -1,+1 Υπερχείλιση Διάσπαση Υποχείλιση Συγχώνευση 1 ΟΚ -1, Υπερχείλιση Διάσπαση ΟΚ -2, ΟΚ -2,+2
12 Απόδοση Σε ένα άδειο διαχρονικό Β-Δέντρο μετά από N ενημερώσεις: Κάθε ένθεση ή διαγραφή απαιτεί Ο(log N) επαναζυγίσεις (ύψος). Σε κάθε πράξη επαναζύγισης ενός φύλλου το πολύ δύο νέα μπλοκ δημιουργούνται. Από τη στιγμή της δημιουργίας ενός νέου φύλλου απαιτούνται τουλάχιστον Β/ ενημερώσεις μέχρι να ξανασυμβεί νέα πράξη επαναζύγισης. Το πολύ 2N/(/) = 16Ν/Β = O(N/) φύλλα θα δημιουργηθούν. Στο αμέσως ανώτερο επίπεδο (1 ο 2 N ) θα γίνουν το πολύ 2 κόμβοι. 1 i+ 1 N ( ) 2 Στο επίπεδο i θα γίνουν το πολύ 2 κόμβοι. 1 i+ ( ) 1 Έτσι το σύνολο των κόμβων που θα δημιουργηθούν θα είναι: log N i N log i+ 1 N 16N 16 2 = ( ) + ( ) = O N / καθώς b=>16 1 i 1 i= 0 i= 0 Συνολικός απαιτούμενος χώρος γραμμικός: Ο(Ν/Β).
13 Απόδοση Διαχρονικού Β-Δέντρου Ενημέρωση: Ο(log N) Χώρος: O(N/) Έχει I/O κόστος αναζητήσεων: Ο(log N). Έχει I/O κόστος ερωτημάτων περιοχής: Ο(log N+Z/Β) T T G
14 Αποδοτική Κατασκευή -Δέντρων Είδαμε ότι η κατασκευή ενός οποιουδήποτε Β-Δέντρου με τη μέθοδο insertion-load, γίνεται εισάγοντας τα στοιχεία ένα-ένα. Για Ν στοιχεία όπου το κάθε ένα εισάγεται με κόστος O(log Β N) έχουμε συνολικό Ι/Ο κόστος: O(Nlog Β N) (μη βέλτιστο). Στο άλλο άκρο είδαμε ότι η μέθοδος bulk-load ταξινομεί όλα τα N στοιχεία στην δευτερεύουσα μνήμη, κατασκευάζει τα φύλλα και κτίζει το δέντρο από κάτω προς τα πάνω ανά επίπεδο, ώστε να πετύχει το βέλτιστο κόστος: N Αν όμως η δομή μας θέλουμε να είναι δυναμική; Αν έχουμε μεγάλο πλήθος ενημερώσεων; Αν έχουμε διαχρονικό δέντρο; N O( log M )
15 Αποδοτική Κατασκευή -Δέντρων Στις περιπτώσεις αυτές ακόμα και να κάνουμε για το αρχικό πλήθος στοιχείων bulk-load, σε κάθε νέα εισαγωγή ή γενικά ενημέρωση (και θα είναι πολλές) θα πρέπει να πληρώνουμε Ι/Ο κόστος O(log Β N) και έτσι απομακρυνόμαστε σημαντικά από το βέλτιστο κόστος. Μπορούμε να έχουμε μία δυναμική δομή για χρήση σε αλγόριθμους με επιμερισμένο Ι/Ο κόστος: ( 1 N O log ) ανά ενημέρωση; M Τότε όσες ενημερώσεις και να γίνουν θα έχουμε αθροιστικά πάντα το βέλτιστο κόστος.
16 Δέντρο Ενδιάμεσης Μνήμης (ΕΜ-Δέντρο) Βασική Ιδέα: Καθυστέρηση στις ενημερώσεις ώστε να μην γίνονται μία προς μία αλλά ομαδικά. Χρήση Ενδιάμεσων Μνημών (uffers) στους κόμβους στους οποίους θα μαζεύονται οι ενημερώσεις με χρονολογική σειρά. Κάθε φορά που θα γίνεται μία ενημέρωση (π.χ. μία εισαγωγή) θα καταγράφεται απλά στον buffer της ρίζας. Μόλις γεμίσει ένας buffer τότε αυτός αδειάζει μεταφέροντας όλες τις ενημερώσεις στους αντίστοιχους buffers του παρακάτω επιπέδου. Αν κάποιος από αυτούς επίσης γεμίσει τότε η διαδικασία συνεχίζεται για όσα επίπεδα χρειαστεί αναδρομικά.
17 Δέντρο Ενδιάμεσης Μνήμης (ΕΜ-Δέντρο) Βασική Δομή: Για να εκμεταλλευτούμε την διαθέσιμη μνήμη θα πάρουμε -Δέντρο με παράμετρο διακλάδωσης b=μ/β και παράμετρο φύλλων k=β. Το μέγεθος των buffers θα είναι M. Τότε το άδειασμα ενός buffer απαιτεί O(M/) I/Oς. Σε Ν πλήθος ενημερώσεων, κάθε μπλοκ στοιχείων του δέντρου συμμετέχει σταθερό αριθμό φορών: O( 1 log Συνεπώς το συνολικό κόστος I/O είναι: M N N N O( log M ) )
18 Το Βασικό ΕΜ-Δέντρο Ορισμός: -Δέντρο με παράμετρο διακλάδωσης Μ/Β και παράμετρο φύλλων Β. Κάθε εσωτερικός κόμβος έχει buffer μεγέθους M. βαθμός M $m$ blocks M στοιχεία O(log ) M N Ενημερώσεις: Προστίθεται χρονική ετικέτα (time stamp) για κάθε ένθεση/διαγραφή στοιχείου, καθώς και το είδος της ενημέρωσης. Οι ενημερώσεις προωθούνται αρχικά προς τον buffer της ρίζας.
19 Το Βασικό ΕΜ-Δέντρο Όταν μαζευτούν στοιχεία προς ενημέρωση (εισαγωγή/διαγραφή) στην κύρια μνήμη τότε εισάγονται στον buffer της ρίζας. Αν ο buffer αυτός περιέχει παραπάνω από Μ στοιχεία τότε ξεκινάει η διαδικασία αδειάσματός του (buffer-emptying process). Διαφορετικά αδειάζουν οι buffers των εσωτερικών κόμβων που έχουν παιδιά άλλους εσωτερικούς (level>1) και διαφορετικά οι buffers των εσωτερικών κόμβων που έχουν παιδιά φύλλα (level=1).
20 Το Βασικό ΕΜ-Δέντρο Παρατηρήσεις: Ένας buffer μπορεί κατά τη διαδικασία αναδρομικών αδειασμάτων να έχει και περισσότερα από Μ στοιχεία προσωρινά (αν κατανεμηθούν από ανώτερα επίπεδα προς το ίδιο παιδί). Τα στοιχεία από την μνήμη κατανέμονται στα παιδιά ταξινομημένα. Όμως τα στοιχεία στον buffer δεν είναι απαραίτητα ταξινομημένα (το πολύ Μ στοιχεία αταξινόμητα). Συνεπώς πρώτα τα ταξινομούμε και μετά τα συγχωνεύουμε με τα ήδη ταξινομημένα της μνήμης. M $m$ blocks M
21 Άδειασμα ΕΜ Κόμβων (level>1) Φέρνουμε τα M (μη ταξινομημένα) στοιχεία από τον buffer στην μνήμη και τα ταξινομούμε. [O((M/)log M/ (M/)) = O(M/)] Τα συγχωνεύουμε με τα προηγούμενα στοιχεία της κύριας μνήμης (ήδη ταξινομημένα). [αν X (>M) όλα μαζί τότε: O(X/)] Καθώς διατρέχουμε την ταξινομημένη λίστα: Διαγράφουμε οποιαδήποτε ζεύγη ενημερώσεων που αφορούν ενθέσεις και μεταγενέστερες διαγραφές ιδίων στοιχείων (πριν την κατανομή). Κατανέμουμε τα στοιχεία στους buffers των παιδιών [Θ(M/)]. Αναδρομικά αδειάζουμε τους buffers των παιδιών (όπου είναι απαραίτητο). M $m$ blocks M Συνεπώς το άδειασμα ενός buffer απαιτεί συνολικά: O(X/+M/)=O(X/) I/Oς. (χωρίς τις αναδρομές)
22 Άδειασμα ΕΜ Κόμβων (level=1) Βασικός Περιορισμός: Το άδειασμα του buffer ενός κόμβου που έχει παιδιά φύλλα (επιπέδου 1) γίνεται μόνον όταν όλοι οι buffers των εσωτερικών κόμβων των ανωτέρω επιπέδων είναι άδειοι. Αυτό εξασφαλίζει ότι μπορούν να γίνουν τυχόν επαναζυγίσεις του δέντρου με αλλαγές στη δομή (splits/fuses) όταν δεν υπάρχουν «εκκρεμότητες». Μάλιστα οι επαναζυγίσεις γίνονται αφού γίνουν και οι τελικές ενημερώσεις στα φύλλα, δηλαδή αφού αδειάσει και ο buffer του κόμβου επιπέδου 1. k
23 Άδειασμα ΕΜ Κόμβων (level=1) Έστω ότι ο κόμβος v επιπέδου 1 έχει k παιδιά (φύλλα) και πρέπει να αδειάσει ο buffer του. Τότε: Γίνεται ταξινόμηση των στοιχείων του buffer του v. [O(M/)] Διαγράφονται οποιαδήποτε ζεύγη ενημερώσεων που αφορούν ενθέσεις και μεταγενέστερες διαγραφές ιδίων στοιχείων (όπως και πριν). Προωθούνται και γίνονται οι αντίστοιχες ενημερώσεις στα στοιχεία των k φύλλων. [O(X/)] Αν λόγω των ενημερώσεων (π.χ. πολλών διαγραφών) δεν έχουμε αρκετά στοιχεία για να κρατήσουμε τα k φύλλα, τοποθετούμε προσωρινά ψεύτικα στοιχεία μέχρι να αδειάσουν όλοι οι buffer, μετά τα σβήνουμε ένα-ένα και καλούμε επαναζύγιση του δέντρου. Αν λόγω των ενημερώσεων (π.χ. πολλών ενθέσεων) έχουμε παραπάνω από τα στοιχεία που μπορούν να κρατήσουν τα k φύλλα, εισάγουμε αυτά που δεν χωρούν ένα-ένα στο δέντρο και καλούμε επαναζύγισή του. Συνεπώς το άδειασμα του buffer απαιτεί πάλι: O(X/) I/Oς. (αν X>M) k
24 Επαναζυγίσεις Βασικός Περιορισμός: Οι buffers των κόμβων στο μονοπάτι από τη ρίζα μέχρι τον κόμβο v που επαναζυγίζεται πρέπει να είναι άδειοι. Οι Διασπάσεις (splits) γίνονται όπως στο κανονικό Β-Δέντρο. Οι συγχωνεύσεις έχουν έναν επιπλέον περιορισμό: ο buffer του αδερφού κόμβου v πρέπει επίσης να αδειάσει πριν την συγχώνευσή του με τον v. v v v v v v
25 Απόδοση ΕΜ-Δέντρου Χωρίς τις επαναζυγίσεις το άδειασμα ενός buffer απαιτεί O(X/) I/Oς (μόνον όταν Χ>Μ) ή Ο(Μ/) I/Oς. Συνεπώς το άδειασμα όλων των buffers από τους γεμάτους κόμβους έχει Ι/Ο κόστος (χωρίς τις επαναζυγίσεις): N N O log M ) ( Μετά από Ν ενημερώσεις το συνολικό πλήθος των επαναζυγίσεων των εσωτερικών κόμβων του δέντρου είναι: N N N O log N ) O( log ) = N N ( b k b = ( M / ) M O( M log M Εφόσον κάθε τέτοια πράξη απαιτεί και Ο(Μ/) Ι/Ος για το άδειασμα του κάθε buffer, το συνολικό κόστος Ν ενημερώσεων με τις επαναζυγίσεις θα είναι: N O ( M ) ( N log N ) ( N O M M = O log M ) )
26 Ταξινόμηση με χρήση ΕΜ-Δέντρου Μία βασική εφαρμογή του ΕΜ-Δέντρου είναι η χρήση του για την ταξινόμηση Ν στοιχείων στην δευτερεύουσα μνήμη. Απαιτείται μόνο η υλοποίηση μίας διαδικασίας αδειάσματος όλων των buffers και η διάσχιση των στοιχείων των φύλλων. Διαδικασία: Εισάγονται τα Ν στοιχεία στο ΕΜ-Δέντρο. Το άδειασμα των buffers γίνεται με FS σειρά προτεραιότητας. Αναφέρονται τα ταξινομημένα στοιχεία διασχίζοντας τα φύλλα. Το συνολικό απαιτούμενο Ι/Ο κόστος είναι βέλτιστο: M $m$ blocks M N N O ( log M )
27 Άλλες Εφαρμογές ΕΜ-Δέντρου Υποστήριξη μαζικών ενημερώσεων με χρήση buffers μεγέθους M: Επιμερισμένο κόστος Ι/Ο ανά ενημέρωση: ( 1 N O log ) M N N Όλοι οι buffers αδειάζουν με κόστος Ι/Ο: O log M ) Υποστήριξη μαζικών ερωτημάτων περιοχής με Ι/Ο κόστος: ( 1 Z O log N + ) $m$ ανά ερώτημα. M Όλα τα στοιχεία αναφέρονται μετά το άδειασμα των buffers. Συνεπώς τα ερωτήματα δεν απαντώνται ένα-ένα αλλά μαζικά στο τέλος. Μερικά αποτελέσματα συγκεντρώνονται για όλα τα ερωτήματα κατά τη διαδικασία. ( blocks Χρησιμοποιώντας την τεχνική των buffers κατασκευάζεται ένα διαχρονικό Β-Δέντρο με: N N κόστος I/O. O ( log M ) Η ίδια τεχνική μπορεί να εφαρμοστεί και σε ουρές προτεραιότητας.
28 Highlights -Δέντρο O(N/) χώρος, O(log N) ενημέρωση, O(log N+Z/) ερώτημα περιοχής. Βαροζυγισμένο -Δέντρο Ω(w(v)) ενημερώσεις κάτω από τον v μεταξύ διαδοχικών πράξεων στον v. Διαχρονικό -Δέντρο Ερώτημα σε οποιαδήποτε εκδοχή: ΕΜ-Δέντρο O( 1 log Μαζικές ενημερώσεις με επιμερισμένο κόστος. M N )
29 ΤΕΛΟΣ 29
Advanced Data Indexing
Advanced Data Indexing (Προηγμένη ευρετηρίαση δεδομένων) Αναζήτηση Δέντρα ( ο Μέρος) Αναζήτηση (Searching) Η Αναζήτηση Searching (Αναζήτηση) ενός αντικειμένου μέσα από N ταξινομημένα αντικείμενα. Είναι
Προηγμένη Ευρετηρίαση Δεδομένων (ΠΜΣ) Ενδεικτικές ερωτήσεις-θέματα για την εξέταση της θεωρίας
Προηγμένη Ευρετηρίαση Δεδομένων (ΠΜΣ) Ενδεικτικές ερωτήσεις-θέματα για την εξέταση της θεωρίας 1. Πως δομούνται οι ιεραρχικές μνήμες; Αναφέρετε τα διάφορα επίπεδά τους από τον επεξεργαστή μέχρι τη δευτερεύουσα
Advanced Data Indexing
Advanced Data Indexing (Προηγμένη ευρετηρίαση δεδομένων) Μοντέλα - Αλγόριθμοι Ταξινόμηση Μοντέλα Δευτερεύουσας Μνήμης I/O Αποδοτικοί Αλγόριθμοι Οι εσωτερικές τεχνικές caching και prefetching των Η/Υ είναι
Διάλεξη 14: Δέντρα IV B Δένδρα. Διδάσκων: Παναγιώτης Ανδρέου
Διάλεξη 14: Δέντρα IV B Δένδρα Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: 2 3 Δένδρα, Εισαγωγή και άλλες πράξεις Άλλα Δέντρα: Β δένδρα, Β+ δέντρα, R δέντρα Διδάσκων: Παναγιώτης Ανδρέου ΕΠΛ231
Διάλεξη 14: Δέντρα IV - B-Δένδρα
ΕΠΛ231 Δομές Δεδομένων και Αλγόριθμοι 1 Διάλεξη 14: Δέντρα IV - B-Δένδρα Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: - 2-3 Δένδρα, Εισαγωγή και άλλες πράξεις - Άλλα Δέντρα: Β-δένδρα, Β+-δέντρα,
Τα δεδοµένα συνήθως αποθηκεύονται σε αρχεία στο δίσκο Για να επεξεργαστούµε τα δεδοµένα θα πρέπει αυτά να βρίσκονται στη
Ευρετήρια 1 Αρχεία Τα δεδοµένα συνήθως αποθηκεύονται σε αρχεία στο δίσκο Για να επεξεργαστούµε τα δεδοµένα θα πρέπει αυτά να βρίσκονται στη µνήµη. Η µεταφορά δεδοµένων από το δίσκο στη µνήµη και από τη
Δεντρικά Ευρετήρια. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1
Δεντρικά Ευρετήρια Βάσεις Δεδομένων 2017-2018 1 Δέντρα Αναζήτησης Ένα δέντρο αναζήτησης (search tree) τάξεως p είναι ένα δέντρο τέτοιο ώστε κάθε κόμβος του περιέχει το πολύ p - 1 τιμές αναζήτησης και ρ
Κεφ.11: Ευρετήρια και Κατακερματισμός
Κεφ.11: Ευρετήρια και Κατακερματισμός Database System Concepts, 6 th Ed. See www.db-book.com for conditions on re-use Κεφ. 11: Ευρετήρια-Βασική θεωρία Μηχανισμοί ευρετηρίου χρησιμοποιούνται για την επιτάχυνση
Ευρετήρια. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1
Ευρετήρια Ευαγγελία Πιτουρά 1 τιμή γνωρίσματος Ευρετήρια Ένα ευρετήριο (index) είναι μια βοηθητική δομή αρχείου που κάνει πιο αποδοτική την αναζήτηση μιας εγγραφής σε ένα αρχείο Το ευρετήριο καθορίζεται
Δεντρικά Ευρετήρια. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1
Δεντρικά Ευρετήρια 1 Δέντρα Αναζήτησης Ένα δέντρο αναζήτησης (search tree) τάξεως p είναι ένα δέντρο τέτοιο ώστε κάθε κόμβος του περιέχει το πολύ p - 1 τιμές αναζήτησης και ρ δείκτες ως εξής P 1 K 1 P
ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΛΥΣΗ ΣΤΗΝ ΕΥΤΕΡΗ ΑΣΚΗΣΗ
ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΛΥΣΗ ΣΤΗΝ ΕΥΤΕΡΗ ΑΣΚΗΣΗ ΜΑΘΗΜΑ ΒΑΣΕΙΣ Ε ΟΜΕΝΩΝ ΑΚΑ. ΕΤΟΣ 2012-13 Ι ΑΣΚΟΝΤΕΣ Ιωάννης Βασιλείου Καθηγητής, Τοµέας Τεχνολογίας
Δεντρικά Ευρετήρια. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1
Δεντρικά Ευρετήρια Ευαγγελία Πιτουρά 1 Δέντρα Αναζήτησης Ένα δέντρο αναζήτησης (search tree) τάξεως p είναι ένα δέντρο τέτοιο ώστε κάθε κόμβος του περιέχει το πολύ p - 1 τιμές αναζήτησης και ρ δείκτες
Μπαλτάς Αλέξανδρος 21 Απριλίου 2015
ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ Η/Υ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΗΣ B- Trees Δομές Δεδομένων Μπαλτάς Αλέξανδρος 21 Απριλίου 2015 ampaltas@ceid.upatras.gr Περιεχόμενα 1. Εισαγωγή 2. Ορισμός B- tree 3. Αναζήτηση σε B- tree 4. Ένθεση σε
ΛΥΣΗ ΤΗΣ ΔΕΥΤΕΡΗΣ ΑΣΚΗΣΗΣ Όλγα Γκουντούνα
ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΜΑΘΗΜΑ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ΑΚΑΔ. ΕΤΟΣ 2011-12 ΔΙΔΑΣΚΟΝΤΕΣ Ιωάννης Βασιλείου Καθηγητής Τιμολέων Σελλής Καθηγητής Άσκηση 1
Διάλεξη 18: B-Δένδρα
Διάλεξη 18: B-Δένδρα Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Εισαγωγή & Ισοζυγισμένα Δένδρα 2-3 Δένδρα, Περιγραφή Πράξεων της Εισαγωγής και άλλες πράξεις Β-δένδρα Διδάσκων: Κωνσταντίνος
Δεντρικά Ευρετήρια. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1
Δεντρικά Ευρετήρια Βάσεις Δεδομένων 2013-2014 Ευαγγελία Πιτουρά 1 Δέντρα Αναζήτησης Ένα δέντρο αναζήτησης (search tree) τάξεως p είναι ένα δέντρο τέτοιο ώστε κάθε κόμβος του περιέχει το πολύ p - 1 τιμές
Δένδρα Αναζήτησης Πολλαπλής Διακλάδωσης
Δένδρα Αναζήτησης Πολλαπλής Διακλάδωσης Δένδρα στα οποία κάθε κόμβος μπορεί να αποθηκεύει ένα ή περισσότερα κλειδιά. Κόμβος με d διακλαδώσεις : k 1 k 2 k 3 k 4 d-1 διατεταγμένα κλειδιά d διατεταγμένα παιδιά
Οι βασικές λειτουργίες (ή πράξεις) που γίνονται σε μια δομή δεδομένων είναι:
ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ Μια δομή δεδομένων στην πληροφορική, συχνά αναπαριστά οντότητες του φυσικού κόσμου στον υπολογιστή. Για την αναπαράσταση αυτή, δημιουργούμε πρώτα ένα αφηρημένο μοντέλο στο οποίο προσδιορίζονται
ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ. Δοµές Δεδοµένων
ΟΝΟΜΑΤΕΠΩΝΥΜΟ: ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ AM: Δοµές Δεδοµένων Εξεταστική Ιανουαρίου 2014 Διδάσκων : Ευάγγελος Μαρκάκης 20.01.2014 ΥΠΟΓΡΑΦΗ ΕΠΟΠΤΗ: Διάρκεια εξέτασης : 2 ώρες και
Red-black δέντρα (Κεφ. 5)
Red-black δέντρα (Κεφ. ) Δομές Δεδομένων Παπαγιαννόπουλος Δημήτριος 30 Μαρτίου 07 30 Μαρτίου 07 papagianno@ceid.upatras.gr . Εισαγωγή Περιεχόμενα. Ορισμός red-black δέντρων 3. Αναζήτηση σε red-black δέντρα
Ερωτήσεις πολλαπλής επιλογής - Κεφάλαιο Κάθε δομή μπορεί να χρησιμοποιηθεί σε οποιοδήποτε πρόβλημα ή εφαρμογή
Ερωτήσεις πολλαπλής επιλογής - Κεφάλαιο 3 1. Κάθε δομή μπορεί να χρησιμοποιηθεί σε οποιοδήποτε πρόβλημα ή εφαρμογή 2. Δυναμικές είναι οι δομές που αποθηκεύονται σε συνεχόμενες θέσεις μνήμης 3. Ένας πίνακας
Ευρετήρια. Ευρετήρια. Βάσεις Δεδομένων 2009-2010: Ευρετήρια 1
Ευρετήρια 1 Ευρετήρια Ένα ευρετήριο (index) είναι μια βοηθητική δομή αρχείου που κάνει πιο αποδοτική την αναζήτηση μιας εγγραφής σε ένα αρχείο Το ευρετήριο καθορίζεται (συνήθως) σε ένα γνώρισμα του αρχείου
ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ
ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ Συστήματα Διαχείρισης Βάσεων Δεδομένων Άσκηση 1 Δημήτρης Πλεξουσάκης Τμήμα Επιστήμης Υπολογιστών HY460 Συστήματα Διαχείρισης Βάσεων Δεδομένων Διδάσκοντες: Δημήτρης
Ειδικά θέματα Αλγορίθμων και Δομών Δεδομένων (ΠΛΕ073) Απαντήσεις 1 ου Σετ Ασκήσεων
Ειδικά θέματα Αλγορίθμων και Δομών Δεδομένων (ΠΛΕ073) Απαντήσεις 1 ου Σετ Ασκήσεων Άσκηση 1 α) Η δομή σταθμισμένης ένωσης με συμπίεση διαδρομής μπορεί να τροποποιηθεί πολύ εύκολα ώστε να υποστηρίζει τις
Ευρετήρια. Ευρετήρια. Βάσεις Δεδομένων : Ευρετήρια 1
Ευρετήρια 1 Ευρετήρια Ένα ευρετήριο (index) είναι μια βοηθητική δομή αρχείου που κάνει πιο αποδοτική την αναζήτηση μιας εγγραφής σε ένα αρχείο Το ευρετήριο καθορίζεται (συνήθως) σε ένα γνώρισμα του αρχείου
Εξωτερική Αναζήτηση. Ιεραρχία Μνήμης Υπολογιστή. Εξωτερική Μνήμη. Εσωτερική Μνήμη. Κρυφή Μνήμη (Cache) Καταχωρητές (Registers) μεγαλύτερη ταχύτητα
Ιεραρχία Μνήμης Υπολογιστή Εξωτερική Μνήμη Εσωτερική Μνήμη Κρυφή Μνήμη (Cache) μεγαλύτερη χωρητικότητα Καταχωρητές (Registers) Κεντρική Μονάδα (CPU) μεγαλύτερη ταχύτητα Πολλές σημαντικές εφαρμογές διαχειρίζονται
Άσκηση 3 (ανακοινώθηκε στις 24 Απριλίου 2017, προθεσμία παράδοσης: 2 Ιουνίου 2017, 12 τα μεσάνυχτα).
Κ08 Δομές Δεδομένων και Τεχνικές Προγραμματισμού Διδάσκων: Μανόλης Κουμπαράκης Εαρινό Εξάμηνο 2016-2017. Άσκηση 3 (ανακοινώθηκε στις 24 Απριλίου 2017, προθεσμία παράδοσης: 2 Ιουνίου 2017, 12 τα μεσάνυχτα).
Επιµέλεια Θοδωρής Πιερράτος
εδοµένα οµές δεδοµένων και αλγόριθµοι Τα δεδοµένα είναι ακατέργαστα γεγονότα. Η συλλογή των ακατέργαστων δεδοµένων και ο συσχετισµός τους δίνει ως αποτέλεσµα την πληροφορία. Η µέτρηση, η κωδικοποίηση,
Αλγόριθμοι και Δομές Δεδομένων (Ι) (εισαγωγικές έννοιες)
Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 2015-16 Αλγόριθμοι και Δομές Δεδομένων (Ι) (εισαγωγικές έννοιες) http://di.ionio.gr/~mistral/tp/csintro/ Μ.Στεφανιδάκης Τι είναι
Εισαγωγή στην Επεξεργασία Ερωτήσεων. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1
Εισαγωγή στην Επεξεργασία Ερωτήσεων Βάσεις Δεδομένων 2013-2014 Ευαγγελία Πιτουρά 1 Επεξεργασία Ερωτήσεων Θα δούμε την «πορεία» μιας SQL ερώτησης (πως εκτελείται) Ερώτηση SQL Ερώτηση ΣΒΔ Αποτέλεσμα Βάσεις
Ταξινόμηση. Σαλτογιάννη Αθανασία
Ταξινόμηση Σαλτογιάννη Αθανασία Ταξινόμηση Ταξινόμηση Τι εννοούμε όταν λέμε ταξινόμηση; Ταξινόμηση Τι εννοούμε όταν λέμε ταξινόμηση; Ποια είδη αλγορίθμων ταξινόμησης υπάρχουν; Ταξινόμηση Τι εννοούμε όταν
Ταξινόμηση με συγχώνευση Merge Sort
Ταξινόμηση με συγχώνευση Merge Sort 7 2 9 4 2 4 7 9 7 2 2 7 9 4 4 9 7 7 2 2 9 9 4 4 Πληροφορικής 1 Διαίρει και Βασίλευε Η μέθοδος του «Διαίρει και Βασίλευε» είναι μια γενική αρχή σχεδιασμού αλγορίθμων
Αλγόριθμοι Ταξινόμησης Μέρος 4
Αλγόριθμοι Ταξινόμησης Μέρος 4 Μανόλης Κουμπαράκης Δομές Δεδομένων και Τεχνικές 1 Μέθοδοι Ταξινόμησης Βασισμένοι σε Συγκρίσεις Κλειδιών Οι αλγόριθμοι ταξινόμησης που είδαμε μέχρι τώρα αποφασίζουν πώς να
Τι είναι αλγόριθμος; Υποπρογράμματα (υποαλγόριθμοι) Βασικές αλγοριθμικές δομές
Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 2015-16 Αλγόριθμοι και Δομές Δεδομένων (Ι) (εισαγωγικές έννοιες) http://di.ionio.gr/~mistral/tp/csintro/ Μ.Στεφανιδάκης Τι είναι
Πληροφορική 2. Δομές δεδομένων και αρχείων
Πληροφορική 2 Δομές δεδομένων και αρχείων 1 2 Δομή Δεδομένων (data structure) Δομή δεδομένων είναι μια συλλογή δεδομένων που έχουν μεταξύ τους μια συγκεκριμένη σχέση Παραδείγματα δομών δεδομένων Πίνακες
Δυναμικός Κατακερματισμός. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1
Δυναμικός Κατακερματισμός Βάσεις Δεδομένων 2018-2019 1 Κατακερματισμός Πρόβλημα στατικού κατακερματισμού: Έστω Μ κάδους και r εγγραφές ανά κάδο - το πολύ Μ * r εγγραφές (αλλιώς μεγάλες αλυσίδες υπερχείλισης)
Δυναμικός Κατακερματισμός. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1
Δυναμικός Κατακερματισμός Βάσεις Δεδομένων 2017-2018 1 Κατακερματισμός Πρόβλημα στατικού κατακερματισμού: Έστω Μ κάδους και r εγγραφές ανά κάδο - το πολύ Μ * r εγγραφές (αλλιώς μεγάλες αλυσίδες υπερχείλισης)
Ενότητες 3 & 4: Δένδρα, Σύνολα & Λεξικά Ασκήσεις και Λύσεις
Ενότητες 3 & 4: Δένδρα, Σύνολα & Λεξικά Ασκήσεις και Λύσεις Άσκηση 1 Γράψτε μία αναδρομική συνάρτηση που θα παίρνει ως παράμετρο ένα δείκτη στη ρίζα ενός δυαδικού δένδρου και θα επιστρέφει το βαθμό του
Merge Sort (Ταξινόμηση με συγχώνευση) 6/14/2007 3:04 AM Merge Sort 1
Merge Sort (Ταξινόμηση με συγχώνευση) 7 2 9 4 2 4 7 9 7 2 2 7 9 4 4 9 7 7 2 2 9 9 4 4 6/14/2007 3:04 AM Merge Sort 1 Κύρια σημεία για μελέτη Το παράδειγμα του «διαίρει και βασίλευε» ( 4.1.1) Merge-sort
ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ
1 ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΚΕΦΑΛΑΙΟ 3ο: ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ ΚΑΙ ΑΛΓΟΡΙΘΜΟΙ ΜΕΡΟΣ 2 ο : ΣΤΟΙΒΑ & ΟΥΡΑ ΙΣΤΟΣΕΛΙΔΑ ΜΑΘΗΜΑΤΟΣ: http://eclass.sch.gr/courses/el594100/ ΣΤΟΙΒΑ 2 Μια στοίβα
Δυναμικός Κατακερματισμός. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1
Δυναμικός Κατακερματισμός Βάσεις Δεδομένων 2013-2014 Ευαγγελία Πιτουρά 1 Κατακερματισμός Τι αποθηκεύουμε στους κάδους; Στα παραδείγματα δείχνουμε μόνο την τιμή του πεδίου κατακερματισμού Την ίδια την εγγραφή
Δυναμικός Κατακερματισμός. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1
Δυναμικός Κατακερματισμός 1 Κατακερματισμός Τι αποθηκεύουμε στους κάδους; Στα παραδείγματα δείχνουμε μόνο την τιμή του πεδίου κατακερματισμού Την ίδια την εγγραφή (ως τρόπος οργάνωσης αρχείου) μέγεθος
ΚΕΦΑΛΑΙΟ 3 ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ ΚΑΙ ΑΛΓΟΡΙΘΜΟΙ
ΚΕΦΑΛΑΙΟ 3 ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ ΚΑΙ ΑΛΓΟΡΙΘΜΟΙ Τα δεδομένα (data) είναι η αφαιρετική αναπαράσταση της πραγματικότητας και συνεπώς μία απλοποιημένη όψη της. Η συλλογή των ακατέργαστων δεδομένων και ο συσχετισμός
Οργάνωση αρχείων: πως είναι τοποθετηµένες οι εγγραφές ενός αρχείου όταν αποθηκεύονται στο δίσκο
Κατακερµατισµός 1 Οργάνωση Αρχείων (σύνοψη) Οργάνωση αρχείων: πως είναι τοποθετηµένες οι εγγραφές ενός αρχείου όταν αποθηκεύονται στο δίσκο 1. Αρχεία Σωρού 2. Ταξινοµηµένα Αρχεία Φυσική διάταξη των εγγραφών
Δυναμικά Πολυεπίπεδα Ευρετήρια (Β-δένδρα) Μ.Χατζόπουλος 1
Δυναμικά Πολυεπίπεδα Ευρετήρια (Β-δένδρα) Μ.Χατζόπουλος 1 Α Β Γ Δ Ε Ζ Η Θ Ι Κ Λ Μ.Χατζόπουλος 2 Δένδρο αναζήτησης είναι ένας ειδικός τύπος δένδρου που χρησιμοποιείται για να καθοδηγήσει την αναζήτηση μιας
Εργαστήριο Τεχνολογίας Πολυμέσων & Γραφικών, Τ.Ε.Π Π.Μ, Μάθημα: Γραφικά με Η/Υ
ΓΡΑΦΙΚΑ Γέμισμα ΑΛΓΟΡΙΘΜΟΙ ΓΕΜΙΣΜΑΤΟΣ Για τις πλεγματικές οθόνες υπάρχουν: Αλγόριθμοι γεμίσματος:, που στηρίζονται στη συνάφεια των pixels του εσωτερικού ενός πολυγώνου Αλγόριθμοι σάρωσης: που στηρίζονται
Red- black δέντρα Εκτενείς Δομές Δεδομένων (Κεφ. 5)
ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ Η/Υ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΗΣ Red- black δέντρα Εκτενείς Δομές Δεδομένων (Κεφ. ) Δομές Δεδομένων Μπαλτάς Αλέξανδρος 4 Μαρτίου 0 ampaltas@ceid.upatras.gr Περιεχόμενα. Εισαγωγή. Ορισμός red- black
Δυναμική Διατήρηση Γραμμικής Διάταξης
Διατηρεί μια γραμμική διάταξη δυναμικά μεταβαλλόμενης συλλογής στοιχείων. Υποστηρίζει τις λειτουργίες: Εισαγωγή νέου στοιχείου y αμέσως μετά από το στοιχείο x. x y Διαγραφή στοιχείου y. y Έλεγχος της σειράς
Δομές Δεδομένων. Δημήτρης Μιχαήλ. Γραφήματα. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο
Δομές Δεδομένων Γραφήματα Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Γραφήματα Κατευθυνόμενο Γράφημα Ένα κατευθυνόμενο γράφημα G είναι ένα ζευγάρι (V, E) όπου V είναι ένα
Επεξεργασία Ερωτήσεων
Εισαγωγή στην Επεξεργασία Ερωτήσεων 1 Εισαγωγή ΣΔΒΔ Σύνολο από προγράµµατα για τη διαχείριση της ΒΔ Αρχεία ευρετηρίου Κατάλογος ΒΑΣΗ ΔΕΔΟΜΕΝΩΝ Αρχεία δεδοµένων συστήµατος Σύστηµα Βάσεων Δεδοµένων (ΣΒΔ)
Οργάνωση Βάσεων Βιοϊατρικών Δεδομένων Εξόρυξη Γνώσης Βιοϊατρικών Δεδομένων. Σεμινάριο 6: Δομές ευρετηρίων για αρχεία
Οργάνωση Βάσεων Βιοϊατρικών Δεδομένων Εξόρυξη Γνώσης Βιοϊατρικών Δεδομένων Σεμινάριο 6: Δομές ευρετηρίων για αρχεία Ευάγγελος Καρκαλέτσης, Αναστασία Κριθαρά, Γεώργιος Πετάσης Εργαστήριο Τεχνολογίας Γνώσεων
Βάσεις Δεδομένων ΙΙ Ενότητα 6
Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ιονίων Νήσων Βάσεις Δεδομένων ΙΙ Ενότητα 6: Δομές Ευρετηρίων - B-tree Το περιεχόμενο του μαθήματος διατίθεται με άδεια Creative Commons εκτός και αν αναφέρεται διαφορετικά
JDSL Java Data Structures Library
ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ Η/Υ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΗΣ JDSL Java Data Structures Library Δομές Δεδομένων Μπαλτάς Αλέξανδρος 24 Μαρτίου 2015 ampaltas@ceid.upatras.gr Εισαγωγή Η JDSL είναι μια βιβλιοθήκη ομών εδομένων σε
Κεφάλαιο 2. Η δομή δεδομένων Σωρός και η Ταξινόμηση Σωρού (The Heap data structure and Heapsort) Έκδοση 1.3, 14/11/2014
Κεφάλαιο 2 Η δομή δεδομένων Σωρός και η Ταξινόμηση Σωρού (The Heap data structure and Heapsort) Έκδοση 1.3, 14/11/2014 Χρησιμοποιήθηκε υλικό από τις αγγλικές διαφάνειες του Kevin Wayne. 1 Σωρός και Ταξινόμηση
έντρα Πολλαπλής ιακλάδωσης και (a, b)- έντρα
έντρα Πολλαπλής ιακλάδωσης και (a, b)- έντρα ηµήτρης Φωτάκης Τµήµα Μηχανικών Πληροφοριακών και Επικοινωνιακών Συστηµάτων έντρα Αναζήτησης Πολλαπλής ιακλάδωσης ( ΑΠ ) ΑΠ ή έντρα m-δρόµων: Σ Βάσεων εδοµένων.
Ουρές Προτεραιότητας: Υπενθύμιση. Σωροί / Αναδρομή / Ταξινόμηση. Υλοποίηση Σωρού. Σωρός (Εισαγωγή) Ορέστης Τελέλης
Ουρές Προτεραιότητας: Υπενθύμιση Σωροί / Αναδρομή / Ταξινόμηση Ορέστης Τελέλης telelis@unipi.gr Τμήμα Ψηφιακών Συστημάτων, Πανεπιστήμιο Πειραιώς (Abstract Data Type) με μεθόδους: Μπορεί να υλοποιηθεί με
Αλγόριθμοι και πολυπλοκότητα Συγχωνευτική Ταξινόμηση
ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ Αλγόριθμοι και πολυπλοκότητα Συγχωνευτική Ταξινόμηση Ιωάννης Τόλλης Τμήμα Επιστήμης Υπολογιστών Συγχωνευτική Ταξινόμηση (Merge Sort) 7 2 9 4 2 4 7 9 7 2 2 7 9 4
Κατανεμημένα Συστήματα Ι
Κατανεμημένα Συστήματα Ι Παναγιώτα Παναγοπούλου Χριστίνα Σπυροπούλου 8η Διάλεξη 8 Δεκεμβρίου 2016 1 Ασύγχρονη κατασκευή BFS δέντρου Στα σύγχρονα συστήματα ο αλγόριθμος της πλημμύρας είναι ένας απλός αλλά
Αλγόριθµοι και Πολυπλοκότητα
Αλγόριθµοι και Πολυπλοκότητα Ν. Μ. Μισυρλής Τµήµα Πληροφορικής και Τηλεπικοινωνιών, Πανεπιστήµιο Αθηνών Καθηγητής: Ν. Μ. Μισυρλής () Αλγόριθµοι και Πολυπλοκότητα Φεβρουαρίου 0 / ένδρα Ενα δένδρο είναι
ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ. Δομές Δεδομένων. Ιωάννης Γ. Τόλλης Τμήμα Επιστήμης Υπολογιστών Πανεπιστήμιο Κρήτης
ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ Δομές Δεδομένων Ιωάννης Γ. Τόλλης Τμήμα Επιστήμης Υπολογιστών Πανεπιστήμιο Κρήτης Χρηματοδότηση Το παρόν εκπαιδευτικό υλικό έχει αναπτυχθεί στα πλαίσια του εκπαιδευτικού
Ανάπτυξη εφαρμογών σε προγραμματιστικό περιβάλλον υποδειγματική διδασκαλία Κεφ. 3 Δομές Δεδομένων & αλγόριθμοι
Ανάπτυξη εφαρμογών σε προγραμματιστικό περιβάλλον υποδειγματική διδασκαλία Κεφ. 3 Δομές Δεδομένων & αλγόριθμοι Αραποστάθης Μάριος Καθηγητής Πληροφορικής Πειραματικού Λυκείου Βαρβακείου http://users.sch.gr/mariosarapostathis
έντρα ομές εδομένων 3ο εξάμηνο ιδάσκων: Χρήστος ουλκερίδης ιαφάνειες προσαρμοσμένες από το υλικό της Μαρίας Χαλκίδη
έντρα 2-3-4 ομές εδομένων 3ο εξάμηνο ιδάσκων: Χρήστος ουλκερίδης ιαφάνειες προσαρμοσμένες από το υλικό της Μαρίας Χαλκίδη Σημερινό Μάθημα 2-3-4 έντρα Ισοζυγισμένα δέντρα αναζήτησης έντρα αναζήτησης πολλαπλών
5. Απλή Ταξινόμηση. ομές εδομένων. Χρήστος ουλκερίδης. Πανεπιστήμιο Πειραιώς Σχολή Τεχνολογιών Πληροφορικής και Επικοινωνιών Τμήμα Ψηφιακών Συστημάτων
Πανεπιστήμιο Πειραιώς Σχολή Τεχνολογιών Πληροφορικής και Επικοινωνιών Τμήμα Ψηφιακών Συστημάτων 5. Απλή Ταξινόμηση 2 ομές εδομένων 4 5 Χρήστος ουλκερίδης Τμήμα Ψηφιακών Συστημάτων 11/11/2016 Εισαγωγή Η
Ευρετήρια. Ευρετήρια. Βάσεις εδοµένων :ευρετήρια 1
Ευρετήρια 1 Ευρετήρια Ένα ευρετήριο (index) είναι μια βοηθητική δομή αρχείου που κάνει πιο αποδοτική την αναζήτηση μιας εγγραφής σε ένα αρχείο Το ευρετήριο καθορίζεται (συνήθως) σε ένα γνώρισμα του αρχείου
Τα δεδομένα (περιεχόμενο) μιας βάσης δεδομένων αποθηκεύεται στο δίσκο
Κατακερματισμός 1 Αποθήκευση εδομένων (σύνοψη) Τα δεδομένα (περιεχόμενο) μιας βάσης δεδομένων αποθηκεύεται στο δίσκο Παραδοσιακά, μία σχέση (πίνακας/στιγμιότυπο) αποθηκεύεται σε ένα αρχείο Αρχείο δεδομένων
4. Συνδεδεμένες Λίστες
Πανεπιστήμιο Πειραιώς Σχολή Τεχνολογιών Πληροφορικής και Επικοινωνιών Τμήμα Ψηφιακών Συστημάτων 4. Συνδεδεμένες Λίστες 2 ομές εδομένων 4 5 Χρήστος ουλκερίδης Τμήμα Ψηφιακών Συστημάτων 10/11/2016 Εισαγωγή
Εισαγωγή στους Αλγορίθμους
Εισαγωγή στους Αλγορίθμους Ενότητα 5η Διδάσκων Χρήστος Ζαρολιάγκης Καθηγητής Τμήμα Μηχανικών Η/Υ & Πληροφορικής Πανεπιστήμιο Πατρών Email: zaro@ceid.upatras.gr Η Μέθοδος «Διαίρει & Βασίλευε» Η Μέθοδος
ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΑΣΚΗΣΗ ΔΕΥΤΕΡΗ
ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΑΣΚΗΣΗ ΔΕΥΤΕΡΗ ΜΑΘΗΜΑ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ΑΚΑΔ. ΕΤΟΣ 2007-2008 14.02.2008 EΠΙΣΤΡΕΦΕΤΑΙ ΔΙΔΑΣΚΩΝ Ιωάννης Βασιλείου, Καθηγητής,
Εισαγωγή στην Επεξεργασία Ερωτήσεων. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1
Εισαγωγή στην Επεξεργασία Ερωτήσεων 1 Επεξεργασία Ερωτήσεων Θα δούμε την «πορεία» μιας SQL ερώτησης (πως εκτελείται) Ερώτηση SQL Ερώτηση ΣΒΔ Αποτέλεσμα 2 Βήματα Επεξεργασίας Τα βασικά βήματα στην επεξεργασία
1η Σειρά Γραπτών Ασκήσεων
1/20 Ασυμπτωτικός Συμβολισμός, Αναδρομικές Σχέσεις 1η Σειρά Γραπτών Ασκήσεων Αλγόριθμοι και Πολυπλοκότητα ΣΗΜΜΥ, Εθνικό Μετσόβιο Πολυτεχνείο 1 Ασυμπτωτικός Συμβολισμός, Αναδρομικές Σχέσεις 2 3 4 5 2/20
Εξωτερική Ταξινόμηση. Μ.Χατζόπουλος 1
Εξωτερική Ταξινόμηση Μ.Χατζόπουλος 1 Γιατί είναι απαραίτητη; Κλασσικό Πρόβλημα της Πληροφορικής Πολλές φορές θέλουμε να παρουσιάσουμε δεδομένα σε ταξινομημένη μορφή Είναι σημαντική για την απαλοιφή διπλοτύπων
Πελάτες φθάνουν στο ταμείο μιας τράπεζας Eνα μόνο ταμείο είναι ανοικτό Κάθε πελάτης παρουσιάζεται με ένα νούμερο - αριθμός προτεραιότητας Όσο ο
Ουρές προτεραιότητας Πελάτες φθάνουν στο ταμείο μιας τράπεζας Eνα μόνο ταμείο είναι ανοικτό Κάθε πελάτης παρουσιάζεται με ένα νούμερο - αριθμός προτεραιότητας Όσο ο αριθμός είναι μεγάλος, τόσο οι πελάτες
Βάσεις εδοµένων Ευαγγελία Πιτουρά 2
Ευρετήρια Βάσεις εδοµένων 2002-2003 Ευαγγελία Πιτουρά 1 Ευρετήρια Ένα ευρετήριο (index) είναι µια βοηθητική δοµή αρχείου που κάνει πιο αποδοτική την αναζήτηση µιας εγγραφής σε ένα αρχείο Το ευρετήριο καθορίζεται
Για παράδειγμα η αρχική και η τελική κατάσταση αναπαριστώνται ως εξής: (ένα λίτρο)
8 1 η ΕΡΓΑΣΙΑ ΣΤΟ ΜΑΘΗΜΑ ΤΕΧΝΗΤΗ ΝΟΗΜΟΣΥΝΗ Απάντηση 1ης άσκησης Κατάσταση (κόμβοι): Αναπαριστούμε μια κατάσταση του προβλήματος με ένα διατεταγμένο ζεύγος (X,Y) όπου X είναι τα λίτρα στο βάζο Α (χωρητικότητα
Κεφάλαιο 10 Ψηφιακά Λεξικά
Κεφάλαιο 10 Ψηφιακά Λεξικά Περιεχόμενα 10.1 Εισαγωγή... 213 10.2 Ψηφιακά Δένδρα... 214 10.3 Υλοποίηση σε Java... 222 10.4 Συμπιεσμένα και τριαδικά ψηφιακά δένδρα... 223 Ασκήσεις... 225 Βιβλιογραφία...
Copyright 2007 Ramez Elmasri and Shamkant B. Navathe, Ελληνική Έκδοση, Δίαβλος, Επιμέλεια Μ.Χατζόπουλος Διαφάνεια 14-1
Δίαβλος, Επιμέλεια Μ.Χατζόπουλος Διαφάνεια 14-1 Κεφάλαιο 14 Δομές Ευρετηρίων για Αρχεία Copyright 2007 Ramez Elmasri and Shamkant B. Navathe Ελληνική Έκδοση, Διαβλος, Επιμέλεια Μ.Χατζόπουλος Θα μιλήσουμε
Διαχρονικές δομές δεδομένων
Διαχρονικές δομές δεδομένων Μια τυπική δομή δεδομένων μεταβάλλεται με πράξεις εισαγωγής ή διαγραφής Π.χ. κοκκινόμαυρο δένδρο εισαγωγή 0 18 0 5 39 73 1 46 6 80 Αποκατάσταση ισορροπίας 5 39 73 0 46 6 80
Δομές Δεδομένων. Δημήτρης Μιχαήλ. Ουρές Προτεραιότητας. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο
Δομές Δεδομένων Ουρές Προτεραιότητας Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ουρά Προτεραιότητας Το πρόβλημα Έχουμε αντικείμενα με κλειδιά και θέλουμε ανά πάσα στιγμή
13/5/2015 ΟΥΡΕΣ ΠΡΟΤΕΡΑΙΟΤΗΤΑΣ. Δομές Δεδομένων. Ουρές Προτεραιότητας
ΟΥΡΕΣ ΠΡΟΤΕΡΑΙΟΤΗΤΑΣ Δομές Δεδομένων Τι θα δούμε Ουρές προτεραιότητας Πράξεις Διωνυμικές Ουρές Διωνυμικά Δέντρα Διωνυμικοί Σωροί Ουρές Fibonacci Αναπαράσταση Πράξεις Ανάλυση Συγκρίσεις Ουρές προτεραιότητας
Κατακερματισμός (Hashing)
Κατακερματισμός (Hashing) O κατακερματισμός είναι μια τεχνική οργάνωσης ενός αρχείου. Είναι αρκετά δημοφιλής μέθοδος για την οργάνωση αρχείων Βάσεων Δεδομένων, καθώς βοηθάει σημαντικά στην γρήγορη αναζήτηση
ΕΠΛ 231 Δοµές Δεδοµένων και Αλγόριθµοι 8-1
B-Δένδρα Στην ενότητα αυτή θα µελετηθούν τα εξής επιµέρους θέµατα: 2-3 Δένδρα, Υλοποίηση και πράξεις Β-δένδρα ΕΠΛ 231 Δοµές Δεδοµένων και Αλγόριθµοι 8-1 2-3 Δένδρα Γενίκευση των δυαδικών δένδρων αναζήτησης.
Δομές Δεδομένων (Data Structures)
Δομές Δεδομένων (Data Structures) Γραμμικές Λίστες Βασικές Έννοιες Βασικές Έννοιες. Αναπαράσταση με τύπο και με δείκτη. Γραμμικές Λίστες. Βασικές Λειτουργίες. Δομές Δεδομένων: Βασικές Έννοιες Αντικείμενο
Θεωρία Γραφημάτων 6η Διάλεξη
Θεωρία Γραφημάτων 6η Διάλεξη Α. Συμβώνης Εθνικο Μετσοβειο Πολυτεχνειο Σχολη Εφαρμοσμενων Μαθηματικων και Φυσικων Επιστημων Τομεασ Μαθηματικων Φεβρουάριος 2016 Α. Συμβώνης (ΕΜΠ) Θεωρία Γραφημάτων 6η Διάλεξη
Διάλεξη 22: Δυαδικά Δέντρα. Διδάσκων: Παναγιώτης Ανδρέου
Διάλεξη 22: Δυαδικά Δέντρα Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: - Δυαδικά Δένδρα - Δυαδικά Δένδρα Αναζήτησης - Πράξεις Εισαγωγής, Εύρεσης Στοιχείου, Διαγραφής Μικρότερου Στοιχείου
I 1 I 2 I 3 I 4 I 5 I 6 I 7 I 8 I 9 I 10 I 11
Αλγόριθμοι και Πολυπλοκότητα 2η Σειρά Γραπτών και Προγραμματιστικών Ασκήσεων CoReLab ΣΗΜΜΥ - Ε.Μ.Π. Δεκέμβριος 2016 (CoReLab - NTUA) Αλγόριθμοι - 2η σειρά ασκήσεων Δεκέμβριος 2016 1 / 65 Outline 1 Άσκηση
Σύνοψη Προηγούμενου. Λίστες (Lists) Συνδεδεμένες Λίστες: Εισαγωγή (1/2) Συνδεδεμένες Λίστες. Ορέστης Τελέλης
Σύνοψη Προηγούμενου Λίστες (Lists) Ορέστης Τελέλης telelis@unipi.gr Τμήμα Ψηφιακών Συστημάτων, Πανεπιστήμιο Πειραιώς Στοίβες (Stacks) : στην κορυφή της στοίβας ( ) από την κορυφή της στοίβας ( ) Ουρές
Επεξεργασία Ερωτήσεων
Εισαγωγή Σ Β Σύνολο από προγράμματα για τη διαχείριση της Β Επεξεργασία Ερωτήσεων Αρχεία ευρετηρίου Κατάλογος συστήματος Αρχεία δεδομένων ΒΑΣΗ Ε ΟΜΕΝΩΝ Σύστημα Βάσεων εδομένων (ΣΒ ) Βάσεις Δεδομένων 2007-2008
Διάλεξη 16: Σωροί. Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: - Ουρές Προτεραιότητας - Ο ΑΤΔ Σωρός, Υλοποίηση και πράξεις
ΕΠΛ231 Δομές Δεδομένων και Αλγόριθμοι 1 Διάλεξη 16: Σωροί Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: - Ουρές Προτεραιότητας - Ο ΑΤΔ Σωρός, Υλοποίηση και πράξεις Ουρά Προτεραιότητας Η δομή
Δοµές Δεδοµένων. Αλγόριθµοι & Πολυπλοκότητα (Χειµώνας 2011) Ουρές Προτεραιότητας 2
Δοµές Δεδοµένων Αλγόριθµοι & Πολυπλοκότητα (Χειµώνας 2011) Ουρές Προτεραιότητας 2 Δοµές Δεδοµένων (Αναπαράσταση,) οργάνωση και διαχείριση συνόλων αντικειµένων για αποδοτική ενηµέρωση και ανάκτηση πληροφορίας.
Δένδρα. Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα:
Δένδρα Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Εισαγωγή σε δενδρικές δομές δεδομένων, ορισμοί, πράξεις και αναπαράσταση στη μνήμη ΔυαδικάΔένδρακαιΔυαδικάΔένδραΑναζήτησης ΕΠΛ 231 Δομές
Φροντιστήριο Αποθήκευση σε δίσκο, βασικές οργανώσεις αρχείων κατακερματισμός και δομές ευρετηρίων για αρχεία
ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Ι Φροντιστήριο 17-1-2011 Αποθήκευση σε δίσκο, βασικές οργανώσεις αρχείων κατακερματισμός και δομές ευρετηρίων για αρχεία Θεωρία Άτρακτος/αυλάκι : ομόκεντροι κύκλοι στον δίσκο Κύλινδρος:
Επεξεργασία Ερωτήσεων
Εισαγωγή Επεξεργασία Ερωτήσεων ΜΕΡΟΣ 1 Γενική Εικόνα του Μαθήματος 1. Μοντελοποίηση (Μοντέλο Ο/Σ, Σχεσιακό, Λογικός Σχεδιασμός) 2. Προγραμματισμός (Σχεσιακή Άλγεβρα, SQL) ημιουργία/κατασκευή Εισαγωγή εδομένων
Εισαγωγή στην Επιστήμη των Υπολογιστών
Εισαγωγή στην Επιστήμη των Υπολογιστών 4 ο εξάμηνο ΣΗΜΜΥ 4 η ενότητα: Γράφοι: προβλήματα και αλγόριθμοι Επιμέλεια διαφανειών: Στάθης Ζάχος, Άρης Παγουρτζής, Δημήτρης Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών
Επεξεργασία Ερωτήσεων
Εισαγωγή Επεξεργασία Ερωτήσεων Σ Β Βάση εδομένων Η ομή ενός ΣΒ Βάσεις Δεδομένων 2006-2007 Ευαγγελία Πιτουρά 1 Βάσεις Δεδομένων 2006-2007 Ευαγγελία Πιτουρά 2 Εισαγωγή Εισαγωγή ΜΕΡΟΣ 1 (Χρήση Σ Β ) Γενική
Κεφάλαιο 11 Ένωση Ξένων Συνόλων
Κεφάλαιο 11 Ένωση Ξένων Συνόλων Περιεχόμενα 11.1 Εισαγωγή... 227 11.2 Εφαρμογή στο Πρόβλημα της Συνεκτικότητας... 228 11.3 Δομή Ξένων Συνόλων με Συνδεδεμένες Λίστες... 229 11.4 Δομή Ξένων Συνόλων με Ανοδικά
Πανεπιστήμιο Πειραιώς Σχολή Τεχνολογιών Πληροφορικής και Επικοινωνιών Τμήμα Ψηφιακών Συστημάτων ομές εδομένων
Πανεπιστήμιο Πειραιώς Σχολή Τεχνολογιών Πληροφορικής και Επικοινωνιών Τμήμα Ψηφιακών Συστημάτων 6. Δυαδικά Δέντρα 2 ομές εδομένων 4 5 Χρήστος ουλκερίδης Τμήμα Ψηφιακών Συστημάτων 18/11/2016 Εισαγωγή Τα
ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ Φ Ρ Ο Ν Τ Ι Σ Τ Η Ρ Ι Ο 1 : ΤΑΞΙΝΟΜΗΣΗ Δ Ρ Ι Τ Σ Α Σ Η Λ Ι Α Σ Υ Π Ο Ψ Η Φ Ι Ο Σ Δ Ι Δ Α Κ Τ Ο Ρ Α Σ
ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ Φ Ρ Ο Ν Τ Ι Σ Τ Η Ρ Ι Ο 1 : ΤΑΞΙΝΟΜΗΣΗ Δ Ρ Ι Τ Σ Α Σ Η Λ Ι Α Σ Υ Π Ο Ψ Η Φ Ι Ο Σ Δ Ι Δ Α Κ Τ Ο Ρ Α Σ ΤΟ ΠΡΟΒΛΗΜΑ ΤΗΣ ΤΑΞΙΝΟΜΗΣΗΣ Ορισμός ταξινόμησης 2 Κατηγορίες αλγορίθμων ταξινόμησης
Insert (P) : Προσθέτει ένα νέο πρότυπο P στο λεξικό D. Delete (P) : Διαγράφει το πρότυπο P από το λεξικό D
Dynamic dictionary matching problem Έχουμε ένα σύνολο πρότυπων D = { P1, P2,..., Pk } oπου D το λεξικό και ένα αυθαίρετο κειμενο T [1,n] To σύνολο των πρότυπων αλλάζει με το χρόνο (ρεαλιστική συνθήκη).
ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ : ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΤΑΞΗ : Γ ΛΥΚΕΙΟΥ ΣΠΟΥΔΕΣ ΟΙΚΟΝΟΜΙΑΣ & ΠΛΗΡΟΦΟΡΙΚΗΣ ΔΙΑΓΩΝΙΣΜΑ ΠΕΡΙΟΔΟΥ : ΜΑΪΟΥ
ΑΡΧΗ 1ης ΣΕΛΙ ΑΣ ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ : ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΤΑΞΗ : Γ ΛΥΚΕΙΟΥ ΣΠΟΥΔΕΣ ΟΙΚΟΝΟΜΙΑΣ & ΠΛΗΡΟΦΟΡΙΚΗΣ ΔΙΑΓΩΝΙΣΜΑ ΠΕΡΙΟΔΟΥ : ΜΑΪΟΥ ΣΥΝΟΛΟ ΣΕΛΙΔΩΝ : 7 ΘΕΜΑ Α : Α1. Να
ΔΥΑΔΙΚΗ ΑΝΑΖΗΤΗΣΗ & ΤΑΞΙΝΟΜΗΣΗ ΜΕ ΣΥΓΧΩΝΕΥΣΗ
ΔΥΑΔΙΚΗ ΑΝΑΖΗΤΗΣΗ & ΤΑΞΙΝΟΜΗΣΗ ΜΕ ΣΥΓΧΩΝΕΥΣΗ (ΑΛΓΟΡΙΘΜΟΙ, Sanjoy Dasgupta, Christos Papadimitriou, Umesh Vazirani, σελ. 55-62 ΣΧΕΔΙΑΣΜΟΣ ΑΛΓΟΡΙΘΜΩΝ, Jon Kleinberg, Eva Tardos, Κεφάλαιο 5) Δυαδική αναζήτηση