Δομές Δεδομένων (Data Structures)

Slides:



Advertisements
Παρόμοιες παρουσιάσεις
Εισαγωγή στους Αλγόριθμους Ταξινόμησης
Advertisements

Γιάννης Σταματίου Μη αποδοτική αναδρομή και η δυναμική προσέγγιση Webcast 8.
Διαίρει-και-Βασίλευε
Αλγόριθμοι Ταξινόμησης
ΗΥ 150 – Προγραμματισμός Ξενοφών Ζαμπούλης 1 Δείκτες σε συναρτήσεις Δείκτης σε συνάρτηση – Περιέχει τη διεύθυνση του κώδικα της συνάρτησης – Ό π ως ένας.
Ταξινόμηση - Sorting.
ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΕΣ ΤΕΧΝΙΚΕΣ Διδάσκοντες:Γιάννης Μαΐστρος Στάθης Ζάχος Νίκος Παπασπύρου
Ενότητα 2.1 Αλγόριθμοι Ταξινόμησης O(n 2 ) & O(nlogn) Σχεδίαση & Ανάλυση Αλγορίθμων.
8-1 ΜΑΘΗΜΑ 8 ο Εισαγωγή στους Αλγόριθμους Ταξινόμησης.
ΔΙΟΙΚΗΤΙΚΗ ΛΟΓΙΣΤΙΚΗ Γεώργιος Βενιέρης Σάνδρα Κοέν.
105 ΠΡΟΤΨ – ΠΡΟΣΩΠΟΛΟΓΙΑ – ΤΕΧΝΙΚΗ ΨΙΜΥΘΙΩΣΗΣ ΜΑΘΗΜΑ 3)
Σπουδές και ανεργία των νέων, υπάρχουσα κατάσταση προοπτικές Εισηγητής: Κων/νος Αδριανουπολίτης Εκπαιδευτικός – Ερευνητής Πρόεδρος Ε.Ε.Τ.Ε.Κ.
ONLINE ΠΑΙΧΝΙΔΙΑ Παρουσιάζουν οι μαθητές: Γ Ι Ο Υ Λ Η Λ Ι Ο Υ Ν Η Ι Α Σ Ω Ν Α Σ Τ Α Σ Σ Η Σ.
Γ ΕΝΙΚΟ Ν ΟΣΟΚΟΜΕΙΟ Π ΑΙΔΩΝ «Η Α ΓΙΑ Σ ΟΦΙΑ » Θηβών & Παπαδιαμαντοπούλου, Γουδή.
Ενότητα 1 1 Πρότυπο κόστος. Τι είναι: –Πολύ σωστά και πολύ λεπτομερειακά υπολογισμένο προϋπολογιστικό κόστος Τι εκφράζει: –Στόχους που θα πρέπει να επιτευχθούν.
ZΕπίδοση αλγορίθμων zΠολυπλοκότητα αλγορίθμων Κεφάλαιο 5 : Ανάλυση Αλγορίθμων.
Τούλα Πατσάλη Διεύθυνση Διαρθρωτικών Ταμείων και Ταμείου Συνοχής Γραφείο Προγραμματισμού ΕΝΔΕΙΚΤΙΚΟ ΠΛΑΝΟ ΑΞΙΟΛΟΓΗΣΕΩΝ ΣΥΝΑΝΤΗΣΗ ΤΗΣ ΚΑΘΟΔΗΓΗΤΙΚΗΣ ΕΠΙΤΡΟΠΗΣ.
Α.Ε.Π.Π. ΟΠΤΙΚΟΠΟΙΗΜΕΝΗ ΠΑΡΟΥΣΙΑΣΗ ΤΗΣ ΤΑΞΙΝΟΜΗΣΗΣ ΠΙΝΑΚΑ ΜΕ ΤΗ ΜΕΘΟΔΟ ΤΗΣ ΦΥΣΣΑΛΙΔΑΣ (Bubble Sort) ΙΟΡΔΑΝΗΣ ΣΑΒΒΟΥΛΙΔΗΣ
Αλγόριθμοι Ταξινόμησης – Μέρος 4
Βασικές Έννοιες της Πληροφορικής
Φροντίδα Ψυχικά Πάσχοντος στο Σπίτι
Συγγραφή εργασιών Το επιστημονικό άρθρο.
10η Διάλεξη Ταξινόμηση E. Μαρκάκης
Διδάσκων: Δρ. Τσίντζα Παναγιώτα
Στρατηγική Έξυπνης Εξειδίκευσης (RISCrete)
Επιχειρησιακή Στρατηγική
Πολυτεχνική Σχολή: Κοσμητεια –Πεπραγμένα Ι Γ Μπάρτζης
Ορισμοί Ιεραρχικός Μη γραμμικός τύπος δεδομένων Γονέας – Παιδιά
ΜΥΥ105: Εισαγωγή στον Προγραμματισμό
ΟΙΚΟΝΟΜΙΚΗ ΔΙΑΧΕΙΡΙΣΗ ΈΡΓΩΝ
ΕΙΣΑΓΩΓΗ ΣΤΟΥΣ ΠΡΟΫΠΟΛΟΓΙΣΜΟΥΣ
Κεντρο πληροφορησησ ανεργων τησ γ.σ.ε.ε.(κεπεα)
SCRATCH Ενότητα: Ταξινόμηση Καλλιρρόη Δογάνη Ιωάννης Στάης.
«Δημότης Αμαρουσίου» η τεχνολογία στην υπηρεσία του Πολίτη
Αλγόριθμοι Ταξινόμησης – Μέρος 3
ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ & ΑΡΧΕΙΩΝ
ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ.
Σχολή Θετικών Επιστημών
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ
Νικήτας Σγούρος Μεταγλωττιστές Νικήτας Σγούρος
«Χαϊδάρι. Πώς ν΄ ανιστορήσει κανείς τα ανιστόρητα;» Θανάσης Μερεμέτης, εκπαιδευτικός, 8/4/1944. Επισκεφθήκαμε το Μπλογκ 15, την απομόνωση της φυλακής.
Νικήτας Σγούρος Μεταγλωττιστές Νικήτας Σγούρος
Ανάπτυξη εφαρμογής με οπτικοποιημένο περιβάλλον για τους αλγόριθμους ταξινόμησης και αναζήτησης ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΕ Γεωργιαδης νικολαοσ.
ΕΛΛΗΝΙΚΕΣ ΕΒΡΑΪΚΕΣ ΚΟΙΝΟΤΗΤΕΣ
Δημιουργία συστήματος υποστήριξης αποφάσεων και έλεγχο διαθεσιμότητας
‘Βασικές θεωρητικές προσεγγίσεις περιφερειακής ανάπτυξης/μείωσης των περιφερειακών ανισοτήτων και οι εφαρμογές τους σε περιόδους κρίσης-Παραδείγματα από.
ΠΡΟΣΦΟΡΕΣ ΙΟΥΝΙΟΥ 2017 ΝΕΑ ΠΡΟΙΟΝΤΑ έκπτωση 30%
11η Διάλεξη Ταξινόμηση Quicksort και Ιδιότητες Δέντρων Ε. Μαρκάκης
Ρητοί αριθμοί: μάθηση και διδασκαλία στην υποχρεωτική εκπαίδευση
το ολοκαύτωμα του Διστόμου
ΜΥΥ105: Εισαγωγή στον Προγραμματισμό
Βασικός Μηχανισμός Διωστήρα-Στοφάλου.
Εισαγωγή στην Επεξεργασία Ερωτήσεων
Φοιτητής: Τσακίρης Αλέξανδρος Επιβλέπων: Ευάγγελος Ούτσιος
Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον ΑΕΠΠ
Οι προοπτικές του αγροτικού τομέα στη Μεσσηνία
Διεθνής Ημέρα Μνήμης για τα θύματα του Ολοκαυτώματος
Πτυχιακή εργασία του Παύλου Παντικάκη (2468)
ΤΟ ΟΛΟΚΑΥΤΩΜΑ ΤΟΥ ΧΟΡΤΙΑΤΗ
Άσκηση 11 Κυτταρομετρία Ροής
Βασικές έννοιες (Μάθημα 1) Τίτλος: Μερικές βασικές έννοιες της Πληροφορικής 22/11/2018 Ξένιος Αντωνιάδης.
ΠΕΡΙΓΡΑΦΗ ΠΕΡΙΣΤΑΤΙΚΟΥ
Sắp thứ tự.
Συμβουλές Πωλήσεων Καλοκαίρι 2018 ON LINE Εκπαίδευση - Αύγουστος 2018.
Δομές Δεδομένων (Data Structures)
Αρχες διοικησησ & διαχειρισησ εργων
Αρχική Εκτίμηση Ετήσιου Οικονομικού Οφέλους Περιγραφή Δράσεων Βασικοί Στόχοι – Προσδοκώμενα Οφέλη Αρχική Εκτίμηση Ετήσιου.
Δομές Δεδομένων (Data Structures)
Φ. ΜΗΛΙΩΝΗ, Δ.Ν., Δ/ΝΤΡΙΑ ΝΠΙΔ ΕΠΑΝΟΔΟΣ
Mechanisms of myeloid TGF-β–mediated immunosuppressive function.
Μεταγράφημα παρουσίασης:

