Κάθε καλώς ορισµένη υπολογιστική διαδικασία, η οποία καλείται να επιλύσει ένα συγκεκριµένο πρόβληµα εντός πεπερασµένου χρόνου.

Σχετικά έγγραφα
Δομές Δεδομένων & Αλγόριθμοι

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

Εισαγωγή στους Αλγόριθµους. Αλγόριθµοι. Ιστορικά Στοιχεία. Ο πρώτος Αλγόριθµος. Παραδείγµατα Αλγορίθµων. Τι είναι Αλγόριθµος

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

ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ. Αρχές Ανάλυσης Αλγορίθµων Κεφάλαιο 2. Ε. Μαρκάκης Επικ. Καθηγητής

Εισαγωγή στην Ανάλυση Αλγορίθμων (2-3)

Ορισµός. Εστω συναρτήσεις: f : N R και g : N R. η f(n) είναι fi( g(n) ) αν υπάρχουν σταθερές C 1, C 2 και n 0, τέτοιες ώστε:

Υπολογιστικό Πρόβληµα

Εισαγωγή στους Αλγόριθμους. Παύλος Εφραιμίδης, Λέκτορας

Διαίρει-και-Βασίλευε. Αλγόριθµοι & Πολυπλοκότητα (Χειµώνας 2011) Διαίρει-και-Βασίλευε 2

Διακριτά Μαθηματικά [Rosen, κεφ. 3] Γιάννης Εμίρης Τμήμα Πληροφορικής & Τηλεπικοινωνιών, ΕΚΠΑ Οκτώβριος 2018

Στοιχεία Αλγορίθµων και Πολυπλοκότητας

Ενότητα 1: Εισαγωγή Ασκήσεις και Λύσεις

Κεφάλαιο 5 Ανάλυση Αλγορίθμων

Υπολογιστική Πολυπλοκότητα

Διάλεξη 04: Παραδείγματα Ανάλυσης

Εισαγωγή στην Ανάλυση Αλγορίθμων

Στην ενότητα αυτή θα µελετηθούν τα εξής θέµατα:

3 ΑΝΑ ΡΟΜΗ ΑΝΑΖΗΤΗΣΗ - ΤΑΞΙΝΟΜΗΣΗ. n! = 1*2*3*..(n-1)*n. n! = 1 αν n = 0, = n*(n-1)! αν n > ΑΝΑ ΡΟΜΗ Εισαγωγή

Αν ένα πρόβλημα λύνεται από δύο ή περισσότερους αλγόριθμους, ποιος θα είναι ο καλύτερος; Με ποια κριτήρια θα τους συγκρίνουμε;

Α Ν Α Λ Τ Η Α Λ Γ Ο Ρ Ι Θ Μ Ω Ν Κ Ε Υ Α Λ Α Ι Ο 5. Πως υπολογίζεται ο χρόνος εκτέλεσης ενός αλγορίθμου;

ΕΠΛ231 Δομές Δεδομένων και Αλγόριθμοι 4. Παραδείγματα Ανάλυσης Πολυπλοκότητας Ανάλυση Αναδρομικών Αλγόριθμων

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

Στην ενότητα αυτή θα µελετηθούν τα εξής θέµατα:

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

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

