Κατέβασμα παρουσίασης
Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε
ΔημοσίευσεΣτυλιανός Αλεξάκης Τροποποιήθηκε πριν 9 χρόνια
1
Ενότητα 2.1 Αλγόριθμοι Ταξινόμησης O(n 2 ) & O(nlogn) Σχεδίαση & Ανάλυση Αλγορίθμων
2
Αλγόριθμοι Ταξινόμησης Bubble-Sort Selection –Sort Insertion -Sort Quick -Sort Merge–Sort Heap–Sort Counting–Sort Bucket-Sort Radix-Sort Shell-sort
3
Αλγόριθμος Φυσαλίδας (Bubble-Sort) Το Min πάντα στη θέση i Αλγόριθμος Bubble-Sort
5
Αλγόριθμος Selection -Sort Αλγόριθμος Επιλογής (Selection-Sort) Το Min πάντα στη θέση i
6
Αλγόριθμος Selection -Sort
7
Αλγόριθμος Insertion -Sort Αλγόριθμος Παρεμβολής (Insertion-Sort)
8
Αλγόριθμος Insertion -Sort
12
Πρόβλημα Π Άνω Φράγμα του Π Κάτω Φράγμα του Π Βέλτιστος Αλγόριθμος Αλγόριθμος Θεώρημα Άνω και Κάτω φράγματα
13
Ο(n 2 ) Αλγόριθμος Bubble-Sort Ο(n 2 ) Αλγόριθμος Selection-Sort Ο(n 2 ) Αλγόριθμος Insertion-Sort Άνω Φράγμα Κάτω Φράγμα Άνω και Κάτω φράγματα Πρόβλημα Π Υπάρχει Ταχύτερος Αλγόριθμος !!!
14
Κάτω φράγματα – Πρόβλημα Ταξινόμηση Bubble-Sort Selection-Sort Insertion-Sort Κλάση Αλγορίθμων:
15
Κάτω φράγματα – Πρόβλημα Ταξινόμηση Bubble-Sort, Selection-Sort, Insertion-Sort
16
Κάτω φράγματα – Πρόβλημα Ταξινόμηση
20
Αλγόριθμοι Bubble-Sort Selection –Sort Insertion -Sort Quick -Sort Merge–Sort Heap–Sort Counting–Sort Bucket-Sort Radix-Sort Shell-sort
21
Διαίρει και Βασίλευε (Divide and Conquer ) Αλγόριθμοι:Quick-Sort & Merge-Sort Τεχνική: Divide and Conquer 1 2 3
22
Διαίρει και Βασίλευε (Divide and Conquer ) Σχεδιασμός Αλγόριθμου: Divide and Conquer >
23
Διαίρει και Βασίλευε (Divide and Conquer )
24
Divide and Conquer (σχηματικά…) πρόβλημα μεγέθους Ν διάσπαση πρόβλημα μεγέθους Ν-k πρόβλημα μεγέθους k
25
Διαίρει και Βασίλευε (Divide and Conquer ) πρόβλημα μεγέθους Ν διάσπαση πρόβλημα μεγέθους Ν-k πρόβλημα μεγέθους k επιλύουμε αναδρομικά τα υποπροβλήματα Divide and Conquer (σχηματικά…)
26
Διαίρει και Βασίλευε (Divide and Conquer ) πρόβλημα μεγέθους Ν διάσπαση πρόβλημα μεγέθους Ν-k πρόβλημα μεγέθους k επιλύουμε αναδρομικά τα υποπροβλήματα Divide and Conquer (σχηματικά…)
27
Διαίρει και Βασίλευε (Divide and Conquer ) πρόβλημα μεγέθους Ν διάσπαση πρόβλημα μεγέθους Ν-k πρόβλημα μεγέθους k επιλύουμε αναδρομικά τα υποπροβλήματα Divide and Conquer (σχηματικά…)
28
Διαίρει και Βασίλευε (Divide and Conquer ) πρόβλημα μεγέθους Ν διάσπαση πρόβλημα μεγέθους Ν-k πρόβλημα μεγέθους k επιλύουμε αναδρομικά τα υποπροβλήματα Divide and Conquer (σχηματικά…)
29
Διαίρει και Βασίλευε (Divide and Conquer ) πρόβλημα μεγέθους Ν διάσπαση πρόβλημα μεγέθους Ν-k πρόβλημα μεγέθους k επιλύουμε αναδρομικά τα υποπροβλήματα Divide and Conquer (σχηματικά…)
30
Διαίρει και Βασίλευε (Divide and Conquer ) διάσπαση προβλήματος & σύνθεση λύσεων Χρόνος εκτέλεσης : χρόνος διάσπασης χρόνος σύνθεσης επιλύουμε αναδρομικά τα υποπροβλήματα πρόβλημα μεγέθους Ν πρόβλημα μεγέθους Ν-k πρόβλημα μεγέθους k Divide and Conquer (σχηματικά…)
31
Διαίρει και Βασίλευε (Divide and Conquer )
33
Αλγόριθμος Quick -Sort
37
k = n-1, n-2, …, 2. Quick-Sort (1, 0) Quick-Sort (2, n) n-1 1 2 3 n
38
Αλγόριθμος Quick -Sort
40
Ισομερής Προσέγγιση
41
Αλγόριθμος Quick -Sort
42
Γενική Προσέγγιση
43
Αλγόριθμος Quick -Sort
49
Αλγόριθμος Merge -Sort
52
Συγχώνευση (Merge) Συγχώνευση δύο διατεταγμένων ακολουθιών 2671520327588411121529435091
53
Αλγόριθμος Merge -Sort Συγχώνευση (Merge) 2671520327588411121529435091 ij Συγχώνευση δύο διατεταγμένων ακολουθιών
54
Αλγόριθμος Merge -Sort Συγχώνευση (Merge) 671520327588411121529435091 ij 2 2 Συγχώνευση δύο διατεταγμένων ακολουθιών
55
Αλγόριθμος Merge -Sort Συγχώνευση (Merge) 671520327588411121529435091 ij 24 2 Συγχώνευση δύο διατεταγμένων ακολουθιών
56
Αλγόριθμος Merge -Sort Συγχώνευση (Merge) 671520327588411121529435091 ij 264 2 Συγχώνευση δύο διατεταγμένων ακολουθιών
57
Αλγόριθμος Merge -Sort Συγχώνευση (Merge) 671520327588411121529435091 ij 2674 2 Συγχώνευση δύο διατεταγμένων ακολουθιών
58
Αλγόριθμος Merge -Sort Συγχώνευση (Merge) 671520327588411121529435091 ij 267411 2 Συγχώνευση δύο διατεταγμένων ακολουθιών
59
Αλγόριθμος Merge -Sort Συγχώνευση (Merge) 671520327588411121529435091 ij 26741112 2 Συγχώνευση δύο διατεταγμένων ακολουθιών
60
Αλγόριθμος Merge -Sort Συγχώνευση (Merge) 671520327588411121529435091 ij 2674111215 2 … … Συγχώνευση δύο διατεταγμένων ακολουθιών
61
Αλγόριθμος Merge -Sort Συγχώνευση (Merge) 671520327588411121529435091 ij 2 2674111215 2020292932435075 Συγχώνευση δύο διατεταγμένων ακολουθιών
62
Αλγόριθμος Merge -Sort Συγχώνευση (Merge) 671520327588411121529435091 ij 2 2674111215 202029293243507588 Συγχώνευση δύο διατεταγμένων ακολουθιών
63
Αλγόριθμος Merge -Sort Συγχώνευση (Merge) 671520327588411121529435091 ij 2 2674111215 20202929324350758891 Απαιτεί 3 ξεχωριστούς πίνακες Συγχώνευση δύο διατεταγμένων ακολουθιών
64
Αλγόριθμος Merge -Sort Συγχώνευση (Merge) 6715203275884111215294350912 lmm+1r a lm r aux Συγχώνευση δύο διατεταγμένων ακολουθιών με 2 πίνακες
65
Αλγόριθμος Merge -Sort Συγχώνευση (Merge) 6715203275884111215294350912 lmm+1r a 6715203275882 lmm+1r aux Συγχώνευση δύο διατεταγμένων ακολουθιών με 2 πίνακες
66
Αλγόριθμος Merge -Sort Συγχώνευση (Merge) 6715203275884111215294350912 lmm+1r a 671520327588919150432915121142 lmm+1r aux αντιστροφή της 2 ης ακολουθίας Συγχώνευση δύο διατεταγμένων ακολουθιών με 2 πίνακες
67
Αλγόριθμος Merge -Sort Συγχώνευση (Merge) 6715203275884111215294350912 lmm+1r a 671520327588919150432915121142 lmm+1r aux Συγχώνευση δύο διατεταγμένων ακολουθιών με 2 πίνακες
68
Αλγόριθμος Merge -Sort Συγχώνευση (Merge) 6715203275884111215294350912 lmm+1r a 671520327588919150432915121142 lmm+1r aux Συγχώνευση δύο διατεταγμένων ακολουθιών με 2 πίνακες
69
Αλγόριθμος Merge -Sort Συγχώνευση (Merge) 4715203275884111215294350912 lmm+1r a 671520327588919150432915121142 lmm+1r aux Συγχώνευση δύο διατεταγμένων ακολουθιών με 2 πίνακες
70
Αλγόριθμος Merge -Sort Συγχώνευση (Merge) 4615203275884111215294350912 lmm+1r a 671520327588919150432915121142 lmm+1r aux … … … Συγχώνευση δύο διατεταγμένων ακολουθιών με 2 πίνακες
71
Αλγόριθμος Merge -Sort Συγχώνευση (Merge) 467111215 20293243504350912 lmm+1r a 671520327588919150432915121142 lmm+1r aux Συγχώνευση δύο διατεταγμένων ακολουθιών με 2 πίνακες
72
Αλγόριθμος Merge -Sort Συγχώνευση (Merge) 467111215 20293243507550912 lmm+1r a 671520327588919150432915121142 lmm+1r aux Συγχώνευση δύο διατεταγμένων ακολουθιών με 2 πίνακες
73
Αλγόριθμος Merge -Sort Συγχώνευση (Merge) 467111215 20293243507588912 lmm+1r a 671520327588919150432915121142 lmm+1r aux Συγχώνευση δύο διατεταγμένων ακολουθιών με 2 πίνακες
74
Αλγόριθμος Merge -Sort Σύγκριση δύο στοιχείων
75
Αλγόριθμος Merge -Sort
79
Σύγκριση δύο στοιχείων O(n logn)
80
Κάτω Φράγματα
81
a[i]<a[j] ? a[b]<a[c] ? a[f]<a[g] ? a[h]<a[i] ? a[d]<a[e] ? a[j]<a[k] ? a[l]<a[m] ? Δένδρο απόφασης Κάτω φράγμα για ταξινόμηση που χρησιμοποιεί μόνο συγκρίσεις
82
Κάτω Φράγματα Δένδρο απόφασης Π.χ. για n=3 a[1]<a[2] ? a[1]<a[3] ? a[2]<a[3] ? a[1]<a[3] ? a[2]<a[3] ? a[1]< a[2]< a[3] a[1]< a[3]< a[2] a[3]< a[1]< a[2] a[2]< a[1]< a[3] a[2]< a[3]< a[1] a[3]< a[2]< a[1] Κάτω φράγμα για ταξινόμηση που χρησιμοποιεί μόνο συγκρίσεις
83
Κάτω Φράγματα Δένδρο απόφασης Π.χ. για n=3 a[1]<a[2] ? a[1]<a[3] ? a[2]<a[3] ? a[1]<a[3] ? a[2]<a[3] ? a[1]< a[2]< a[3] a[1]< a[3]< a[2] a[3]< a[1]< a[2] a[2]< a[1]< a[3] a[2]< a[3]< a[1] a[3]< a[2]< a[1] Για a=[1,2,3] Η εκτέλεση του αλγόριθμου ακολουθεί ένα μονοπάτι από τη ρίζα προς κάποιο φύλλο Κάτω φράγμα για ταξινόμηση που χρησιμοποιεί μόνο συγκρίσεις
84
Κάτω Φράγματα Δένδρο απόφασης Π.χ. για n=3 Για a=[2,1,3] a[1]<a[2] ? a[1]<a[3] ? a[2]<a[3] ? a[1]<a[3] ? a[2]<a[3] ? a[1]< a[2]< a[3] a[1]< a[3]< a[2] a[3]< a[1]< a[2] a[2]< a[1]< a[3] a[2]< a[3]< a[1] a[3]< a[2]< a[1] Η εκτέλεση του αλγόριθμου ακολουθεί ένα μονοπάτι από τη ρίζα προς κάποιο φύλλο Κάτω φράγμα για ταξινόμηση που χρησιμοποιεί μόνο συγκρίσεις
85
Κάτω Φράγματα a[i]<a[j] ? a[b]<a[c] ? a[f]<a[g] ? a[h]<a[i] ? a[d]<a[e] ? a[j]<a[k] ? a[l]<a[m] ? Δένδρο απόφασης Ο αριθμός των συγκρίσεων που πραγματοποιεί μια εκτέλεση του αλγόριθμου στη χειρότερη περίπτωση είναι ίσος με το ύψος του δένδρου Κάθε μετάθεση της ακολουθίας εισόδου αντιστοιχεί σε διαφορετικό φύλλο υπάρχουν n! φύλλα Ύψος δυαδικού δένδρου με n! φύλλα = Κάτω φράγμα για ταξινόμηση που χρησιμοποιεί μόνο συγκρίσεις
86
Κάτω Φράγματα
88
Σύγκριση δύο στοιχείων O(n logn)
89
Κάτω Φράγματα ??? Ενότητα Αλγόριθμοι Ταξινόμησης O(n 2 ) & O(nlogn)
Παρόμοιες παρουσιάσεις
© 2024 SlidePlayer.gr Inc.
All rights reserved.