Δομές Δεδομένων (Data Structures) Διδάσκων: Αν. καθηγητής Χρήστος Μακρής 2610-996968 makri@ceid.upatras.gr Διδάσκων με βάση Π.Δ. 407: Ανδρέας Καναβός Kanavos@ceid.upatras.gr Διδάσκων (ΕΔΙΠ): Άρης Ηλίας aristeid@ceid.upatras.gr

ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ ΤΑΞΙΝΟΜΗΣΗ

ΤΟ ΠΡΟΒΛΗΜΑ ΤΗΣ ΤΑΞΙΝΟΜΗΣΗΣ Ορισμός ταξινόμησης Κατηγορίες αλγορίθμων ταξινόμησης ΜΗΧΑΝΙΚΩΝ Η/Υ & ΠΛΗΡΟΦΟΡΙΚΗΣ

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

Κατηγορίες αλγορίθμων ταξινόμησης Βάσει των πράξεων (συγκρίσεις) στο σύνολο S Βάσει της πληροφορίας εισόδου (επίτευξη καλύτερου χρόνου),π.χ. ακεραίων. Βάσει του χώρου αποθήκευσης της εισόδου - Κύριας Μνήμης (Internal Sorting) - Δευτερεύουσας Μνήμης (External Sorting) ΜΗΧΑΝΙΚΩΝ Η/Υ & ΠΛΗΡΟΦΟΡΙΚΗΣ