KΕΦΑΛΑΙΟ 1 ΧΡΗΣΙΜΕΣ ΜΑΘΗΜΑΤΙΚΕΣ ΕΝΝΟΙΕΣ. { 1,2,3,..., n,...

Δοµές Δεδοµένων και Αλγόριθµοι - Εισαγωγή

(CLR, κεφάλαιο 32) Στην ενότητα αυτή θα µελετηθούν τα εξής θέµατα: Παραστάσεις πολυωνύµων Πολυωνυµική Παρεµβολή ιακριτός Μετασχηµατισµός Fourier

Προηγούµενο: Ανω Φράγµα στην Τάξη των Συναρτήσεων. Ρυθµός Αύξησης (Τάξη) των Συναρτήσεων. Σύνοψη Ιδιοτήτων

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

Διάλεξη 04: Παραδείγματα Ανάλυσης Πολυπλοκότητας/Ανάλυση Αναδρομικών Αλγόριθμων

Εισαγωγή στην Ανάλυση Αλγορίθμων (1) Διαφάνειες του Γ. Χ. Στεφανίδη

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

1 Ανάλυση αλγορίθµων. 2 Συµβολισµοί O, Ω και Θ. 3 Αναδροµικές εξισώσεις

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

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

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

5.1. Προσδοκώμενα αποτελέσματα

Πρόβλημα 29 / σελίδα 28

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

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

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

ΑΕΠΠ Ερωτήσεις θεωρίας

Εισαγωγικές Έννοιες. ημήτρης Φωτάκης. Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών. Εθνικό Μετσόβιο Πολυτεχνείο

Heapsort Using Multiple Heaps

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

Γραµµική Αλγεβρα. Ενότητα 2 : Επίλυση Γραµµικών Εξισώσεων. Ευστράτιος Γαλλόπουλος Τµήµα Μηχανικών Η/Υ & Πληροφορικής

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

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

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

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

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

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

Διάλεξη 09: Αλγόριθμοι Ταξινόμησης I

περιεχόμενα ρυθιμός αύξησης συναρτήσεων ασυμπτωτική πολυπλοκότητα ασυμπτωτική επίδοση ασυμπτωτικοί συμβολισμοί ασυμπτωτικός συμβολισμος

Ασκήσεις για το µάθηµα «Ανάλυση Ι και Εφαρµογές» (ε) Κάθε συγκλίνουσα ακολουθία άρρητων αριθµών συγκλίνει σε άρρητο αριθµό.

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

Ασυμπτωτικός Συμβολισμός

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

Διδάσκων: Κωνσταντίνος Κώστα Διαφάνειες: Δημήτρης Ζεϊναλιπούρ ΕΠΛ 035 Δομές Δεδομένων και Αλγόριθμοι για Ηλ. Μηχ. και Μηχ. Υπολ.

Δομές Δεδομένων Ενότητα 2

Τι είναι αλγόριθμος; Υποπρογράμματα (υποαλγόριθμοι) Βασικές αλγοριθμικές δομές

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

Κεφάλαιο 2. Παραγοντοποίηση σε Ακέραιες Περιοχές

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

Εισαγωγή - Βασικές έννοιες. Ι.Ε.Κ ΓΛΥΦΑΔΑΣ Τεχνικός Τεχνολογίας Internet Αλγοριθμική Ι (Ε) Σχολ. Ετος A Εξάμηνο

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

Αλγόριθµοι. Παράδειγµα. ιαίρει και Βασίλευε. Παράδειγµα MergeSort. Τεχνικές Σχεδιασµού Αλγορίθµων

οµές εδοµένων 3 ο Εξάµηνο Τµήµα Πανεπιστήµιο Πληροφορικής Ιωαννίνων ΟΜΕΣ Ε ΟΜΕΝΩΝ

Γενικές Παρατηρήσεις. Μη Κανονικές Γλώσσες - Χωρίς Συµφραζόµενα (1) Το Λήµµα της Αντλησης. Χρήση του Λήµµατος Αντλησης.

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

Περιεχόμενα. Εισαγωγή του επιμελητή, Γιάννης Σταματίου 15 Πρόλογος 17 Εισαγωγή 23. Μέρος I. ΕΠΑΝΑΛΗΠΤΙΚΟΙ ΑΛΓΟΡΙΘΜΟΙ ΚΑΙ ΑΝΑΛΛΟΙΩΤΕΣ ΣΥΝΘΗΚΕΣ

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

ιαίρει-και-βασίλευε ημήτρης Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο

ΕΙΣΑΓΩΓΗ ΣΤΙΣ ΑΡΧΕΣ ΤΗΣ ΕΠΙΣΤΗΜΗΣ ΤΩΝ Η/Υ

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

ΚΕΦΑΛΑΙΟ 12: Θεωρία υπολογισµών

Αναδρομή Ανάλυση Αλγορίθμων

2 ΟΥ και 7 ΟΥ ΚΕΦΑΛΑΙΟΥ

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

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

ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ. Ταξινόµηση Mergesort Κεφάλαιο 8. Ε. Μαρκάκης Επίκουρος Καθηγητής

τη µέθοδο της µαθηµατικής επαγωγής για να αποδείξουµε τη Ϲητούµενη ισότητα.

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

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

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

Αλγόριθμοι και Πολυπλοκότητα Φώτης Ε. Ψωμόπουλος, Περικλής Α. Μήτκας

Κεφάλαιο 6. Εισαγωγή στη µέθοδο πεπερασµένων όγκων επίλυση ελλειπτικών και παραβολικών διαφορικών εξισώσεων

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

ΓΡΑΜΜΙΚΗ ΑΛΓΕΒΡΑ Ι (ΑΡΤΙΟΙ) Λυσεις Ασκησεων - Φυλλαδιο 2

Ο αλγόριθμος πρέπει να τηρεί κάποια κριτήρια

Κεφάλαιο 2 ο Βασικές Έννοιες Αλγορίθμων (σελ )

Πρόλογος. Πρόλογος 13. Πώς χρησιμοποείται αυτό το βιβλίο 17

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

Τμήμα Μηχανολόγων Μηχανικών Πανεπιστήμιο Θεσσαλίας ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ. Βήματα προς τη δημιουργία εκτελέσιμου κώδικα

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

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

11.1 Συναρτήσεις. ΚΕΦΑΛΑΙΟ 11: Θεωρία υπολογισµών

Αριθμοθεωρητικοί Αλγόριθμοι

Transcript:

Αλγόριθµοι Ι Κάθε καλώς ορισµένη υπολογιστική διαδικασία, η οποία καλείται να επιλύσει ένα συγκεκριµένο πρόβληµα εντός πεπερασµένου χρόνου. Αλγόριθµος είναι µια πεπερασµένη σειρά ενεργειών, αυστηρά καθορισµένων και εκτελέσιµων σε πεπερασµένο χρόνο, που στοχεύουν στην επίλυση ενός προβλήµατος. Τµ. Πληροφορικής, Α.Π.Θ. Τρίτη, 9 Νοεµβρίου 5 Αλγόριθµοι ΙΙ Ένας αλγόριθµος πρέπει να διαθέτει: είσοδο: καµία, µία ή περισσότερες τιµές δεδοµένων έξοδο: τουλάχιστο µία τιµή δεδοµένων καθοριστικότητα: κάθε ενέργεια να προσδιορίζεται σαφώς για τον τρόπο εκτέλεσής της περατότητα: να τελειώνει µετά από πεπερασµένα βήµατα εκτέλεσης των εντολών του αποτελεσµατικότητα: κάθε µεµονωµένη εντολή του αλγορίθµου να είναι απλή και εκτελέσιµη Τµ. Πληροφορικής, Α.Π.Θ. Τρίτη, 9 Νοεµβρίου 5

Αλγόριθµοι ΙΙΙ Κάθε είσοδος που ικανοποιεί τις προδιαγραφές του προβλήµατος καλείται νόµιµη και λέµε πως ορίζει ένα συγκεκριµένο στιγµιότυπο του προβλήµατος. Ένας αλγόριθµος επιλύει ένα πρόβληµα, όταν για κάθε στιγµιότυπο του προβλήµατος τερµατίζει µετά από πεπερασµένο χρόνο, παράγοντας σωστή έξοδο. Τµ. Πληροφορικής, Α.Π.Θ. Τρίτη, 9 Νοεµβρίου 5 Αλγορίθµοι ΙV Τεχνικές σχεδίασης αλγορίθµων: αλγόριθµοι brute-force: διακρίνονται από το γεγονός ότι επιλύουν το πρόβληµα µε τον πιο απλό, άµεσο ή προφανή τρόπο. Η λειτουργία τους βασίζεται στον εξαντλητικό έλεγχο όλων των πιθανών περιπτώσεων. άπληστοι αλγόριθµοι: προχωρούν µε βάση σταδιακές επιλογές, που αφορούν στο βέλτιστο κάθε βήµατος. αλγόριθµοι οπισθοδρόµησης: σε κάθε βήµα εξετάζουν συστηµατικά όλα τα πιθανά αποτελέσµατα κάθε απόφασης, εκτός και αν αποφασίσουν ότι για κάποιες περιπτώσεις δεν είναι απαραίτητος ένας τέτοιος εξαντλητικός έλεγχος. αλγόριθµοι διαίρει και βασίλευε: το πρόβληµα υποδιαιρείται σε πολλά µικρά υποπροβλήµατα πανοµοιότυπα µε το αρχικό. Κάθε ένα από αυτά επιλύεται ανεξάρτητα και οι επιµέρους λύσεις συνδυάζονται σε µία τελική λύση του αρχικού προβλήµατος. Τµ. Πληροφορικής, Α.Π.Θ. Τρίτη, 9 Νοεµβρίου 5 4

Αλγόριθµοι V αλγόριθµοι δυναµικού προγραµµατισµού: το πρόβληµα υποδιαιρείται σε πολλά µικρά προβλήµατα, τα οποία επιλύονται σταδιακά ως σύνθεση των λύσεων των µικρότερων και άρα απλούστερων υποπροβληµάτων. Είναι ιδιαίτερα διαδεδοµένοι για την επίλυση προβληµάτων βελτιστοποίησης. τυχαιοποιηµένοι αλγόριθµοι: αλγόριθµοι που φαίνεται ότι συµπεριφέρονται τυχαία αλγόριθµοι γράφων αλγόριθµοι αναγνώρισης συµβολοσειρών αριθµητικοί αλγόριθµοι κατανεµηµένοι αλγόριθµοι αλγόριθµοι συντακτικής σηµασιολογικής ανάλυσης (µεταγλωττιστές Τµ. Πληροφορικής, Α.Π.Θ. Τρίτη, 9 Νοεµβρίου 5 5 Ανάλυση Αλγορίθµων Ι Ποιος είναι ο καλύτερος αλγόριθµος; Συγκρίνουµε τους αλγορίθµους µε βάση την αποδοτικότητά τους ως συνάρτηση του µεγέθους των περιπτώσεων του προβλήµατος για τον υπολογισµό χρόνου ή χώρου. ιακρίνουµε την πρακτική ή εκ των υστέρων προσέγγιση την θεωρητική ή εκ των προτέρων προσέγγιση Η αποδοτικότητα χαρακτηρίζεται ως συνάρτηση του µεγέθους του προβλήµατος Με τον όρο µέγεθος αναφερόµαστε σε οποιοδήποτε ακέραιο που µε κάποιο τρόπο «µετράει» τον αριθµό των συστατικών µερών µιας περίπτωσης του προβλήµατος. Παράδειγµα: πρόβληµα ταξινόµησης µέγεθος περίπτωσης είναι ο αριθµός των προς ταξινόµηση δεδοµένων Τµ. Πληροφορικής, Α.Π.Θ. Τρίτη, 9 Νοεµβρίου 5 6

Ανάλυση Αλγορίθµων ΙΙ Μοντέλο Μηχανής Τυχαίας Προσπέλασης (RAM Αφαιρετική θεώρηση υπολογιστικού συστήµατος που: αναφέρεται σε συστήµατα του ενός επεξεργαστή δεν έχει τη δυνατότητα τελέσεως ταυτόχρονων πράξεων διαθέτει τους αναγκαίους καταχωρητές, ένα συσσωρευτή και µία ακολουθία απθηκευτικών θέσεων µε διευθύνσεις οι οποίες συνιστούν την κύρια µνήµη είναι σε θέση να εκτελεί τις αριθµητικές πράξεις {, -, *, /, od}, να παίρνει αποφάσεις τύπου f και να γράφει διαβάζει από και προς τις θέσεις µνήµης Τµ. Πληροφορικής, Α.Π.Θ. Τρίτη, 9 Νοεµβρίου 5 7 Ανάλυση Αλγορίθµων ΙΙΙ Οι στοιχειώδεις πράξεις που µπορεί να εκτελέσει µια µηχανή RAM έχουν κάποιο κόστος σε χρόνο: µέτρηση µοναδιαίου κόστους: σταθερό, πεπερασµένο κόστος ανεξαρτήτως του µήκους της δυαδικής αναπαράστασης των τελεστέων µέτρηση λογαριθµικού κόστους: η πράξη παίρνει χρόνο ανάλογο µε το µήκος της δυαδικής αναπαράστασης Εµείς θα χρησιµοποιήσουµε την πρώτη προσέγγιση. Θεώρηµα: Κάθε υπολογιστική διαδικασία µιας µηχανής Turg, µε κόστος πολυωνυµικό στο µέγεθος της εισόδου, µπορεί να εξοµοιωθεί από µία υπολογιστική, πολυωνυµική στο µέγεθος της εισόδου, διαδικασία µιας µηχανής RAM και αντίστροφα. Τµ. Πληροφορικής, Α.Π.Θ. Τρίτη, 9 Νοεµβρίου 5 8 4

Ανάλυση Αλγορίθµων ΙV Η ανάλυση θα γίνεται βάση του µοναδιαίου µέτρου ως συνάρτηση του µεγέθους της εισόδου που: για ένα πρόβληµα ταξινόµησης είναι το πλήθος των προς διάταξη αντικειµένων για έναν αλγόριθµο εύρεσης ελάχιστου επικαλυπτόµενου δένδρου σε γράφο µε σύνολο κορυφών V και σύνολο ακµών E, η είσοδος έχει µέγεθος V E για την τέλεση πολλαπλασιασµών µεταξύ µεγάλων ακεραίων το µέγεθος εισόδου είναι το συνολικό µήκος σε αριθµό bt της δυαδικής αναπαράστασής τους (όχι το πλήθος τους Τµ. Πληροφορικής, Α.Π.Θ. Τρίτη, 9 Νοεµβρίου 5 9 Ανάλυση Αλγορίθµων V Υπολογισµός κόστους ενός αλγορίθµου: σε κάθε εντολή ανάθεσης τιµής ή δήλωσης θα χρεώνουµε σταθερό χρόνο οι βρόχοι for και whle θα χρεώνονται το πλήθος των επαναλήψεων επί το πλήθος των εντολών που εκτελούνται σε κάθε επανάληψη Συχνά θα επικεντρωνόµαστε στις κυρίαρχες πράξεις, δηλαδή αυτές που παίζουν καταλυτικό ρόλο στη συµπεριφορά του αλγορίθµου: π.χ. στους αλγορίθµους ταξινόµησης οι κυρίαρχες πράξεις είναι οι συγκρίσεις και οι ανταλλαγές στοιχείων µεταξύ δύο θέσεων του πίνακα εισόδου Τµ. Πληροφορικής, Α.Π.Θ. Τρίτη, 9 Νοεµβρίου 5 5

Ανάλυση Αλγορίθµων VΙ Παράδειγµα ανάλυσης: Algorth selectosort(a Iput: Πίνακας Α αριθµών Output: ιατεταγµένος πίνακας κόστος #εκτελέσεων. for (;<; { c. ; c. for (j;j<;j c j j 4. f (a[j]<a[] j; c 4 ( j 5. tepa[]; c 5 j 6. a[]a[]; c 6 7. a[]tep; c 7 8. } Τµ. Πληροφορικής, Α.Π.Θ. Τρίτη, 9 Νοεµβρίου 5 Ανάλυση Αλγορίθµων VΙΙ Συνολικός χρόνος αλγορίθµου: c c4 c4 ( c c c5 c6 c7 T ( ( c c ένας αλγόριθµος είναι γρηγορότερος από έναν άλλο αν T T (, ( ένας αλγόριθµος είναι ασυµπτωτικά γρηγορότερος από έναν άλλο αν T ( l T ( Τµ. Πληροφορικής, Α.Π.Θ. Τρίτη, 9 Νοεµβρίου 5 6

Ανάλυση Αλγορίθµων VΙΙΙ Στις περισσότερες περιπτώσεις είτε δεν είµαστε σε θέση είτε δε µας ενδιαφέρει να βρούµε ακριβείς τύπους και απλά ασχολούµαστε µε το ρυθµό αύξησης ή την τάξη αύξησης των συναρτήσεων που εκφράζουν την πολυπλοκότητα του αλγορίθµου. Τότε µιλάµε για ασυµπτωτικές εκτιµήσεις O, Θ ή Ω. c'f cf g g g cf cf O(f Ω(f Θ(f Τµ. Πληροφορικής, Α.Π.Θ. Τρίτη, 9 Νοεµβρίου 5 Ανάλυση Αλγορίθµων ΙΧ Αλγόριθµος που εκτελείται σε χρόνο τάξης εµφανίζει γραµµική πολυπλοκότητα εµφανίζει τετραγωνική πολυπλοκότητα εµφανίζει κυβική πολυπλοκότητα κ πολυωνυµική πολυπλοκότητα c εκθετική πολυπλοκότητα Αποδοτικότητα χώρου µνήµης για παράλληλους αλγορίθµους: Αποδοτικότητα επικοινωνίας Τµ. Πληροφορικής, Α.Π.Θ. Τρίτη, 9 Νοεµβρίου 5 4 7

Ανάλυση Αλγορίθµων Χ O( 5-4 sec 4-4 sec 5-4 sec - sec 5 - sec. 5..8 ώρες - sec sec 5.7 χρόνια 4 τρις αιώνες.8 ώρες. τρις χρόνια O( O(log O( poly log O( O(! O( k O( k poly log Τµ. Πληροφορικής, Α.Π.Θ. Τρίτη, 9 Νοεµβρίου 5 5 Ανάλυση Αλγορίθµων ΧΙ ΟΡΙΣΜΟΣ Θεωρούµε ότι η συνάρτηση f( είναι µη αρνητική για όλους τους ακεραίους. Λέµε ότι f(o(g(, αν υπάρχει ακέραιος και µία σταθερά c> έτσι ώστε για όλους τους ακέραιους f ( cg( ΠΑΡΑ ΕΙΓΜΑ. Έστω f(88. Ισχύει ότι f(o(? Ας θεωρήσουµε c. Τότε, f ( c 8 8 8 8 ( 6( 8 Αφού για κάθε ισχύει (8>, θέλουµε 6 6 Άρα ισχύει ότι f(( Τµ. Πληροφορικής, Α.Π.Θ. Τρίτη, 9 Νοεµβρίου 5 6 8

Ανάλυση Αλγορίθµων ΧΙΙ ΟΡΙΣΜΟΣ Θεωρούµε τη συνάρτηση f(o(g(. Αν για κάθε συνάρτηση h( έτσι ώστε f(o(h(, ισχύει επίσης ότι g(o(h(, τότε λέµε ότι η g( είναι ένα στενό ασυµπτωτικό όριο της f(. Παράδειγµα: είξαµε ότι για f(88 ισχύει ότι f(o(. Παρόλα αυτά, το δεν είναι ένα στενό ασυµπτωτικό όριο, γιατί ισχύει επίσης f(o(. Βέβαια, για να αποδειχθεί ότι η g( είναι ένα στενό ασυµπτωτικό όριο πρέπει να δείξουµε ότι για κάθε h( που f(o(h(, ισχύει ότι g(o(h(. Για το συγκεκριµένο παράδειγµα µπορεί αυτό να γίνει µε εις άτοπο απαγωγή. Τµ. Πληροφορικής, Α.Π.Θ. Τρίτη, 9 Νοεµβρίου 5 7 Ανάλυση Αλγορίθµων ΧΙΙΙ ΣΥΜΒΑΣΕΙΣ: Συνηθίζεται σε µία έκφραση κεφαλαίου «Ο» να διατηρούµε µόνο τον πιο σηµαντικό όρο. Έτσι, αντί για Ο( log γράφουµε απλά O(. Συνηθίζεται να αγνοούνται οι συντελεστές. Έτσι, αντί για Ο(, απλά γράφουµε Ο(. Προτιµούµε την εύρεση στενού ασυµπτωτικού ορίου. Έτσι, αντί να γράφουµε f(o( προτιµούµε να γράφουµε f(o(. Σε κάποια βιβλία αντί για f(o(g( γράφουνε f( O(g(. (βλ. Brassard & Bratley. Τµ. Πληροφορικής, Α.Π.Θ. Τρίτη, 9 Νοεµβρίου 5 8 9

Ανάλυση Αλγορίθµων ΧΙV ΑΣΥΜΠΤΩΤΙΚΟ ΚΑΤΩ ΟΡΙΟ (ΣΥΜΒΟΛΙΣΜΟΣ Ω: Θεωρούµε ότι η συνάρτηση f( είναι µη αρνητική για όλους τους ακεραίους. Λέµε ότι f(ω(g(, αν υπάρχει ακέραιος και µία σταθερά c> έτσι ώστε για όλους τους ακέραιους, f ( cg(. Όλες οι συµβάσεις που εισάγαµε στο συµβολισµό κεφαλαίου «Ο» ισχύουν και για το συµβολισµό κεφαλαίου «Ω». ΠΑΡΑ ΕΙΓΜΑ: Αποδείξτε ότι αν f(5-6456, τότε f(ω(. ΑΣΥΜΠΤΩΤΙΚΟΣ ΣΥΜΒΟΛΙΣΜΟΣ Θ: Θεωρούµε ότι η συνάρτηση f( είναι µη αρνητική για όλους τους ακεραίους. Λέµε ότι f(θ(g(, αν και µόνο αν f(ο(g( και f(ω(g(. Τότε λέµε ότι η f( είναι ακριβώς τάξης g( και αν µπορεί να αποδειχθεί κάτι τέτοιο για έναν αλγόριθµο είναι πιο ισχυρό από ότι αν απλά ο αλγόριθµος είναι τάξης g(. Τµ. Πληροφορικής, Α.Π.Θ. Τρίτη, 9 Νοεµβρίου 5 9 Ανάλυση Αλγορίθµων ΧV ΑΣΥΜΠΤΩΤΙΚΟΣ ΣΥΜΒΟΛΙΣΜΟΣ ΠΕΖΟΥ «ο»: Θεωρούµε ότι η συνάρτηση f( είναι µη αρνητική για όλους τους ακεραίους. Λέµε ότι f(ο(g(, αν και µόνο αν f(ο(g(, αλλά δεν ισχύει f( Θ(g(. ΑΣΥΜΠΤ. ΣΥΜΒΟΛΙΣΜΟΣ ΜΕ ΠΟΛΛΕΣ ΠΑΡΑΜΕΤΡΟΥΣ: Χρήσιµος για περιπτώσεις όπου για παράδειγµα ο χρόνος εκτέλεσης εξαρτάται από περισσότερες από µία παραµέτρους της κάθε περίπτωσης π.χ. αλγόριθµοι γράφων που εξαρτώνται από τον αριθµό των ακµών και τον αριθµό των κορυφών. Λέµε τότε ότι f(,o(g(,, αν υπάρχουν ακέραιοι και και µία σταθερά c>, έτσι ώστε για όλους τους ακέραιους και ισχύει f (, cg(,. Τµ. Πληροφορικής, Α.Π.Θ. Τρίτη, 9 Νοεµβρίου 5

Ανάλυση Αλγορίθµων ΧVI ΑΣΥΜΠΤ. ΣΥΜΒΟΛΙΣΜΟΣ ΥΠΟ ΣΥΝΘΗΚΗ: Μία συνάρτηση t( είναι O(f( P( αν υπάρχει ένας ακέραιος και µία σταθερά c>, έτσι ώστε για όλους τους ακέραιους να συνάγεται P( t( cf(. Έτσι, αν αυτό βολεύει, µπορούµε να µελετήσουµε την αποδοτικότητα ενός αλγορίθµου για περιπτώσεις µε µεγέθη π.χ. που προκύπτουν ως δυνάµεις του. Συνήθως βέβαια, στη συνέχεια, αναζητείται κάποιος τρόπος για να αρθεί η συνθήκη της οποίας ο ρόλος περιορίζεται στη διευκόλυνση της ανάλυσης της του αλγορίθµου. ΠΡΑΞΕΙΣ ΜΕ ΑΣΥΜΠΤ. ΣΥΜΒΟΛΙΣΜΟ: Τι σηµαίνει ο συµβολισµός O(f(O(g(; Ο συµβολισµός αυτός εκφράζει το σύνολο των συναρτήσεων που προκύπτει µε την πρόσθεση της τιµής οποιασδήποτε συνάρτησης ανήκει στο O(f( στην τιµή οποιασδήποτε συνάρτησης ανήκει στο O(g(. Γενικά, µία συνάρτηση t( είναι O(f( op O(g(, αν υπάρχουν συναρτήσεις f και g, που ανήκουν αντίστοιχα στα σύνολα συναρτήσεων O(f( και O(g( και ένας ακέραιος έτσι ώστε για όλους τους ακέραιους t(f( op g( Τµ. Πληροφορικής, Α.Π.Θ. Τρίτη, 9 Νοεµβρίου 5 Ανάλυση Αλγορίθµων ΧVII ΘΕΩΡΗΜΑ Αν θεωρήσουµε ότι f (O(g ( και f (O(g (, τότε f (f (O(ax(g (,g ( ΑΠΟ ΕΙΞΗ: Εξ ορισµού υπάρχουν δύο ακέραιοι και και δύο σταθερές c και c, έτσι ώστε f ( c g ( για και f ( c g ( για. Έστω ότι ax(, και c ax(c,c. Τότε, για f( f( cg( cg( c( g( g( / c ax( g(, g( ΘΕΩΡΗΜΑ Αν f (f (f ( και οι f ( και f ( είναι και οι δύο µη αρνητικές για όλους τους ακεραίους, έτσι ώστε f( l L f( για κάποιο L, τότε f((f (. Τµ. Πληροφορικής, Α.Π.Θ. Τρίτη, 9 Νοεµβρίου 5

Ανάλυση Αλγορίθµων ΧVIII ΣΗΜΑΝΤΙΚΟ ΘΕΩΡΗΜΑ, διότι χάρη σε αυτό συµπεραίνουµε π.χ. ότι f (f ( O(. ΓΙΑΤΙ?? f( ΕΠΕΙ Η: l l l f( ΘΕΩΡΗΜΑ Αν θεωρήσουµε ότι f (O(g ( και f (O(g (, τότε f (Χf (O(g (Χg ( ΑΠΟ ΕΙΞΗ: Εξ ορισµού υπάρχουν δύο ακέραιοι και και δύο σταθερές c και c, έτσι ώστε f ( c g ( για και f ( c g ( για. Επιπλέον, οι f ( και f ( είναι µη αρνητικές για όλους τους ακεραίους. Θεωρούµε ax(, και c c c. Τότε για f( f( cg ( cg( c( g( g( Τµ. Πληροφορικής, Α.Π.Θ. Τρίτη, 9 Νοεµβρίου 5 Ανάλυση Αλγορίθµων ΧIX ΣΗΜΑΝΤΙΚΟ ΘΕΩΡΗΜΑ, διότι χάρη σε αυτό συµπεραίνουµε π.χ. ότι f (Xf (( X( ( X O( 5. ΘΕΩΡΗΜΑ Αν θεωρήσουµε ότι f (O(g ( και η g ( είναι µη αρνητική για όλους τους ακεραίους, τότε f (Χf (O(g (Χg ( ΘΕΩΡΗΜΑ Αν θεωρήσουµε ότι f(o(g( και η g( O(h(, τότε f(o(h(. ΣΗΜΑΝΤΙΚΟ ΘΕΩΡΗΜΑ, διότι χάρη σε αυτό συµπεραίνουµε π.χ. ότι αν f (5, που είναι Ο( και f (, τότε f (f ((f (, γιατί f ( l. Το γεγονός όµως ότι f (Ο(, f ( δίνει µε µεταβατική ιδιότητα ότι f (f ( Ο( Τµ. Πληροφορικής, Α.Π.Θ. Τρίτη, 9 Νοεµβρίου 5 4

Ανάλυση Αλγορίθµων ΧX ΘΕΩΡΗΜΑ Αν θεωρήσουµε ένα πολυώνυµο της µορφής f ( a όπου. Τότε f(o( a a... a a a a >. ΑΠΟ ΕΙΞΗ: Αφού το µέγεθος είναι εξ ορισµού µη αρνητικός αριθµός, για να είναι ένας όρος του πολυωνύµου αρνητικός πρέπει a <. Άρα για κάθε όρο του αθροίσµατος ισχύει a a. Επειδή θεωρήσαµε ότι a > f ( a, ( Επειδή, για f ( a a Τµ. Πληροφορικής, Α.Π.Θ. Τρίτη, 9 Νοεµβρίου 5 5 a,, Ανάλυση Αλγορίθµων ΧXI ΘΕΩΡΗΜΑ Αν θεωρήσουµε ένα πολυώνυµο της µορφής a όπου >. Τότε f(ω(. ΘΕΩΡΗΜΑ f ( a a a Για κάθε ακέραιο k, log k O(.... a a a Τµ. Πληροφορικής, Α.Π.Θ. Τρίτη, 9 Νοεµβρίου 5 6

Ανάλυση Αλγορίθµων ΧXII Για να βρεθούν ασυµπτωτικά όρια: Όταν ο αλγόριθµος περιέχει επαναληπτικές δοµές ελέγχου (whle, for κ.λ.π., τότε η αποδοτικότητα εκφράζεται ως άθροισµα όρων, π.χ. j. Έτσι, η ανάλυση ανάγεται στην j δυνατότητα χειρισµού τέτοιων αθροισµάτων και εύρεσης ασυµπτωτικών ορίων. Πρέπει να γνωρίζετε πολύ καλά τον υπολογισµό σειρών: - αριθµητικών - γεωµετρικών - αρµονικών για τις οποίες προσπαθείτε να αποδείξετε την ισχύ ενός ασυµπτωτικού ορίου µε τη χρήση επαγωγής. Τµ. Πληροφορικής, Α.Π.Θ. Τρίτη, 9 Νοεµβρίου 5 7 Ανάλυση Αλγορίθµων ΧXIIΙ Όταν ο αλγόριθµος περιέχει αναδροµικές κλήσεις, τότε η αποδοτικότητά του εκφράζεται από αναδροµικές εξισώσεις ή ανισοϊσότητες, π.χ. / T ( T ( τότε προσπαθούµε να βρούµε την αποδοτικότητα µε κάποιο από το εξής τρόπους: προσπαθούµε να «µαντέψουµε» µε επαναληπτική αντικατάσταση µε τη γενική µέθοδο Τµ. Πληροφορικής, Α.Π.Θ. Τρίτη, 9 Νοεµβρίου 5 8 4

Ανάλυση Αλγορίθµων ΧXΙV προσπαθώντας να «µαντέψουµε» Έστω ότι θέλουµε να δείξουµε ότι αν το κόστος είναι / T ( T ( η λύση είναι O(. Άρα πρέπει να δείξουµε ότι για µία σταθερά c, T( c. Εφαρµόζουµε ισχυρά επαγωγή και αντικαθιστούµε στην αναδροµική εξίσωση: T ( c( / c c( / αλλά εµείς θέλουµε σύµφωνα µε την υπόθεση της επαγωγής να δείξουµε ότι T( c. Για το λόγο αυτό δοκιµάζουµε για c-b, όπου b σταθερά: T ( c( / b c b Τµ. Πληροφορικής, Α.Π.Θ. Τρίτη, 9 Νοεµβρίου 5 9 c b, b Ανάλυση Αλγορίθµων ΧXV προσπαθώντας να «µαντέψουµε» εάν τυχόν υπάρχουν αρχικές συνθήκες για την αναδροµή όπως π.χ. Τ(4, τότε αυτές µπορεί να καθορίζουν τη σταθερά c T ( 4 c b c b 4 c 5 ένα «κόλπο» για να «µαντέψουµε» είναι µε χρήση «δένδρου αναδροµής» (βλ. Αλγόριθµοι Σχεδιασµός και Αάλυση, Παναγιώτης. Μποζάνης. b Τµ. Πληροφορικής, Α.Π.Θ. Τρίτη, 9 Νοεµβρίου 5 5

6 Τρίτη, 9 Νοεµβρίου 5 Τµ. Πληροφορικής, Α.Π.Θ. Ανάλυση Αλγορίθµων ΧXVΙ µε επαναληπτική αντικατάσταση έστω ότι και Τ(. ίχως βλάβη της γενικότητας ας υποθέσουµε ότι το είναι δύναµη του. Τότε, T T / ( ( ( (... ( ( ( ( k k k k k T T T T T T T T Τρίτη, 9 Νοεµβρίου 5 Τµ. Πληροφορικής, Α.Π.Θ. Ανάλυση Αλγορίθµων ΧXVΙΙ µε επαναληπτική αντικατάσταση η επαναληπτική διαδικασία σταµατάει όταν οπότε µε αντικατάσταση και πράξεις log ( ( (.6 log log log log log log log log log O T T k k

Ανάλυση Αλγορίθµων ΧXVΙΙΙ γενική µέθοδος ουσιαστικά είναι µία µέθοδος για την επίλυση αναδροµικών εξισώσεων της µορφής T ( at ( / b f (, a, b, f ( >, και βασίζεται στην εφαρµογή κάποιων θεωρηµάτων. Περισσότερες πληροφορίες στο: Αλγόριθµοι Σχεδιασµός και Αάλυση, Παναγιώτης. Μποζάνης, σελ. 9 Τµ. Πληροφορικής, Α.Π.Θ. Τρίτη, 9 Νοεµβρίου 5 Μορφές ανάλυσης ανάλυση µέσης περίπτωσης ανάλυση χειρότερης περίπτωσης µέσο κόστος εκτέλεσης του αλγορίθµου µέγιστο κόστος εκτέλεσης του αλγορίθµου Τµ. Πληροφορικής, Α.Π.Θ. Τρίτη, 9 Νοεµβρίου 5 4 7

Ανάλυση χειρότερης περίπτωσης Ι Παράδειγµα ανάλυσης χειρότερης περίπτωσης: Algorth qucksort(a,left,rght Iput: Πίνακας Α αριθµών µε όρια left και rght Output: ιατεταγµένος πίνακας. left-, jrght;. oa[rght];. whle (true { //εύρεση θέσης pvot. whle (a[]<o; 4. whle (o<a[--j] j; 5. f (jleft break; 6. f (>j break; 7. tepa[]; a[]a[j]; a[j]tep; 8. } 9. tepa[]; a[]a[rght]; a[rght]tep;. f (left<- qucksort(a, left, -;. f (<rght qucksort(a,, rght; Τµ. Πληροφορικής, Α.Π.Θ. Τρίτη, 9 Νοεµβρίου 5 5 Ανάλυση χειρότερης περίπτωσης ΙI Πως λειτουργεί το qucksort: Αν π.χ. έχουµε ένα πίνακα αριθµών [4, 8,, 7,, 5, 6, ], τότε επιλέγεται ως στοιχείο pvot αυτό που βρίσκεται στη δεξιότερη θέση και αναζητείται η σωστή του θέση µέσα στον πίνακα. Αυτό τοποθετείται στη σωστή του θέση και αριστερά του τοποθετούνται όλα τα στοιχεία που είναι µικρότερα από το pvot, ενώ δεξιά του αυτά που είναι µεγαλύτερα. Έτσι, προκύπτει [,,, 4, 8, 7, 5, 6] και η qucksort εφαρµόζεται τόσο στο αριστερό όσο και στο δεξί τµήµα του πίνακα. Εφαρµογή: [4,,, ] left rght - j pvot εύρεση θέσης pvot: j ανταλλαγή a[] & a[j] [,, 4, ] j θέση pvot: [,,, 4] κ.λ.π. Χειρότερη περίπτωση: να αναζητούµε τη θέση του pvot σε έναν ήδη ταξινοµηµένο πίνακα Τµ. Πληροφορικής, Α.Π.Θ. Τρίτη, 9 Νοεµβρίου 5 6 8

Ανάλυση χειρότερης περίπτωσης ΙIΙ Σχέση κόστους: T ( ax{ T( T ( { } κόστος διάσπασης σε δύο υυποπροβλµατα Όταν όµως ο πίνακας είναι ήδη ταξινοµηµένος (χειρότερη περίπτωση, από τα δύο υποπροβλήµατα η qucksort καλείται αναδροµικά µόνο για το ένα. Έτσι, το κόστος δίνεται από τη σχέση: ( c c( c(... c c O( c Τµ. Πληροφορικής, Α.Π.Θ. Τρίτη, 9 Νοεµβρίου 5 7 Ανάλυση µέσης περίπτωσης Ι Μέση περίπτωση: δοθέντος ενός πίνακα στοιχείων, όλα τα στοιχεία έχουν την ίδια πιθανότητα να είναι pvot (δηλαδή να βρίσκονται στη δεξιότερη θέση του πίνακα T ( E[ T ( ] T ( Prob[το στοιχείο είναι pvot] ( T ( T ( T ( ( T ( T ( T ( T ( ( T ( T ( ( T ( ( αφαιρούµε κατά µέλη Τµ. Πληροφορικής, Α.Π.Θ. Τρίτη, 9 Νοεµβρίου 5 8 9

Ανάλυση µέσης περίπτωσης ΙΙ T ( ( T ( T ( T ( T ( και µε επαναληπτική αντικατάσταση T ( T ( T ( ( j j j O( log j Τµ. Πληροφορικής, Α.Π.Θ. Τρίτη, 9 Νοεµβρίου 5 9 Ανάλυση ταξινόµησης I Αλγόριθµος straght serto sort (σταδιακή ταξινόµηση Algorth straghtisertsort(a Iput: Πίνακας Α αριθµών Output: ιατεταγµένος πίνακας for (;<; { xt[]; j-; whle (j> ad x<t[j] { T[j]T[j]; jj-; } T[j]x; } Τµ. Πληροφορικής, Α.Π.Θ. Τρίτη, 9 Νοεµβρίου 5 4

Ανάλυση ταξινόµησης II Αλγόριθµος straght serto sort (εκτέλεση... 4 5 9 6 5 4 4 5 9 6 5 4 4 5 9 6 5 4 4 5 9 6 5 4 4....................................... Τµ. Πληροφορικής, Α.Π.Θ. Τρίτη, 9 Νοεµβρίου 5 4 Ανάλυση ταξινόµησης III Αλγόριθµος straght serto sort (ανάλυση... πόσες συγκρίσεις (εντολή whle γίνονται για κάθε? καλύτερη περίπτωση: η τιµή στη θέση είναι µεγαλύτερη από την τιµή στη θέση - (πίνακας ταξινοµηµένος σε αύξουσα µία σύγκριση για κάθε και άρα συνολικά - συγκρίσεις χειρότερη περίπτωση: (πίνακας ταξινοµηµένος σε φθίνουσα - συγκρίσεις για κάθε και άρα συνολικά συγκρίσεις ( ( / Τµ. Πληροφορικής, Α.Π.Θ. Τρίτη, 9 Νοεµβρίου 5 4

Ανάλυση ταξινόµησης IV Αλγόριθµος straght serto sort (ανάλυση... µέση περίπτωση: αν θεωρήσουµε µόνο διαφορετικούς µεταξύ τους αριθµούς, τότε η µέση περίπτωση είναι ο µέσος αριθµός συγκρίσεων για όλες τις πιθανές σειρές, που µπορεί να προκύψουν από την {,,,...,} µε αλλαγή της θέσης των στοιχείων της ονοµάζουµε αντιστροφή την εµφάνιση ζεύγους αριθµών που εµφανίζονται µε λάθος σειρά π.χ. η σειρά {,4,,} περιέχει τρεις αντιστροφές, τις (4,,, (4, και (, Τι σχέση έχει η αντιστροφή µε τη βασική πράξη, που είναι η σύγκριση?? Τµ. Πληροφορικής, Α.Π.Θ. Τρίτη, 9 Νοεµβρίου 5 4 Ανάλυση ταξινόµησης V Αλγόριθµος straght serto sort (ανάλυση... µέση περίπτωση (συνέχεια: στον αλγόριθµο straght serto sort και πιο συγκεκριµένα στο βρόχο whle αφαιρείται κάθε φορά µία αντιστροφή µε αντιµετάθεση των στοιχείων που την απαρτίζουν. Άρα έχουµε τόσες συγκρίσεις, όσες οι εµφανιζόµενες αντιστροφές. Θεώρηµα: Ο µέσος αριθµός εµφανιζόµενων αντιστροφών σε µία τυχαία επιλεγµένη σειρά διακριτών αριθµών είναι ( / 4 Απόδειξη: Έστω S µία τυχαία σειρά διακριτών αριθµών και S R η αντίστροφη σειρά της S. Άρα κάθε ζεύγος αριθµών σχηµατίζει µία αντιστροφή που βρίσκεται είτε στην S είτε στην S R. Πόσα ζεύγη αριθµών περιέχει η κάθε σειρά? ( / Άρα κατά µέσο όρο η S θα περιέχει τις µισές αντιστροφές. Τµ. Πληροφορικής, Α.Π.Θ. Τρίτη, 9 Νοεµβρίου 5 44

Ανάλυση ταξινόµησης VΙ Συνοψίζοντας: αλγόριθµος καλύτερη περίπτωση µέση περίπτωση χειρότερη περίπτωση straght serto sort bary search sort log( bubble sort qucksort log( log( straght selecto sort heapsort log( log( ergesort log( log( Τµ. Πληροφορικής, Α.Π.Θ. Τρίτη, 9 Νοεµβρίου 5 45