Αλγόριθμοι ταξινόμησης Βάσει συγκρίσεων Βάσει πληροφορίας εισόδου Φυσαλίδας (Bubble Sort) Σωρού (Heap Sort) Με συμβολή (Merge Sort) Εισαγωγής (Insertion Sort) Γρήγορη Ταξινόμηση (Quick Sort) Ταξινόμηση με μέτρηση (Counting Sort) Radix Sort Bucket Sort ΜΗΧΑΝΙΚΩΝ Η/Υ & ΠΛΗΡΟΦΟΡΙΚΗΣ

Δένδρο - Σωρός Είναι ένα πλήρες δυαδικό δένδρο που υποστηρίζει τις εξής βασικές λειτουργίες: Εύρεση ελαχίστου (ή μεγίστου) σε σταθερό χρόνο. Εισαγωγή στοιχείου σε χρόνο O(logn), όπου n το πλήθος των στοιχείων του σωρού. Διαγραφή ελαχίστου (ή μεγίστου) σε χρόνο O(logn). Να συγκρίνετε τους χρόνους αυτούς με τους αντίστοιχους του ταξινομημένου πίνακα.

Δένδρο - Σωρός Σωρός μεγίστων (maxHeap) Το δένδρο-σωρός μεγαλώνει από επάνω προς τα κάτω και από αριστερά προς τα δεξιά. Μόνο το τελευταίο επίπεδο μπορεί να μην είναι πλήρως συμπληρωμένο. Το στοιχείο ενός κόμβου είναι μεγαλύτερο από τα στοιχεία των παιδιών του. Το μέγιστο στοιχείο βρίσκεται πάντα στη ρίζα του δένδρου. 20 11 12 9 6 8 10 7

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

Δένδρο - Σωρός Αποθήκευση σωρού σε πίνακα 22 15 17 9 13 8 10 2 4 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 22 15 17 9 13 8 10 2 4 Τα παιδιά του κόμβου που βρίσκεται στη θέση i του πίνακα βρίσκονται στις θέσεις 2i και 2i+1. Ο γονέας του κόμβου που βρίσκεται στη θέση i του πίνακα βρίσκεται στη θέση i/2

Δένδρο - Σωρός Κατασκευή Ο πιο προφανής τρόπος κατασκευής ενός δένδρου-σωρού είναι να εισάγουμε τα στοιχεία ένα προς ένα. Εύκολα αποδεικνύεται ότι το κόστος της μεθόδου σε αριθμό συγκρίσεων είναι O(nlogn). Ένας πιο αποδοτικός τρόπος είναι να προχωρήσουμε στην κατασκευή «από κάτω προς τα επάνω» (bottom-up) έχοντας πρώτα κατασκευάσει ένα πλήρες δυαδικό δέντρο για τα στοιχεία προς εισαγωγή. Με τη μέθοδο αυτή, το κόστος πέφτει σε O(n) !

Δένδρο - Σωρός Ανάλυση κατασκευής bottom-up Παρατηρούμε ότι αριθμώντας τα επίπεδα του δένδρου από το 1 και από από κάτω προς τα επάνω, τότε στο επίπεδο k υπάρχουν το πολύ n/2k κόμβοι. Επόμένως κατά την κατασκευή έχουμε το πολύ n/22 στοιχεία που μετακινούνται το πολύ 1 θέση κάτω n/23 στοιχεία που μετακινούνται το πολύ 2 θέσεις κάτω n/24 στοιχεία που μετακινούνται το πολύ 3 θέσεις κάτω … … cost(n) = O(1*n/22 + 2*n/23 + 3*n/24 + …) = O((n/2)(1/2 + 2/22 + 3/23 + 4/24 + …)) = O(n)

Δένδρο - Σωρός Σωρός μεγίστων (maxHeap) Το δένδρο-σωρός μεγαλώνει από επάνω προς τα κάτω και από αριστερά προς τα δεξιά. Μόνο το τελευταίο επίπεδο μπορεί να μην είναι πλήρως συμπληρωμένο. Το στοιχείο ενός κόμβου είναι μεγαλύτερο από τα στοιχεία των παιδιών του. Το μέγιστο στοιχείο βρίσκεται πάντα στη ρίζα του δένδρου. 20 11 12 9 6 8 10 7

Ταξινόμηση Σωρού (Heap Sort) Βήμα 1: Από το μη ταξινομημένο σύνολο,επέλεξε το μεγαλύτερο στοιχείο, έστω m. Αφαίρεσέ το από το S και τοποθέτησε ως το μικρότερο(αριστερότερο) στοιχείο, ενός ταξινομημένου συνόλου O. Βήμα 2: S’ = S – {m}, ώστε η εύρεση του μεγαλύτερου στοιχείου του S’ να είναι αποδοτική. Βήμα 3: Θέσε S’ = S και πήγαινε στο βήμα 1. ΜΗΧΑΝΙΚΩΝ Η/Υ & ΠΛΗΡΟΦΟΡΙΚΗΣ

Ταξινόμηση Σωρού (Heap Sort) Η Ταξινόμηση Σωρού αποτελείται από δύο φάσεις: Φάση 1-Φάση Δόμησης: Μετατρέπω τον πίνακα 𝑺 = {𝒔1, 𝒔2, … , 𝒔𝒏} σε σωρό ξεκινώντας από την θέση 1. Φάση 2-Φάση Διαλογής: Διαλέγω και απομακρύνω το μεγαλύτερο στοιχείο, το οποίο θα το φέρω στην ρίζα του σωρού ή στο S[1]. Επαναλαμβάνω για τα υπόλοιπα στοιχεία φέρνοντας το μεγαλύτερο στοιχείο στην ρίζα ξεκινώντας πάλι από την θέση 1. Θέλω πάντα να διατηρείται η ιδιότητα του Σωρού, δηλ. τιμή(πατέρας(v))≥ τιμή(v) Ο αλγόριθμος ταξινόμησης σωρού, χρειάζεται O(nlogn) συγκρίσεις στη χειρότερη περίπτωση για να ταξινομήσει σύνολο n στοιχείων. ΜΗΧΑΝΙΚΩΝ Η/Υ & ΠΛΗΡΟΦΟΡΙΚΗΣ

1η ΦΑΣΗ Ι Α1 Α2 Α3 Α4 Α5 Α6 1 46 32 58 26 70 61 2 3 4 (σωρός) 46 32 58 26 70 61

1η ΦΑΣΗ Ι Α1 Α2 Α3 Α4 Α5 Α6 1 46 32 58 26 70 61 2 3 4 (σωρός) 46 32 61 26 70 58

1η ΦΑΣΗ Ι Α1 Α2 Α3 Α4 Α5 Α6 1 46 32 58 26 70 61 2 3 4 (σωρός) 46 70 61 26 32 58

1η ΦΑΣΗ Ι Α1 Α2 Α3 Α4 Α5 Α6 1 46 32 58 26 70 61 2 3 4 (σωρός) 70 46 61 26 32 58

(διατεταγμένος πίνακας) 2η ΦΑΣΗ Ν Α1 Α2 Α3 Α4 Α5 Α6 6(5) 70 46 61 26 32 58 5(4) 4(3) 3(2) 2(1) (διατεταγμένος πίνακας) 61 46 58 26 32 Διαγραφή 70

(διατεταγμένος πίνακας) 2η ΦΑΣΗ Ν Α1 Α2 Α3 Α4 Α5 Α6 6(5) 70 58 61 26 32 46 5(4) 4(3) 3(2) 2(1) (διατεταγμένος πίνακας) 58 46 32 26 Διαγραφή 61

(διατεταγμένος πίνακας) 2η ΦΑΣΗ Ν Α1 Α2 Α3 Α4 Α5 Α6 6(5) 70 58 61 26 32 46 5(4) 4(3) 3(2) 2(1) (διατεταγμένος πίνακας) 46 26 32 Διαγραφή 58

(διατεταγμένος πίνακας) 2η ΦΑΣΗ Ν Α1 Α2 Α3 Α4 Α5 Α6 6(5) 70 58 61 26 32 46 5(4) 4(3) 3(2) 2(1) (διατεταγμένος πίνακας) 32 26 Διαγραφή 46

(διατεταγμένος πίνακας) 2η ΦΑΣΗ Ν Α1 Α2 Α3 Α4 Α5 Α6 6(5) 70 58 61 26 32 46 5(4) 4(3) 3(2) 2(1) (διατεταγμένος πίνακας) 26 Διαγραφή 32

(διατεταγμένος πίνακας) 2η ΦΑΣΗ (τέλος) Ν Α1 Α2 Α3 Α4 Α5 Α6 6(5) 70 58 61 26 32 46 5(4) 4(3) 3(2) 2(1) (διατεταγμένος πίνακας)

Ταξινόμηση Σωρού (Heap Sort) 3 8 2 1 4 9 7 ΜΗΧΑΝΙΚΩΝ Η/Υ & ΠΛΗΡΟΦΟΡΙΚΗΣ

Ταξινόμηση Σωρού (Heap Sort) 3 8 2 1 4 9 7 3 8 2 1 4 9 7 ΜΗΧΑΝΙΚΩΝ Η/Υ & ΠΛΗΡΟΦΟΡΙΚΗΣ

Ταξινόμηση Σωρού (Heap Sort) 3 8 9 1 4 2 7 3 8 9 1 4 2 7 ΜΗΧΑΝΙΚΩΝ Η/Υ & ΠΛΗΡΟΦΟΡΙΚΗΣ

Ταξινόμηση Σωρού (Heap Sort) 9 8 3 1 4 2 7 9 8 3 1 4 2 7 ΜΗΧΑΝΙΚΩΝ Η/Υ & ΠΛΗΡΟΦΟΡΙΚΗΣ

Ταξινόμηση Σωρού (Heap Sort) 9 8 7 1 4 2 3 9 8 7 1 4 2 3 ΜΗΧΑΝΙΚΩΝ Η/Υ & ΠΛΗΡΟΦΟΡΙΚΗΣ

Ταξινόμηση Σωρού (Heap Sort) 3 8 7 1 4 2 3 8 7 1 4 2 9 ΜΗΧΑΝΙΚΩΝ Η/Υ & ΠΛΗΡΟΦΟΡΙΚΗΣ

Ταξινόμηση Σωρού (Heap Sort) 8 4 7 1 3 2 8 4 7 1 3 2 9 ΜΗΧΑΝΙΚΩΝ Η/Υ & ΠΛΗΡΟΦΟΡΙΚΗΣ

Γρήγορη Ταξινόμηση (Quick Sort) Παράδειγμα Έστω S = {43, 74, 22, 42, 54, 11, 63, 76, 32}, Pivot = 43 11 32 22 42 43 54 63 76 74 Right Left Οι δείκτες διασταυρώθηκαν οπότε εναλλάσσω τον οδηγό (pivot) με τον δείκτη Right. ΜΗΧΑΝΙΚΩΝ Η/Υ & ΠΛΗΡΟΦΟΡΙΚΗΣ

Κάτω όριο ταξινόμησης βάσει συγκρίσεων   ΜΗΧΑΝΙΚΩΝ Η/Υ & ΠΛΗΡΟΦΟΡΙΚΗΣ

Άποψη Δένδρου Απόφασης s1:s2 < = > s2:s3 s1:s3 < = > > 2,13 1,2,3 s1:s3 s2:s3 < = > < = > 1,3,2 3,1,2 2,3,1 3,2,1 Ταξινόμηση μεγέθους 3 S = {s1,s2,s3} ΜΗΧΑΝΙΚΩΝ Η/Υ & ΠΛΗΡΟΦΟΡΙΚΗΣ

Αλγοριθμοι Ταξινομησης βασιζομενοι σε συγκρισεις- Ταξινομηση Ακεραιων ΜΗΧΑΝΙΚΩΝ Η/Υ & ΠΛΗΡΟΦΟΡΙΚΗΣ

ΜΗΧΑΝΙΚΩΝ Η/Υ & ΠΛΗΡΟΦΟΡΙΚΗΣ Ταξινόμηση με Μέτρηση   ΜΗΧΑΝΙΚΩΝ Η/Υ & ΠΛΗΡΟΦΟΡΙΚΗΣ

ΜΗΧΑΝΙΚΩΝ Η/Υ & ΠΛΗΡΟΦΟΡΙΚΗΣ Ταξινόμηση με Μέτρηση   ΜΗΧΑΝΙΚΩΝ Η/Υ & ΠΛΗΡΟΦΟΡΙΚΗΣ

ΜΗΧΑΝΙΚΩΝ Η/Υ & ΠΛΗΡΟΦΟΡΙΚΗΣ Ταξινόμηση με Μέτρηση Παράδειγμα 1 2 3 4 5 6 7 8 Α 5 1 2 3 6 1 2 3 4 5 6 C 1 1 2 1 2 1 2 1 2 1 3 ΜΗΧΑΝΙΚΩΝ Η/Υ & ΠΛΗΡΟΦΟΡΙΚΗΣ

ΜΗΧΑΝΙΚΩΝ Η/Υ & ΠΛΗΡΟΦΟΡΙΚΗΣ Ταξινόμηση με Μέτρηση Παράδειγμα 1 2 3 4 5 6 7 8 Α 5 1 2 3 6 1 2 3 4 5 6 C 2 3 6 7 8 B 3 C 2 3 5 6 7 8 ΜΗΧΑΝΙΚΩΝ Η/Υ & ΠΛΗΡΟΦΟΡΙΚΗΣ

ΜΗΧΑΝΙΚΩΝ Η/Υ & ΠΛΗΡΟΦΟΡΙΚΗΣ Ταξινόμηση με Μέτρηση 1 2 3 4 5 6 7 8 Α 5 1 2 3 6 C 2 3 5 6 7 8 B 3 C 2 3 4 6 7 8 ΜΗΧΑΝΙΚΩΝ Η/Υ & ΠΛΗΡΟΦΟΡΙΚΗΣ

ΜΗΧΑΝΙΚΩΝ Η/Υ & ΠΛΗΡΟΦΟΡΙΚΗΣ 1 2 3 4 5 6 7 8 Α 5 1 2 3 6 C 2 3 4 6 7 8 B 3 6 C 2 3 4 6 7 ΜΗΧΑΝΙΚΩΝ Η/Υ & ΠΛΗΡΟΦΟΡΙΚΗΣ 44

ΜΗΧΑΝΙΚΩΝ Η/Υ & ΠΛΗΡΟΦΟΡΙΚΗΣ 1 2 3 4 5 6 7 8 Α 5 1 2 3 6 C 2 3 4 6 7 B 3 6 C 2 3 6 7 ΜΗΧΑΝΙΚΩΝ Η/Υ & ΠΛΗΡΟΦΟΡΙΚΗΣ 45

ΜΗΧΑΝΙΚΩΝ Η/Υ & ΠΛΗΡΟΦΟΡΙΚΗΣ 1 2 3 4 5 6 7 8 Α 5 1 2 3 6 C 2 3 4 6 7 B 3 6 C 2 3 6 7 ΜΗΧΑΝΙΚΩΝ Η/Υ & ΠΛΗΡΟΦΟΡΙΚΗΣ 46

ΜΗΧΑΝΙΚΩΝ Η/Υ & ΠΛΗΡΟΦΟΡΙΚΗΣ 1 2 3 4 5 6 7 8 Α 5 1 2 3 6 C 2 3 4 6 7 B 1 3 6 C 1 2 3 6 7 ΜΗΧΑΝΙΚΩΝ Η/Υ & ΠΛΗΡΟΦΟΡΙΚΗΣ 47

ΜΗΧΑΝΙΚΩΝ Η/Υ & ΠΛΗΡΟΦΟΡΙΚΗΣ 1 2 3 4 5 6 7 8 Α 5 1 2 3 6 C 1 2 3 6 7 B 1 3 6 C 2 3 6 7 ΜΗΧΑΝΙΚΩΝ Η/Υ & ΠΛΗΡΟΦΟΡΙΚΗΣ 48

ΜΗΧΑΝΙΚΩΝ Η/Υ & ΠΛΗΡΟΦΟΡΙΚΗΣ 1 2 3 4 5 6 7 8 Α 5 1 2 3 6 C 2 3 6 7 B 1 3 5 6 C 2 3 6 7 ΜΗΧΑΝΙΚΩΝ Η/Υ & ΠΛΗΡΟΦΟΡΙΚΗΣ 49

ΜΗΧΑΝΙΚΩΝ Η/Υ & ΠΛΗΡΟΦΟΡΙΚΗΣ Ταξινόμηση Radix   ΜΗΧΑΝΙΚΩΝ Η/Υ & ΠΛΗΡΟΦΟΡΙΚΗΣ

ΜΗΧΑΝΙΚΩΝ Η/Υ & ΠΛΗΡΟΦΟΡΙΚΗΣ Ταξινόμηση Radix   ΜΗΧΑΝΙΚΩΝ Η/Υ & ΠΛΗΡΟΦΟΡΙΚΗΣ

ΜΗΧΑΝΙΚΩΝ Η/Υ & ΠΛΗΡΟΦΟΡΙΚΗΣ Ταξινόμηση Radix Παράδειγμα L = {329,257,892,749,587,134,305}, d = 3 ψηφία , βάση = 10 B L 1 2 3 4 5 6 7 8 9 329 257 892 749 587 134 305 892 134 305 257 329 749 587 1 πέρασμα ΜΗΧΑΝΙΚΩΝ Η/Υ & ΠΛΗΡΟΦΟΡΙΚΗΣ

ΜΗΧΑΝΙΚΩΝ Η/Υ & ΠΛΗΡΟΦΟΡΙΚΗΣ Ταξινόμηση Radix Παράδειγμα L = {329,257,892,749,587,134,305} B L 1 2 3 4 5 6 7 8 9 892 134 305 257 587 329 749 305 329 134 749 257 587 892 2 πέρασμα ΜΗΧΑΝΙΚΩΝ Η/Υ & ΠΛΗΡΟΦΟΡΙΚΗΣ

ΜΗΧΑΝΙΚΩΝ Η/Υ & ΠΛΗΡΟΦΟΡΙΚΗΣ Ταξινόμηση Radix Παράδειγμα L = {329,257,892,749,587,134,305} B L 1 2 3 4 5 6 7 8 9 305 329 134 749 257 587 892 134 257 305 587 749 892 329 3 πέρασμα ΜΗΧΑΝΙΚΩΝ Η/Υ & ΠΛΗΡΟΦΟΡΙΚΗΣ

ΜΗΧΑΝΙΚΩΝ Η/Υ & ΠΛΗΡΟΦΟΡΙΚΗΣ Ταξινόμηση Radix Παράδειγμα L = {329,257,892,749,587,134,305} 134 257 305 329 587 749 892 Ταξινομημένη Λίστα ΜΗΧΑΝΙΚΩΝ Η/Υ & ΠΛΗΡΟΦΟΡΙΚΗΣ

ΜΗΧΑΝΙΚΩΝ Η/Υ & ΠΛΗΡΟΦΟΡΙΚΗΣ Ταξινόμηση Υβριδική   ΜΗΧΑΝΙΚΩΝ Η/Υ & ΠΛΗΡΟΦΟΡΙΚΗΣ

ΜΗΧΑΝΙΚΩΝ Η/Υ & ΠΛΗΡΟΦΟΡΙΚΗΣ Ταξινόμηση Υβριδική Παράδειγμα Α = {0.28,0.42,0.12,0,85,0.47,0.26,0.39,0.02,0.17,0.78} Α B 0.78 0.17 0.02 0.39 0.26 0.47 0.85 0.12 0.42 0.28 1 2 3 4 5 6 7 8 9 0.02 0.12 0.26 0.39 0.42 0.78 0.85 0.17 0.28 0.47 n = 10, k = 10 ΜΗΧΑΝΙΚΩΝ Η/Υ & ΠΛΗΡΟΦΟΡΙΚΗΣ

ΜΗΧΑΝΙΚΩΝ Η/Υ & ΠΛΗΡΟΦΟΡΙΚΗΣ Ταξινόμηση Υβριδική Παράδειγμα Α = {0.28,0.42,0.12,0,85,0.47,0.26,0.39,0.02,0.17,0.78} 0.02 0.12 0.17 0.26 0.28 0.39 0.42 0.47 0.78 0.85 Ταξινομημένη Λίστα ΜΗΧΑΝΙΚΩΝ Η/Υ & ΠΛΗΡΟΦΟΡΙΚΗΣ

ΜΕΡΟΣ Α ΤΑΞΙΝΟΜΗΣΗ ΣΤΗ ΔΕΥΤΕΡΕΥΟΥΣΑ ΜΝΗΜΗ ΜΕΡΟΣ Α ΤΑΞΙΝΟΜΗΣΗ ΣΤΗ ΔΕΥΤΕΡΕΥΟΥΣΑ ΜΝΗΜΗ

ΕΙΣΑΓΩΓΗ Όταν η χωρητικότητα της κύριας μνήμης δεν είναι ικανή να χωρέσει όλα τα δεδομένα που πρόκειται να ταξινομηθούν αναγκαζόμαστε να χρησιμοποιήσουμε τη δευτερεύουσα μνήμη (δίσκο,μαγνητικές ταινίες).

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

Εξωτερική Ταξινόμηση ΤΑΙΝΙΑ 1 AOS DMN AEX ΤΑΙΝΙΑ 2 IRT EGR LMP   ΤΑΙΝΙΑ 1 AOS DMN AEX ΤΑΙΝΙΑ 2 IRT EGR LMP ΤΑΙΝΙΑ 3 AGN GIN E

Εξωτερική Ταξινόμηση ΤΑΙΝΙΑ 4 AAGINORST ΤΑΙΝΙΑ 5 DEGGIMNNR ΤΑΙΝΙΑ 6   ΤΑΙΝΙΑ 4 AAGINORST ΤΑΙΝΙΑ 5 DEGGIMNNR ΤΑΙΝΙΑ 6 AEELMPX

Εξωτερική Ταξινόμηση Έστω Μ = 3, p = 3 Ακολουθία εισόδου προς ταξινόμηση (αγνοούμε τα κενά) “A SORTING AND MERGING EXAMPLE” Φάση B Οι p ταινίες (1-3) είναι οι ταινίες εισόδου και οι υπόλοιπες p (4-6) οι ταινίες εξόδου. Συγχώνευση:Οι ταινίες εισόδου(1-3) “ξανατυλίγονται” σε μία ταινία εξόδου, την Ταινία 1. Οι ταινίες εξόδου(4-6) γίνονται ταινίες εισόδου. Σαρώνουμε τα πρώτα στοιχεία της κάθε ταινίας και διώχνουμε το μικρότερο στην ταινία εξόδου.Στη θέση του στοιχείου που έφυγε ολισθαίνει το αμέσως επόμενο στοιχείο της ταινίας που αυτό ανήκει.