Ανάλυση αλγορίθμων. Χρόνος εκτέλεσης: Αναμενόμενη περίπτωση. - απαιτεί γνώση της κατανομής εισόδου
|
|
- Πέρσις Δασκαλοπούλου
- 7 χρόνια πριν
- Προβολές:
Transcript
1 Ανάλυση αλγορίθμων Παράμετροι απόδοσης ενός αλγόριθμου: Χρόνος εκτέλεσης Απαιτούμενοι πόροι, π.χ. μνήμη, επικοινωνία (π.χ. σε κατανεμημένα συστήματα) Προσπάθεια υλοποίησης Ανάλυση της απόδοσης Θεωρητική ανάλυση Πειραματική ανάλυση
2 Ανάλυση αλγορίθμων Παράμετροι απόδοσης ενός αλγόριθμου: Χρόνος εκτέλεσης Απαιτούμενοι πόροι, π.χ. μνήμη, επικοινωνία (π.χ. σε κατανεμημένα συστήματα) Προσπάθεια υλοποίησης Ανάλυση της απόδοσης Πότε μπορούμε να είμαστε ευχαριστημένοι από την απόδοση ενός αλγόριθμου; Θεωρητική ανάλυση Πειραματική ανάλυση
3 Ανάλυση αλγορίθμων Χρόνος εκτέλεσης: Αναμενόμενη περίπτωση - απαιτεί γνώση της κατανομής εισόδου - όταν η κατανομή δεν είναι γνωστή (κάτι που συμβαίνει συχνά!), συνήθως υποθέτουμε ομοιόμορφη κατανομή - πιθανοκρατικοί αλγόριθμοι διαμορφώνουν την κατανομή εισόδου Χειρότερη περίπτωση - ισχύει για κάθε είσοδο - κοντά στην αναμενόμενη όταν συμβαίνει συχνά, αλλά μπορεί να είναι απαισιόδοξη όταν συμβαίνει σπάνια
4 Ανάλυση αλγορίθμων Πειραματική ανάλυση του χρόνου εκτέλεσης public static void main() { long starttime = System.currentTimeMillis(); // run algorithm... long endtime = System.currentTimeMillis(); long totaltime = endtime - starttime; }
5 Ανάλυση αλγορίθμων Πειραματική ανάλυση του χρόνου εκτέλεσης Χρόνοι εκτέλεσης σε δευτερόλεπτα για διάφορες δομές εύρεσης-ένωσης με είσοδο τυχαίο αρχείο με κόμβους και ακμές βασική δομή γρήγορης ένωσης δομή γρήγορης ένωσης με στάθμιση δομή γρήγορης ένωσης με στάθμιση και συμπίεση διαδρομής
6 Είναι η μελέτη του ρυθμού αύξησης του χρόνου εκτέλεσης (ή άλλης παραμέτρου απόδοσης) ως συνάρτηση του μεγέθους της εισόδου Παράδειγμα: Υπολογισμός εσωτερικού γινομένου z = 0; for (i=0; i<n; i++) { t = x[i]*y[i]; z = z+t; } Πόσος χρόνος απαιτείται ανά εντολή; Ποια είναι η συχνότητα εκτέλεσης της κάθε εντολής;
7 Είναι η μελέτη του ρυθμού αύξησης του χρόνου εκτέλεσης (ή άλλης παραμέτρου απόδοσης) ως συνάρτηση του μεγέθους της εισόδου Παράδειγμα: Υπολογισμός εσωτερικού γινομένου z = 0; for (i=0; i<n; i++) { t = x[i]*y[i]; z = z+t; } Χρόνος εκτέλεσης:
8 Είναι η μελέτη του ρυθμού αύξησης του χρόνου εκτέλεσης (ή άλλης παραμέτρου απόδοσης) ως συνάρτηση του μεγέθους της εισόδου Παράδειγμα: Υπολογισμός εσωτερικού γινομένου z = 0; for (i=0; i<n; i++) { t = x[i]*y[i]; z = z+t; } Χρόνος εκτέλεσης:
9 Είναι η μελέτη του ρυθμού αύξησης του χρόνου εκτέλεσης (ή άλλης παραμέτρου απόδοσης) ως συνάρτηση του μεγέθους της εισόδου Παράδειγμα: Υπολογισμός εσωτερικού γινομένου z = 0; for (i=0; i<n; i++) { t = x[i]*y[i]; z = z+t; } Χρόνος εκτέλεσης:
10 Είναι η μελέτη του ρυθμού αύξησης του χρόνου εκτέλεσης (ή άλλης παραμέτρου απόδοσης) ως συνάρτηση του μεγέθους της εισόδου Παράδειγμα: Υπολογισμός εσωτερικού γινομένου z = 0; for (i=0; i<n; i++) { t = x[i]*y[i]; z = z+t; } Χρόνος εκτέλεσης:
11 Είναι η μελέτη του ρυθμού αύξησης του χρόνου εκτέλεσης (ή άλλης παραμέτρου απόδοσης) ως συνάρτηση του μεγέθους της εισόδου Παράδειγμα: Υπολογισμός εσωτερικού γινομένου z = 0; for (i=0; i<n; i++) { t = x[i]*y[i]; z = z+t; } Χρόνος εκτέλεσης:
12 Είναι η μελέτη του ρυθμού αύξησης του χρόνου εκτέλεσης (ή άλλης παραμέτρου απόδοσης) ως συνάρτηση του μεγέθους της εισόδου Παράδειγμα: Υπολογισμός εσωτερικού γινομένου z = 0; for (i=0; i<n; i++) { t = x[i]*y[i]; z = z+t; } Χρόνος εκτέλεσης: ασυμτωτικά γραμμική
13 Είναι η μελέτη του ρυθμού αύξησης του χρόνου εκτέλεσης (ή άλλης παραμέτρου απόδοσης) ως συνάρτηση του μεγέθους της εισόδου Παράδειγμα: Υπολογισμός εσωτερικού γινομένου Θέλουμε να εξαλείψουμε τις επουσιώδεις λεπτομέρειες z = 0; for (i=0; i<n; i++) { t = x[i]*y[i]; z = z+t; } Χρόνος εκτέλεσης: ασυμτωτικά γραμμική
14 Εξετάζουμε τη συμπεριφορά των συναρτήσεων όσο αυξάνει το μέγεθος της εισόδου
15 Συμβολισμός Θ ασυμτωτικά αυστηρό φράγμα : Υπάρχουν θετικές σταθερές και τέτοιες ώστε για κάθε
16 Συμβολισμός Θ ασυμτωτικά αυστηρό φράγμα : Υπάρχουν θετικές σταθερές και τέτοιες ώστε για κάθε Παράδειγμα 1: Πρέπει να βρούμε θετικές σταθερές και, τέτοιες ώστε για κάθε.
17 Συμβολισμός Θ ασυμτωτικά αυστηρό φράγμα : Υπάρχουν θετικές σταθερές και τέτοιες ώστε για κάθε Παράδειγμα 1: Πρέπει να βρούμε θετικές σταθερές και, τέτοιες ώστε (Σ) για κάθε.
18 Συμβολισμός Θ ασυμτωτικά αυστηρό φράγμα : Υπάρχουν θετικές σταθερές και τέτοιες ώστε για κάθε Παράδειγμα 1: Πρέπει να βρούμε θετικές σταθερές και, τέτοιες ώστε (Σ) για κάθε. Θέλουμε που ισχύει όταν Επίσης θέλουμε και Έχουμε Επιλέγοντας έχουμε Άρα για και ικανοποιείται η συνθήκη (Σ).
19 Συμβολισμός Θ ασυμτωτικά αυστηρό φράγμα : Υπάρχουν θετικές σταθερές και τέτοιες ώστε για κάθε Παράδειγμα 2: Έστω ότι Τότε υπάρχουν θετικές σταθερές και με για κάθε. Δηλαδή για κάθε. Αυτό είναι αδύνατο για σταθερό.
20 Παράδειγμα: Η παρακάτω συνάρτηση εξετάζει τον πίνακα a με Ν ακέραιους και βρίσκει πόσες τριάδες δίνουν άθροισμα μηδέν static public int counttriples(int[] a, int N){ int count=0; for (int i=0; i<n; i++) for (int j=i+1; j<n; j++) for (int k=j+1; k<n; k++) if ( a[i]+a[j]+a[k] == 0) count++; return count; } Δοκιμάζει όλες τις τριάδες με
21 Παράδειγμα: Η παρακάτω συνάρτηση εξετάζει τον πίνακα a με Ν ακέραιους και βρίσκει πόσες τριάδες δίνουν άθροισμα μηδέν static public int counttriples(int[] a, int N){ int count=0; for (int i=0; i<n; i++) for (int j=i+1; j<n; j++) for (int k=j+1; k<n; k++) if ( a[i]+a[j]+a[k] == 0) count++; return count; } Δοκιμάζει όλες τις τριάδες με τριάδες χρόνος εκτέλεσης
22 Συμβολισμός O ασυμτωτικό άνω φράγμα : Υπάρχουν θετικές σταθερές και τέτοιες ώστε για κάθε
23 Συμβολισμός O ασυμτωτικό άνω φράγμα : Υπάρχουν θετικές σταθερές και τέτοιες ώστε για κάθε Π.χ., ισχύει
24 Συμβολισμός O ασυμτωτικό άνω φράγμα : Υπάρχουν θετικές σταθερές και τέτοιες ώστε για κάθε Π.χ., ισχύει Προφανώς
25 Συμβολισμός O ασυμτωτικό άνω φράγμα : Υπάρχουν θετικές σταθερές και τέτοιες ώστε για κάθε Έστω ότι για τις συναρτήσεις και υπάρχει το όριο και έχει τιμή για κάποια σταθερά Τότε
26 Συμβολισμός O ασυμτωτικό άνω φράγμα : Υπάρχουν θετικές σταθερές και τέτοιες ώστε για κάθε Έστω ότι για τις συναρτήσεις και υπάρχει το όριο και έχει τιμή για κάποια σταθερά Τότε Παράδειγμα επειδή
27 Συμβολισμός O ασυμτωτικό άνω φράγμα : Υπάρχουν θετικές σταθερές και τέτοιες ώστε για κάθε Έστω ότι για τις συναρτήσεις και υπάρχει το όριο και έχει τιμή για κάποια σταθερά Τότε Παράδειγμα επειδή
28 Συμβολισμός Ω ασυμτωτικό κάτω φράγμα : Υπάρχουν θετικές σταθερές και τέτοιες ώστε για κάθε
29 Συμβολισμός Ω ασυμτωτικό κάτω φράγμα : Υπάρχουν θετικές σταθερές και τέτοιες ώστε για κάθε Έστω ότι για τις συναρτήσεις και υπάρχει το όριο και έχει τιμή για κάποια σταθερά Τότε Ισχύει
30 Συμβολισμός Ω ασυμτωτικό κάτω φράγμα : Υπάρχουν θετικές σταθερές και τέτοιες ώστε για κάθε Έστω ότι για τις συναρτήσεις και υπάρχει το όριο και έχει τιμή για κάποια σταθερά Τότε Παράδειγμα επειδή
31 Συμβολισμός Ω ασυμτωτικό κάτω φράγμα : Υπάρχουν θετικές σταθερές και τέτοιες ώστε για κάθε Έστω ότι για τις συναρτήσεις και υπάρχει το όριο και έχει τιμή για κάποια σταθερά Τότε Παράδειγμα επειδή
32 Συμβολισμός Θ ασυμτωτικά αυστηρό φράγμα : Υπάρχουν θετικές σταθερές και τέτοιες ώστε για κάθε
33 Συμβολισμός Θ ασυμτωτικά αυστηρό φράγμα : Υπάρχουν θετικές σταθερές και τέτοιες ώστε για κάθε Ισχύει αν και μόνο αν και Έστω ότι για τις συναρτήσεις και υπάρχουν τα όρια, όπου και για κάποια σταθερά. Τότε
34 Συμβολισμός o ασυμτωτικά μη αυστηρό άνω φράγμα : Για οποιαδήποτε σταθερά, υπάρχει σταθερά τέτοια ώστε για κάθε Παράδειγμα: αλλά Έστω ότι για τις συναρτήσεις και υπάρχει το όριο όπου. Τότε
35 Συμβολισμός ω ασυμτωτικά μη αυστηρό κάτω φράγμα : Για οποιαδήποτε σταθερά, υπάρχει σταθερά τέτοια ώστε για κάθε Παράδειγμα: αλλά Έστω ότι για τις συναρτήσεις και υπάρχει το όριο όπου. Τότε Ισχύει
36 Προσοχή! Ακόμα και δύο γνησίως αύξουσες συναρτήσεις μπορεί να έχουν πολλά σημεία τομής
37 Προσοχή! Δεν είναι όλες οι συναρτήσεις ασυμπτωτικά συγκρίσιμες π.χ., και
38 Ιδιότητες Μεταβατικότητα: και Αυτοπάθεια: Συμμετρία: όταν και μόνο όταν
39 Ιδιότητες Μεταβατικότητα: και Αυτοπάθεια: Συμμετρία: όταν και μόνο όταν Μεταβατικότητα και αυτοπάθεια ισχύουν και για τους συμβολισμούς Ο, Ω, ο και ω. Στη θέση της συμμετρίας έχουμε: όταν και μόνο όταν
40 Παραδείγματα Θέλουμε να διατάξουμε τις παρακάτω συναρτήσεις ως προς το ρυθμό αύξησης, από τη μικρότερη ως τη μεγαλύτερη
41 Παραδείγματα Θέλουμε να διατάξουμε τις παρακάτω συναρτήσεις ως προς το ρυθμό αύξησης, από τη μικρότερη ως τη μεγαλύτερη Έχουμε Για και Γενικά Διάταξη
42 Παραδείγματα Θέλουμε να διατάξουμε τις παρακάτω συναρτήσεις ως προς το ρυθμό αύξησης, από τη μικρότερη ως τη μεγαλύτερη Έχουμε Για Έχουμε Διάταξη
43 Παραδείγματα Θέλουμε να διατάξουμε τις παρακάτω συναρτήσεις ως προς το ρυθμό αύξησης, από τη μικρότερη ως τη μεγαλύτερη Έχουμε Για Έχουμε Διάταξη
44 Παραδείγματα Θέλουμε να διατάξουμε τις παρακάτω συναρτήσεις ως προς το ρυθμό αύξησης, από τη μικρότερη ως τη μεγαλύτερη Έχουμε Για Έχουμε Διάταξη
45 Παραδείγματα Θέλουμε να διατάξουμε τις παρακάτω συναρτήσεις ως προς το ρυθμό αύξησης, από τη μικρότερη ως τη μεγαλύτερη Έχουμε Για Έχουμε Διάταξη
46 Παραδείγματα Θέλουμε να διατάξουμε τις παρακάτω συναρτήσεις ως προς το ρυθμό αύξησης, από τη μικρότερη ως τη μεγαλύτερη Επομένως έχουμε
47 Πολυωνυμικός Αλγόριθμος Έχει πολυωνυμικό χρόνο εκτέλεσης όπου, δηλαδή είναι μία θετική σταθερά Κλάση πολυπλοκότητας : περιλαμβάνει τα προβλήματα που επιδέχονται λύση σε πολυωνυμικό χρόνο (δηλ. υπάρχουν πολυωνυμικοί αλγόριθμοι που τα επιλύουν)
48 Πρακτικές πολυπλοκότητες λογαριθμική κλίμακα
49 Χρήσιμες συναρτήσεις στην ανάλυση αλγορίθμων κάτω ακέραιο μέρος : μεγαλύτερος ακέραιος άνω ακέραιο μέρος : μικρότερος ακέραιος φυσικός λογάριθμος : τέτοιο ώστε δυαδικός λογάριθμος : τέτοιο ώστε ακέραιος δυαδικός λογάριθμος : (αριθμός δυαδικών ψηφίων στη δυαδική αναπαράσταση του ) - 1 Ν-οστός αρμονικός αριθμός
50 Χρήσιμες συναρτήσεις στην ανάλυση αλγορίθμων διωνυμικοί συντελεστές για μικρή σταθερά Προσέγγιση Stirling Γεωμετρικό άθροισμα
51 Παράδειγμα: Δυαδική Αναζήτηση Μας δίνεται μία ακολουθία από n ακέραιους και ένας ακέραιος Θέλουμε να βρούμε ένα Δυαδική αναζήτηση: προϋποθέτει να έχει γίνει ταξινόμηση της ακολουθίας δηλαδή τέτοιο ώστε Κάθε βήμα είτε βρίσκει το v είτε αποκλείει τα μισά σχεδόν στοιχεία της ακολουθίας που απομένουν.
52 Παράδειγμα: Δυαδική Αναζήτηση Μας δίνεται μία ακολουθία από n ακέραιους και ένας ακέραιος Θέλουμε να βρούμε ένα Δυαδική αναζήτηση: προϋποθέτει να έχει γίνει ταξινόμηση της ακολουθίας δηλαδή τέτοιο ώστε Κάθε βήμα είτε βρίσκει το v είτε αποκλείει τα μισά σχεδόν στοιχεία της ακολουθίας που απομένουν. θέση στοιχείο
53 Παράδειγμα: Δυαδική Αναζήτηση Μας δίνεται μία ακολουθία από n ακέραιους και ένας ακέραιος Θέλουμε να βρούμε ένα Δυαδική αναζήτηση: προϋποθέτει να έχει γίνει ταξινόμηση της ακολουθίας δηλαδή τέτοιο ώστε Κάθε βήμα είτε βρίσκει το v είτε αποκλείει τα μισά σχεδόν στοιχεία της ακολουθίας που απομένουν. θέση στοιχείο v =111 θέση μέσου στοιχείου = (15+1)/2 = 8 α 8 = 56 < v
54 Παράδειγμα: Δυαδική Αναζήτηση Μας δίνεται μία ακολουθία από n ακέραιους και ένας ακέραιος Θέλουμε να βρούμε ένα Δυαδική αναζήτηση: προϋποθέτει να έχει γίνει ταξινόμηση της ακολουθίας δηλαδή τέτοιο ώστε Κάθε βήμα είτε βρίσκει το v είτε αποκλείει τα μισά σχεδόν στοιχεία της ακολουθίας που απομένουν. θέση στοιχείο v =111 θέση μέσου στοιχείου = (15+1)/2 = 8 α 8 = 56 < v
55 Παράδειγμα: Δυαδική Αναζήτηση Μας δίνεται μία ακολουθία από n ακέραιους και ένας ακέραιος Θέλουμε να βρούμε ένα Δυαδική αναζήτηση: προϋποθέτει να έχει γίνει ταξινόμηση της ακολουθίας δηλαδή τέτοιο ώστε Κάθε βήμα είτε βρίσκει το v είτε αποκλείει τα μισά σχεδόν στοιχεία της ακολουθίας που απομένουν. θέση στοιχείο v =111 θέση μέσου στοιχείου = (9+15)/2 = 12 α 12 = 128 > v
56 Παράδειγμα: Δυαδική Αναζήτηση Μας δίνεται μία ακολουθία από n ακέραιους και ένας ακέραιος Θέλουμε να βρούμε ένα Δυαδική αναζήτηση: προϋποθέτει να έχει γίνει ταξινόμηση της ακολουθίας δηλαδή τέτοιο ώστε Κάθε βήμα είτε βρίσκει το v είτε αποκλείει τα μισά σχεδόν στοιχεία της ακολουθίας που απομένουν. θέση στοιχείο v =111 θέση μέσου στοιχείου = (9+15)/2 = 12 α 12 = 128 > v
57 Παράδειγμα: Δυαδική Αναζήτηση Μας δίνεται μία ακολουθία από n ακέραιους και ένας ακέραιος Θέλουμε να βρούμε ένα Δυαδική αναζήτηση: προϋποθέτει να έχει γίνει ταξινόμηση της ακολουθίας δηλαδή τέτοιο ώστε Κάθε βήμα είτε βρίσκει το v είτε αποκλείει τα μισά σχεδόν στοιχεία της ακολουθίας που απομένουν. θέση στοιχείο v =111 θέση μέσου στοιχείου = (9+11)/2 = 10 α 10 = 90 < v
58 Παράδειγμα: Δυαδική Αναζήτηση Μας δίνεται μία ακολουθία από n ακέραιους και ένας ακέραιος Θέλουμε να βρούμε ένα Δυαδική αναζήτηση: προϋποθέτει να έχει γίνει ταξινόμηση της ακολουθίας δηλαδή τέτοιο ώστε Κάθε βήμα είτε βρίσκει το v είτε αποκλείει τα μισά σχεδόν στοιχεία της ακολουθίας που απομένουν. θέση στοιχείο v =111 θέση μέσου στοιχείου = (9+11)/2 = 10 α 10 = 90 < v
59 Παράδειγμα: Δυαδική Αναζήτηση Μας δίνεται μία ακολουθία από n ακέραιους και ένας ακέραιος Θέλουμε να βρούμε ένα Δυαδική αναζήτηση: προϋποθέτει να έχει γίνει ταξινόμηση της ακολουθίας δηλαδή τέτοιο ώστε Κάθε βήμα είτε βρίσκει το v είτε αποκλείει τα μισά σχεδόν στοιχεία της ακολουθίας που απομένουν. θέση στοιχείο v =111 θέση μέσου στοιχείου = (11+11)/2 = 11 α 11 = 102 < v
60 Παράδειγμα: Δυαδική Αναζήτηση Μας δίνεται μία ακολουθία από n ακέραιους και ένας ακέραιος Θέλουμε να βρούμε ένα Δυαδική αναζήτηση: προϋποθέτει να έχει γίνει ταξινόμηση της ακολουθίας δηλαδή τέτοιο ώστε Κάθε βήμα είτε βρίσκει το v είτε αποκλείει τα μισά σχεδόν στοιχεία της ακολουθίας που απομένουν. θέση στοιχείο v =111 θέση μέσου στοιχείου = (11+11)/2 = 11 α 11 = 102 < v
61 Παράδειγμα: Δυαδική Αναζήτηση Μας δίνεται μία ακολουθία από n ακέραιους και ένας ακέραιος Θέλουμε να βρούμε ένα Δυαδική αναζήτηση: προϋποθέτει να έχει γίνει ταξινόμηση της ακολουθίας δηλαδή τέτοιο ώστε Κάθε βήμα είτε βρίσκει το v είτε αποκλείει τα μισά σχεδόν στοιχεία της ακολουθίας που απομένουν. θέση στοιχείο Το v δεν υπάρχει στην ακολουθία. Βρήκαμε όμως το αμέσως μικρότερο στοιχείο.
62 Παράδειγμα: Δυαδική Αναζήτηση Μας δίνεται μία ακολουθία από n ακέραιους και ένας ακέραιος Θέλουμε να βρούμε ένα Δυαδική αναζήτηση: προϋποθέτει να έχει γίνει ταξινόμηση της ακολουθίας δηλαδή τέτοιο ώστε Κάθε βήμα είτε βρίσκει το v είτε αποκλείει τα μισά σχεδόν στοιχεία της ακολουθίας που απομένουν. public static int binarysearch(int a[], int v, int l, int r) { while (r>=l) { int m=(l+r)/2; if (v==a[m]) return m; if (v<a[m]) r=m-1; else l=m+1;} return -1; }
63 Παράδειγμα: Δυαδική Αναζήτηση Μας δίνεται μία ακολουθία από n ακέραιους και ένας ακέραιος Θέλουμε να βρούμε ένα Δυαδική αναζήτηση: προϋποθέτει να έχει γίνει ταξινόμηση της ακολουθίας δηλαδή τέτοιο ώστε Κάθε βήμα είτε βρίσκει το v είτε αποκλείει τα μισά σχεδόν στοιχεία της ακολουθίας που απομένουν. Ανάλυση: Έστω Τ(n) ο χρόνος της αναζήτησης σε ακολουθία n στοιχείων.
64 Παράδειγμα: Δυαδική Αναζήτηση Μας δίνεται μία ακολουθία από n ακέραιους και ένας ακέραιος Θέλουμε να βρούμε ένα Δυαδική αναζήτηση: προϋποθέτει να έχει γίνει ταξινόμηση της ακολουθίας δηλαδή τέτοιο ώστε Κάθε βήμα είτε βρίσκει το v είτε αποκλείει τα μισά σχεδόν στοιχεία της ακολουθίας που απομένουν. Ανάλυση: Έστω Τ(n) ο χρόνος της αναζήτησης σε ακολουθία n στοιχείων. Ισχύει χειρότερη περίπτωση
65 Αναζήτηση Μας δίνεται μία ακολουθία από n ακέραιους και ένας ακέραιος Θέλουμε να βρούμε ένα τέτοιο ώστε Χρόνος δυαδικής αναζήτησης = Με πίνακες διασποράς επιτυγχάνουμε (Προσεχώς σε μερικές εβδομάδες...) χρόνο.
66 Αναζήτηση Εύρεση προκατόχου Μας δίνεται μία ακολουθία από n ακέραιους και ένας ακέραιος Θέλουμε να βρούμε τον μεγαλύτερο τέτοιο ώστε Χρόνος δυαδικής αναζήτησης = Καλύτερος δυνατός ασυμπτωτικός χρόνος όταν βασιζόμαστε μόνο σε πράξεις σύγκρισης (>,<,=). Με πιο περίπλοκες δομές μπορούμε να πετύχουμε χρόνο.
67 Αναδρομικές σχέσεις Πολύ συχνά ο χρόνος εκτέλεσης ενός αλγόριθμου μπορεί να εκφραστεί μέσω κάποιας αναδρομικής σχέσης. Παράδειγμα: Ακολουθιακή αναζήτηση και απαλοιφή ενός στοιχείου μέχρι να μείνει κενή ακολουθία.
68 Αναδρομικές σχέσεις Πολύ συχνά ο χρόνος εκτέλεσης ενός αλγόριθμου μπορεί να εκφραστεί μέσω κάποιας αναδρομικής σχέσης. Παράδειγμα: Ακολουθιακή αναζήτηση και απαλοιφή ενός στοιχείου μέχρι να μείνει κενή ακολουθία.
69 Αναδρομικές σχέσεις Πολύ συχνά ο χρόνος εκτέλεσης ενός αλγόριθμου μπορεί να εκφραστεί μέσω κάποιας αναδρομικής σχέσης. Παράδειγμα: Ακολουθιακή αναζήτηση και απαλοιφή ενός στοιχείου μέχρι να μείνει κενή ακολουθία.
70 Αναδρομικές σχέσεις Πολύ συχνά ο χρόνος εκτέλεσης ενός αλγόριθμου μπορεί να εκφραστεί μέσω κάποιας αναδρομικής σχέσης. Παράδειγμα: Ακολουθιακή αναζήτηση και απαλοιφή ενός στοιχείου μέχρι να μείνει κενή ακολουθία. Έστω Τ(n) ο χρόνος εκτέλεσης για ακολουθία n στοιχείων στη χειρότερη περίπτωση. Ισχύει
71 Αναδρομικές σχέσεις Πολύ συχνά ο χρόνος εκτέλεσης ενός αλγόριθμου μπορεί να εκφραστεί μέσω κάποιας αναδρομικής σχέσης. Παράδειγμα: Ακολουθιακή αναζήτηση και απαλοιφή ενός στοιχείου μέχρι να μείνει κενή ακολουθία. Έστω Τ(n) ο χρόνος εκτέλεσης για ακολουθία n στοιχείων στη χειρότερη περίπτωση. Ισχύει Με τη μέθοδο της αντικατάστασης λαμβάνουμε
72 Αναδρομικές σχέσεις Παράδειγμα: Ακολουθιακή αναζήτηση και απαλοιφή ενός στοιχείου μέχρι να μείνει κενή ακολουθία. Έστω Τ(n) ο χρόνος εκτέλεσης για ακολουθία n στοιχείων στη χειρότερη περίπτωση. Ισχύει Με τη μέθοδο της αντικατάστασης λαμβάνουμε
73 Αναδρομικές σχέσεις Παράδειγμα: Ακολουθιακή αναζήτηση και απαλοιφή ενός στοιχείου μέχρι να μείνει κενή ακολουθία. Έστω Τ(n) ο χρόνος εκτέλεσης για ακολουθία n στοιχείων στη χειρότερη περίπτωση. Ισχύει Με επαγωγή: Θέλουμε να δείξουμε ότι δηλαδή ότι για κάποια θετική σταθερά c. Η βάση της επαγωγής είναι που ισχύει για Επαγωγικό βήμα: Έστω Έχουμε
74 Αναδρομικές σχέσεις Παράδειγμα: Ακολουθιακή αναζήτηση και απαλοιφή ενός στοιχείου μέχρι να μείνει κενή ακολουθία. Έστω Τ(n) ο χρόνος εκτέλεσης για ακολουθία n στοιχείων στη χειρότερη περίπτωση. Ισχύει Με επαγωγή: Επίσης ισχύει. Θα δείξουμε επαγωγικά ότι για κάποια θετική σταθερά c. Η βάση της επαγωγής είναι που ισχύει για Επαγωγικό βήμα: Έστω Έχουμε που ισχύει για
75 Αναδρομικές σχέσεις Παράδειγμα: Ακολουθιακή αναζήτηση και απαλοιφή ενός στοιχείου μέχρι να μείνει κενή ακολουθία. Έστω Τ(n) ο χρόνος εκτέλεσης για ακολουθία n στοιχείων στη χειρότερη περίπτωση. Ισχύει Άρα έχουμε και
76 Αναδρομικές σχέσεις Παράδειγμα: Με τη μέθοδο της αντικατάστασης λαμβάνουμε
77 Αναδρομικές σχέσεις Παράδειγμα: Με τη μέθοδο της αντικατάστασης λαμβάνουμε
78 Αναδρομικές σχέσεις Παράδειγμα: Εναλλακτικά έχουμε: Τότε Άρα οπότε
Πανεπιστήμιο Ιωαννίνων Τμήμα Μηχανικών Η/Υ και Πληροφορικής Δομές Δεδομένων [ΠΛΥ302] Χειμερινό Εξάμηνο 2013
Πανεπιστήμιο Ιωαννίνων Τμήμα Μηχανικών Η/Υ και Πληροφορικής Δομές Δεδομένων [ΠΛΥ302] Χειμερινό Εξάμηνο 2013 Λυμένες Ασκήσεις Σετ Α: Ανάλυση Αλγορίθμων Άσκηση 1 Πραγματοποιήσαμε μια σειρά μετρήσεων του
Διαβάστε περισσότεραΕισαγωγή στην Ανάλυση Αλγορίθμων (2-3)
Εισαγωγή στην Ανάλυση Αλγορίθμων (2-3) 3.1 Ασυμπτωτικός συμβολισμός (Ι) Οι ορισμοί που ακολουθούν μας επιτρέπουν να επιχειρηματολογούμε με ακρίβεια για την ασυμπτωτική συμπεριφορά. Οι f(n) και g(n) συμβολίζουν
Διαβάστε περισσότεραΠανεπιστήμιο Ιωαννίνων Τμήμα Πληροφορικής Δομές Δεδομένων [ΠΛΥ302] Χειμερινό Εξάμηνο 2012
Πανεπιστήμιο Ιωαννίνων Τμήμα Πληροφορικής Δομές Δεδομένων [ΠΛΥ302] Χειμερινό Εξάμηνο 2012 Ενδεικτικές απαντήσεις 1 ου σετ ασκήσεων. Άσκηση 1 Πραγματοποιήσαμε μια σειρά μετρήσεων του χρόνου εκτέλεσης τριών
Διαβάστε περισσότεραΚεφάλαιο 2 Ανάλυση Αλγορίθμων
Κεφάλαιο Ανάλυση Αλγορίθμων Περιεχόμενα.1 Εισαγωγή... 0. Εμπειρική και Θεωρητική Ανάλυση Αλγορίθμων.....1 Εμπειρική Πολυπλοκότητα..... Θεωρητική Πολυπλοκότητα... 3.3 Ανάλυση Χειρότερης και Αναμενόμενης
Διαβάστε περισσότεραΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ. Αρχές Ανάλυσης Αλγορίθµων Κεφάλαιο 2. Ε. Μαρκάκης Επικ. Καθηγητής
ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ Αρχές Ανάλυσης Αλγορίθµων Κεφάλαιο 2 Ε. Μαρκάκης Επικ. Καθηγητής Περίληψη Εµπειρική ανάλυση αλγορίθµων Μαθηµατική ανάλυση αλγορίθµων Αύξηση συναρτήσεων Συµβολισµός µεγάλου όµικρον Παραδείγµατα
Διαβάστε περισσότεραΠολυπλοκότητα. Παράμετροι της αποδοτικότητας ενός αλγόριθμου: Χρόνος εκτέλεσης. Απαιτούμενοι πόροι, π.χ. μνήμη, εύρος ζώνης. Προσπάθεια υλοποίησης
Παράμετροι της αποδοτικότητας ενός αλγόριθμου: Χρόνος εκτέλεσης Απαιτούμενοι πόροι, π.χ. μνήμη, εύρος ζώνης Προσπάθεια υλοποίησης Παράμετροι της αποδοτικότητας ενός αλγόριθμου: Χρόνος εκτέλεσης Απαιτούμενοι
Διαβάστε περισσότεραΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ
ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ Ενότητα 3: Ασυμπτωτικός συμβολισμός Μαρία Σατρατζέμη Τμήμα Εφαρμοσμένης Πληροφορικής Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons.
Διαβάστε περισσότεραΕισαγωγή στους Αλγόριθμους. Παύλος Εφραιμίδης, Λέκτορας
Εισαγωγή στους Αλγόριθμους Παύλος Εφραιμίδης, Λέκτορας http://pericles.ee.duth.gr 1 Περιεχόμενα Μαθήματος Εισαγωγή στου Αλγόριθμους Πολυπλοκότητα Αλγορίθμων Ασυμπτωτική Ανάλυση Θεωρία Γράφων Κλάσεις Πολυπλοκότητας
Διαβάστε περισσότεραΑλγόριθμοι και Πολυπλοκότητα
Αλγόριθμοι και Πολυπλοκότητα Ανάλυση Αλγορίθμων Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ανάλυση Αλγορίθμων Η ανάλυση αλγορίθμων περιλαμβάνει τη διερεύνηση του τρόπου
Διαβάστε περισσότεραΕιδικά θέματα Αλγορίθμων και Δομών Δεδομένων (ΠΛΕ073) Απαντήσεις 1 ου Σετ Ασκήσεων
Ειδικά θέματα Αλγορίθμων και Δομών Δεδομένων (ΠΛΕ073) Απαντήσεις 1 ου Σετ Ασκήσεων Άσκηση 1 α) Η δομή σταθμισμένης ένωσης με συμπίεση διαδρομής μπορεί να τροποποιηθεί πολύ εύκολα ώστε να υποστηρίζει τις
Διαβάστε περισσότεραΥπολογιστική Πολυπλοκότητα
Υπολογιστική Πολυπλοκότητα Υπολογιστική πολυπλοκότητα αλγόριθµου Α: Ποσότητα υπολογιστικών πόρων που απαιτεί Α ως αύξουσα συνάρτηση µεγέθους στιγµιότυπου εισόδου. Χρόνος, µνήµη, επεξεργαστές, επικοινωνία,
Διαβάστε περισσότεραΔομές Δεδομένων Ενότητα 2
ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Ενότητα 2: Θέματα Απόδοσης Απόστολος Παπαδόπουλος Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons.
Διαβάστε περισσότεραΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ
ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ Ενότητα 2: Ασυμπτωτικός συμβολισμός Μαρία Σατρατζέμη Τμήμα Εφαρμοσμένης Πληροφορικής Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons.
Διαβάστε περισσότεραΑσυμπτωτικός Συμβολισμός
Ασυμπτωτικός Συμβολισμός Επιμέλεια διαφανειών: Δημήτρης Φωτάκης (λίγες προσθήκες: Άρης Παγουρτζής) Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Υπολογιστική Πολυπλοκότητα
Διαβάστε περισσότεραΕισαγωγή στους Αλγόριθµους. Αλγόριθµοι. Ιστορικά Στοιχεία. Ο πρώτος Αλγόριθµος. Παραδείγµατα Αλγορίθµων. Τι είναι Αλγόριθµος
Εισαγωγή στους Αλγόριθµους Αλγόριθµοι Τι είναι αλγόριθµος; Τι µπορεί να υπολογίσει ένας αλγόριθµος; Πως αξιολογείται ένας αλγόριθµος; Παύλος Εφραιµίδης pefraimi@ee.duth.gr Αλγόριθµοι Εισαγωγικές Έννοιες
Διαβάστε περισσότεραΣυνδετικότητα γραφήματος (graph connectivity)
Συνδετικότητα γραφήματος (graph connectivity) Συνδετικότητα γραφήματος (graph connectivity) Υπάρχει μονοπάτι μεταξύ α και β; α Παραδείγματα: υπολογιστές ενός δικτύου ιστοσελίδες ισοδύναμες μεταβλητές ενός
Διαβάστε περισσότεραΠεριεχόμενα. Περιεχόμενα
Περιεχόμενα xv Περιεχόμενα 1 Αρχές της Java... 1 1.1 Προκαταρκτικά: Κλάσεις, Τύποι και Αντικείμενα... 2 1.1.1 Βασικοί Τύποι... 5 1.1.2 Αντικείμενα... 7 1.1.3 Τύποι Enum... 14 1.2 Μέθοδοι... 15 1.3 Εκφράσεις...
Διαβάστε περισσότεραΑσυμπτωτικός Συμβολισμός
Ασυμπτωτικός Συμβολισμός ιδάσκοντες: Φ. Αφράτη,. Φωτάκης Επιμέλεια διαφανειών:. Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Υπολογιστική Πολυπλοκότητα Υπολογιστική
Διαβάστε περισσότεραΠΛΕ075: Προηγμένη Σχεδίαση Αλγορίθμων και Δομών Δεδομένων. Λουκάς Γεωργιάδης
ΠΛΕ075: Προηγμένη Σχεδίαση Αλγορίθμων και Δομών Δεδομένων Λουκάς Γεωργιάδης loukas@cs.uoi.gr www.cs.uoi.gr/~loukas Βασικές έννοιες και εφαρμογές Αλγόριθμος: Μέθοδος για την επίλυση ενός προβλήματος Δομή
Διαβάστε περισσότεραΟυρά Προτεραιότητας (priority queue)
Ουρά Προτεραιότητας (priority queue) Δομή δεδομένων που υποστηρίζει δύο βασικές λειτουργίες : Εισαγωγή στοιχείου με δεδομένο κλειδί. Επιστροφή ενός στοιχείου με μέγιστο (ή ελάχιστο) κλειδί και διαγραφή
Διαβάστε περισσότεραΔομές Δεδομένων & Αλγόριθμοι
- Πίνακες 1 Πίνακες Οι πίνακες έχουν σταθερό μέγεθος και τύπο δεδομένων. Βασικά πλεονεκτήματά τους είναι η απλότητα προγραμματισμού τους και η ταχύτητα. Ωστόσο δεν παρέχουν την ευελιξία η οποία απαιτείται
Διαβάστε περισσότεραΑναδρομή Ανάλυση Αλγορίθμων
Αναδρομή Ανάλυση Αλγορίθμων Παράδειγμα: Υπολογισμός του παραγοντικού Ορισμός του n! n! = n x (n - 1) x x 2 x 1 Ο παραπάνω ορισμός μπορεί να γραφεί ως n! = 1 αν n = 0 n x (n -1)! αλλιώς Παράδειγμα (συνέχ).
Διαβάστε περισσότεραΔομές Δεδομένων και Αλγόριθμοι
Δομές Δεδομένων και Αλγόριθμοι Χρήστος Γκόγκος ΤΕΙ Ηπείρου, Τμήμα Μηχανικών Πληροφορικής ΤΕ Χειμερινό Εξάμηνο 2014-2015 (Παρουσίαση 6) 1 / 20 Ρυθμοί αύξησης Γραμμικός ρυθμός αύξησης: n, 2n, Πολυωνυμικός
Διαβάστε περισσότεραn ίδια n διαφορετικά n n 0 n n n 1 n n n n 0 4
Διακριτά Μαθηματικά Ι Επαναληπτικό Μάθημα 1 Συνδυαστική 2 Μεταξύ 2n αντικειμένων, τα n είναι ίδια. Βρείτε τον αριθμό των επιλογών n αντικειμένων από αυτά τα 2n αντικείμενα. Μεταξύ 3n + 1 αντικειμένων τα
Διαβάστε περισσότεραΑΣΥΜΠΤΩΤΙΚΗ ΑΝΑΛΥΣΗ & ΠΡΟΣΘΕΣΗ
ΑΣΥΜΠΤΩΤΙΚΗ ΑΝΑΛΥΣΗ & ΠΡΟΣΘΕΣΗ Θέματα μελέτης Ορθότητα και απόδοση αλγορίθμων Παρουσίαση και ανάλυση αλγορίθμου για πρόσθεση Al Khwarizmi Αλγόριθμοι Το δεκαδικό σύστημα εφευρέθηκε στην Ινδία περίπου το
Διαβάστε περισσότεραΔιάλεξη 04: Παραδείγματα Ανάλυσης
Διάλεξη 04: Παραδείγματα Ανάλυσης Πολυπλοκότητας/Ανάλυση Αναδρομικών Αλγόριθμων Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: - Παραδείγματα Ανάλυσης Πολυπλοκότητας : Μέθοδοι, παραδείγματα
Διαβάστε περισσότεραπεριεχόμενα ρυθιμός αύξησης συναρτήσεων ασυμπτωτική πολυπλοκότητα ασυμπτωτική επίδοση ασυμπτωτικοί συμβολισμοί ασυμπτωτικός συμβολισμος
ρυθμός αύξησης συναρτήσεων περιεχόμενα Ασυμπτωτικός συμβολισμός Καθιερωμένοι συμβολισμοί και συνήθεις συναρτήσεις Παύλος Εφραιμίδης 2 ασυμπτωτική πολυπλοκότητα ασυμπτωτική επίδοση Πολυπλοκότητα χειρότερης
Διαβάστε περισσότεραΠίνακες Διασποράς. Χρησιμοποιούμε ένα πίνακα διασποράς T και μια συνάρτηση διασποράς h. Ένα στοιχείο με κλειδί k αποθηκεύεται στη θέση
Πίνακες Διασποράς Χρησιμοποιούμε ένα πίνακα διασποράς T και μια συνάρτηση διασποράς h Ένα στοιχείο με κλειδί k αποθηκεύεται στη θέση κλειδί k T 0 1 2 3 4 5 6 7 U : χώρος πιθανών κλειδιών Τ : πίνακας μεγέθους
Διαβάστε περισσότεραa n + 6a n a n 2 + 8a n 3 = 0, a 0 = 1, a 1 = 2, a 2 = 8
Διακριτά Μαθηματικά Σχέσεις Αναδρομής Ι 1 / 17 a n + 6a n 1 + 12a n 2 + 8a n 3 = 0, a 0 = 1, a 1 = 2, a 2 = 8 2 / 17 a n + 6a n 1 + 12a n 2 + 8a n 3 = 0, a 0 = 1, a 1 = 2, a 2 = 8 1ος τρόπος: Εχουμε τη
Διαβάστε περισσότεραΔιαίρει-και-Βασίλευε. Διαίρει-και-Βασίλευε. MergeSort. MergeSort. Πρόβλημα Ταξινόμησης: Είσοδος : ακολουθία n αριθμών (α 1
Διαίρει-και-Βασίλευε Διδάσκοντες: Σ. Ζάχος, Δ. Φωτάκης Επιμέλεια διαφανειών: Δ. Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Διαίρει-και-Βασίλευε Γενική μέθοδος
Διαβάστε περισσότεραΑσυμπτωτικός Συμβολισμός
Ασυμπτωτικός Συμβολισμός ημήτρης Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Υπολογιστική Πολυπλοκότητα Υπολογιστική πολυπλοκότητα αλγόριθμου Α: Ποσότητα
Διαβάστε περισσότεραUnion Find, Λεξικό. Δημήτρης Φωτάκης. Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών. Εθνικό Μετσόβιο Πολυτεχνείο
Union Find, Λεξικό Δημήτρης Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Διαχείριση Διαμερίσεων Συνόλου Στοιχεία σύμπαντος διαμερίζονται σε κλάσεις ισοδυναμίας
Διαβάστε περισσότεραΔομές Δεδομένων και Αλγόριθμοι
Δομές Δεδομένων και Αλγόριθμοι Χρήστος Γκόγκος ΤΕΙ Ηπείρου, Τμήμα Μηχανικών Πληροφορικής ΤΕ Χειμερινό Εξάμηνο 2014-2015 (Παρουσίαση 5) 1 / 17 Απόδοση προγραμμάτων Συχνά χρειάζεται να εκτιμηθεί η απόδοση
Διαβάστε περισσότεραΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ. ΘΕΩΡΗΤΙΚΗ ΑΣΚΗΣΗ 1 ΛΥΣΕΙΣ Ανάλυση Πολυπλοκότητας
ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΠΛ 231: Δομές Δεδομένων και Αλγόριθμοι ΘΕΩΡΗΤΙΚΗ ΑΣΚΗΣΗ 1 ΛΥΣΕΙΣ Ανάλυση Πολυπλοκότητας ΠΕΡΙΓΡΑΦΗ Σε αυτή την άσκηση καλείστε να αναλύσετε και να υπολογίσετε το
Διαβάστε περισσότεραΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΦΡΟΝΤΙΣΤΗΡΙΟ ΑΛΓΟΡΙΘΜΩΝ ΒΟΗΘΟΣ: ΒΑΓΓΕΛΗΣ ΔΟΥΡΟΣ
1 ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΦΡΟΝΤΙΣΤΗΡΙΟ ΑΛΓΟΡΙΘΜΩΝ ΒΟΗΘΟΣ: ΒΑΓΓΕΛΗΣ ΔΟΥΡΟΣ Φροντιστήριο #10: Αλγόριθμοι Διαίρει & Βασίλευε: Master Theorem, Αλγόριθμοι Ταξινόμησης, Πιθανοτικός
Διαβάστε περισσότεραΔομές Αναζήτησης. κλειδί από ολικά διατεταγμένο σύνολο. Θέλουμε να υποστηρίξουμε δύο βασικές λειτουργίες: Εισαγωγή ενός νέου στοιχείου
Δομές Αναζήτησης Χειριζόμαστε ένα σύνολο στοιχείων κλειδί από ολικά διατεταγμένο σύνολο όπου το κάθε στοιχείο έχει ένα Θέλουμε να υποστηρίξουμε δύο βασικές λειτουργίες: Εισαγωγή ενός νέου στοιχείου με
Διαβάστε περισσότεραΔομές Δεδομένων (Data Structures)
Δομές Δεδομένων (Data Structures) Ανάλυση - Απόδοση Αλγορίθμων Έλεγχος Αλγορίθμων. Απόδοση Προγραμμάτων. Χωρική/Χρονική Πολυπλοκότητα. Ασυμπτωτικός Συμβολισμός. Παραδείγματα. Αλγόριθμοι: Βασικές Έννοιες
Διαβάστε περισσότεραΚεφάλαιο 11 Ένωση Ξένων Συνόλων
Κεφάλαιο 11 Ένωση Ξένων Συνόλων Περιεχόμενα 11.1 Εισαγωγή... 227 11.2 Εφαρμογή στο Πρόβλημα της Συνεκτικότητας... 228 11.3 Δομή Ξένων Συνόλων με Συνδεδεμένες Λίστες... 229 11.4 Δομή Ξένων Συνόλων με Ανοδικά
Διαβάστε περισσότεραΣχεδίαση Αλγορίθμων -Τμήμα Πληροφορικής ΑΠΘ - Εξάμηνο 4ο
Πολλαπλασιασμός μεγάλων ακεραίων (1) Για να πολλαπλασιάσουμε δύο ακεραίους με n 1 και n 2 ψηφία με το χέρι, θα εκτελέσουμε n 1 n 2 πράξεις πολλαπλασιασμού Πρόβλημα ρβημ όταν έχουμε πολλά ψηφία: A = 12345678901357986429
Διαβάστε περισσότεραΑναζήτηση. 1. Σειριακή αναζήτηση 2. Δυαδική Αναζήτηση. Εισαγωγή στην Ανάλυση Αλγορίθμων Μάγια Σατρατζέμη
Αναζήτηση. Σειριακή αναζήτηση. Δυαδική Αναζήτηση Εισαγωγή στην Ανάλυση Αλγορίθμων Μάγια Σατρατζέμη Παραδοχή Στη συνέχεια των διαφανειών (διαλέξεων) η ασυμπτωτική έκφραση (συμβολισμός Ο, Ω, Θ) του χρόνου
Διαβάστε περισσότεραΥπολογιστικό Πρόβληµα
Υπολογιστικό Πρόβληµα Μετασχηµατισµός δεδοµένων εισόδου σε δεδοµένα εξόδου. Δοµή δεδοµένων εισόδου (έγκυρο στιγµιότυπο). Δοµή και ιδιότητες δεδοµένων εξόδου (απάντηση ή λύση). Τυπικά: διµελής σχέση στις
Διαβάστε περισσότεραΟυρά Προτεραιότητας (priority queue)
Ουρά Προτεραιότητας (priority queue) Δομή δεδομένων που υποστηρίζει τις ακόλουθες λειτουργίες PQinsert : εισαγωγή στοιχείου PQdelmax : επιστροφή του στοιχείου με το μεγαλύτερο* κλειδί και διαγραφή του
Διαβάστε περισσότερα- ΟΡΙΟ - ΣΥΝΕΧΕΙΑ ΣΥΝΑΡΤΗΣΗΣ ΕΝΟΤΗΤΑ 6: ΜΗ ΠΕΠΕΡΑΣΜΕΝΟ ΟΡΙΟ ΣΤΟ
ΚΕΦΑΛΑΙΟ ο: ΣΥΝΑΡΤΗΣΕΙΣ - ΟΡΙΟ - ΣΥΝΕΧΕΙΑ ΣΥΝΑΡΤΗΣΗΣ ΕΝΟΤΗΤΑ 6: ΜΗ ΠΕΠΕΡΑΣΜΕΝΟ ΟΡΙΟ ΣΤΟ R - ΟΡΙΟ ΣΥΝΑΡΤΗΣΗΣ ΣΤΟ ΑΠΕΙΡΟ - ΠΕΠΕΡΑΣΜΕΝΟ ΟΡΙΟ ΑΚΟΛΟΥΘΙΑΣ [Κεφ..6: Μη Πεπερασμένο Όριο στο R - Κεφ..7: Όρια Συνάρτησης
Διαβάστε περισσότεραΑντισταθμιστική ανάλυση
Αντισταθμιστική ανάλυση Θεωρήστε έναν αλγόριθμο Α που χρησιμοποιεί μια δομή δεδομένων Δ : Κατά τη διάρκεια εκτέλεσης του Α η Δ πραγματοποιεί μία ακολουθία από πράξεις. Παράδειγμα: Θυμηθείτε το πρόβλημα
Διαβάστε περισσότεραΤυχαιοκρατικοί Αλγόριθμοι
Πιθανότητες και Αλγόριθμοι Ανάλυση μέσης περίπτωσης Μελέτα τη συμπεριφορά ενός αλγορίθμου σε μια «μέση» είσοδο (ως προς κάποια κατανομή) Τυχαιοκρατικός αλγόριθμος Λαμβάνει τυχαίες αποφάσεις καθώς επεξεργάζεται
Διαβάστε περισσότεραεπιστρέφει το αμέσως μεγαλύτερο από το x στοιχείο του S επιστρέφει το αμέσως μικρότερο από το x στοιχείο του S
Μελετάμε την περίπτωση όπου αποθηκεύουμε ένα (δυναμικό) σύνολο στοιχειών,, τα οποίo είναι υποσύνολο του. Υποστηριζόμενες λειτουργίες αναζήτηση(s,x): εισαγωγή(s,x): διαγραφή(s,x): διάδοχος(s,x): προκάτοχος(s,x):
Διαβάστε περισσότεραιαίρει-και-βασίλευε ημήτρης Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο
ιαίρει-και-βασίλευε ημήτρης Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο ιαίρει-και-βασίλευε Γενική μέθοδος σχεδιασμού αλγορίθμων: ιαίρεση σε ( 2) υποπροβλήματα
Διαβάστε περισσότεραΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ
ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ Ενότητα 13: Αλγόριθμοι-Μεγάλων ακεραίων- Εκθετοποίηση- Πολλαπλασιασμός πινάκων -Strassen Μαρία Σατρατζέμη Τμήμα Εφαρμοσμένης Πληροφορικής Άδειες Χρήσης Το παρόν εκπαιδευτικό
Διαβάστε περισσότεραΑσυμπτωτικός Συμβολισμός
Ασυμπτωτικός Συμβολισμός ιδάσκοντες: Σ. Ζάχος,. Φωτάκης Επιμέλεια διαφανειών:. Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Άδεια Χρήσης Το παρόν εκπαιδευτικό
Διαβάστε περισσότεραΔιαίρει-και-Βασίλευε. Αλγόριθµοι & Πολυπλοκότητα (Χειµώνας 2011) Διαίρει-και-Βασίλευε 2
Διαίρει-και-Βασίλευε Αλγόριθµοι & Πολυπλοκότητα (Χειµώνας 2011) Διαίρει-και-Βασίλευε 2 Διαίρει-και-Βασίλευε Γενική µέθοδος σχεδιασµού αλγορίθµων: Διαίρεση σε ( 2) υποπροβλήµατα (σηµαντικά) µικρότερου µεγέθους.
Διαβάστε περισσότεραΕισαγωγή στην Ανάλυση Αλγορίθμων
Εισαγωγή στην Ανάλυση Αλγορίθμων (4) Μεθοδολογία αναδρομικών σχέσεων (Ι) Με επανάληψη της αναδρομής Έστω όπου r και a είναι σταθερές. Βρίσκουμε τη σχέση που εκφράζει την T(n) συναρτήσει της T(n-) την T(n)
Διαβάστε περισσότεραΔιάλεξη 04: Παραδείγματα Ανάλυσης Πολυπλοκότητας/Ανάλυση Αναδρομικών Αλγόριθμων
Διάλεξη 04: Παραδείγματα Ανάλυσης Πολυπλοκότητας/Ανάλυση Αναδρομικών Αλγόριθμων Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: - Παραδείγματα Ανάλυσης Πολυπλοκότητας : Μέθοδοι, παραδείγματα
Διαβάστε περισσότεραΠεριεχόμενα. Εισαγωγή του επιμελητή, Γιάννης Σταματίου 15 Πρόλογος 17 Εισαγωγή 23. Μέρος I. ΕΠΑΝΑΛΗΠΤΙΚΟΙ ΑΛΓΟΡΙΘΜΟΙ ΚΑΙ ΑΝΑΛΛΟΙΩΤΕΣ ΣΥΝΘΗΚΕΣ
Περιεχόμενα Εισαγωγή του επιμελητή, Γιάννης Σταματίου 15 Πρόλογος 17 Εισαγωγή 23 Μέρος I. ΕΠΑΝΑΛΗΠΤΙΚΟΙ ΑΛΓΟΡΙΘΜΟΙ ΚΑΙ ΑΝΑΛΛΟΙΩΤΕΣ ΣΥΝΘΗΚΕΣ 1. Επαναληπτικοί αλγόριθμοι: Μέτρα προόδου και αναλλοίωτες συνθήκες.....................................................29
Διαβάστε περισσότεραΑριθμοθεωρητικοί Αλγόριθμοι
Αλγόριθμοι που επεξεργάζονται μεγάλους ακέραιους αριθμούς Μέγεθος εισόδου: Αριθμός bits που απαιτούνται για την αναπαράσταση των ακεραίων. Έστω ότι ένας αλγόριθμος λαμβάνει ως είσοδο έναν ακέραιο Ο αλγόριθμος
Διαβάστε περισσότεραΠρογραμματισμός Η/Υ (ΤΛ2007 )
Τμήμα Ηλεκτρονικών Μηχανικών Τ.Ε.Ι. Κρήτης Προγραμματισμός Η/Υ (ΤΛ00 ) Δρ. Μηχ. Νικόλαος Πετράκης (npet@chania.teicrete.gr) Ιστοσελίδα Μαθήματος: https://eclass.chania.teicrete.gr/ Εξάμηνο: Εαρινό 01-15
Διαβάστε περισσότεραΕΠΛ231 Δομές Δεδομένων και Αλγόριθμοι 4. Παραδείγματα Ανάλυσης Πολυπλοκότητας Ανάλυση Αναδρομικών Αλγόριθμων
ΕΠΛ31 Δομές Δεδομένων και Αλγόριθμοι 4. Παραδείγματα Ανάλυσης Πολυπλοκότητας Ανάλυση Αναδρομικών Αλγόριθμων Διάλεξη 04: Παραδείγματα Ανάλυσης Πολυπλοκότητας/Ανάλυση Αναδρομικών Αλγόριθμων Στην ενότητα
Διαβάστε περισσότεραΔομές Δεδομένων & Αλγόριθμοι
Δομές Δεδομένων & Αναζήτηση & Ταξινόμηση 1 Αναζήτηση Έχω έναν πίνακα Α με Ν στοιχεία. Πρόβλημα: Βρες αν το στοιχείο x ανήκει στον πίνακα Αν ο πίνακας είναι αταξινόμητος τότε μόνη λύση σειριακή αναζήτηση
Διαβάστε περισσότεραΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ. Δοµές Δεδοµένων
ΟΝΟΜΑΤΕΠΩΝΥΜΟ: ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ AM: Δοµές Δεδοµένων Εξεταστική Ιανουαρίου 2014 Διδάσκων : Ευάγγελος Μαρκάκης 20.01.2014 ΥΠΟΓΡΑΦΗ ΕΠΟΠΤΗ: Διάρκεια εξέτασης : 2 ώρες και
Διαβάστε περισσότεραΚεφάλαιο 5 Ανάλυση Αλγορίθμων
Κεφάλαιο 5 Ανάλυση Αλγορίθμων 5.1 Επίδοση αλγορίθμων Τα πρωταρχικά ερωτήματα που προκύπτουν είναι: 1. πώς υπολογίζεται ο χρόνος εκτέλεσης ενός αλγορίθμου; 2. πώς μπορούν να συγκριθούν μεταξύ τους οι διάφοροι
Διαβάστε περισσότεραΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ
ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ Ενότητα 6α: Αναζήτηση Μαρία Σατρατζέμη Τμήμα Εφαρμοσμένης Πληροφορικής Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commos. Για εκπαιδευτικό
Διαβάστε περισσότεραΕξωτερική Αναζήτηση. Ιεραρχία Μνήμης Υπολογιστή. Εξωτερική Μνήμη. Εσωτερική Μνήμη. Κρυφή Μνήμη (Cache) Καταχωρητές (Registers) μεγαλύτερη ταχύτητα
Ιεραρχία Μνήμης Υπολογιστή Εξωτερική Μνήμη Εσωτερική Μνήμη Κρυφή Μνήμη (Cache) μεγαλύτερη χωρητικότητα Καταχωρητές (Registers) Κεντρική Μονάδα (CPU) μεγαλύτερη ταχύτητα Πολλές σημαντικές εφαρμογές διαχειρίζονται
Διαβάστε περισσότερα4. ΚΕΦΑΛΑΙΟ ΕΦΑΡΜΟΓΕΣ ΤΟΥ ΜΕΤΑΣΧΗΜΑΤΙΣΜΟΥ FOURIER
4. ΚΕΦΑΛΑΙΟ ΕΦΑΡΜΟΓΕΣ ΤΟΥ ΜΕΤΑΣΧΗΜΑΤΙΣΜΟΥ FOURIER Σκοπός του κεφαλαίου είναι να παρουσιάσει μερικές εφαρμογές του Μετασχηματισμού Fourier (ΜF). Ειδικότερα στο κεφάλαιο αυτό θα περιγραφούν έμμεσοι τρόποι
Διαβάστε περισσότεραFast Fourier Transform
Fast Fourier Transform Παναγιώτης Πατσιλινάκος ΕΜΕ 19 Οκτωβρίου 2017 Παναγιώτης Πατσιλινάκος (ΕΜΕ) Fast Fourier Transform 19 Οκτωβρίου 2017 1 / 20 1 Εισαγωγή Στόχος Προαπαιτούμενα 2 Η ιδέα Αντιστροφή -
Διαβάστε περισσότεραΕργαστήριο 2: Πίνακες
Εργαστήριο 2: Πίνακες Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: - Επεξεργασία Πινάκων - Υλοποίηση της Δυαδικής Αναζήτησης σε πίνακες - Υλοποίηση της Ταξινόμησης με Επιλογής σε πίνακες ΕΠΛ035
Διαβάστε περισσότεραΚατ οίκον Εργασία 1 Σκελετοί Λύσεων
ΕΠΛ 1 Δομές Δεδομένων και Αλγόριθμοι Σεπτέμβριος 009 Κατ οίκον Εργασία 1 Σκελετοί Λύσεων Άσκηση 1 Αρχικά θα πρέπει να υπολογίσουμε τον αριθμό των πράξεων που μπορεί να εκτελέσει ο υπολογιστής σε μια ώρα,
Διαβάστε περισσότεραΣχεδίαση & Ανάλυση Αλγορίθμων
Σχεδίαση & Ανάλυση Αλγορίθμων Ενότητα 3 Αλγόριθμοι Επιλογής Σταύρος Δ. Νικολόπουλος Τμήμα Μηχανικών Η/Υ & Πληροφορικής Πανεπιστήμιο Ιωαννίνων Webpage: www.cs.uoi.gr/~stavros Αλγόριθμοι Επιλογής Γνωρίζουμε
Διαβάστε περισσότεραΑναδρομικές Σχέσεις «ιαίρει-και-βασίλευε»
Αναδρομικές Σχέσεις «ιαίρει-και-βασίλευε» ιδάσκοντες: Φ. Αφράτη,. Φωτάκης Επιμέλεια διαφανειών:. Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο ιαίρει-και-βασίλευε
Διαβάστε περισσότεραΔιδάσκων: Παναγιώτης Ανδρέου
Διάλεξη 04: ΠαραδείγματαΑνάλυσης Πολυπλοκότητας/Ανάλυση Αναδρομικών Αλγόριθμων Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: -Παραδείγματα Ανάλυσης Πολυπλοκότητας : Μέθοδοι, παραδείγματα -Γραμμική
Διαβάστε περισσότεραΑλγόριθµοι και Πολυπλοκότητα
Αλγόριθµοι και Πολυπλοκότητα Στην ενότητα αυτή θα µελετηθούν τα εξής θέµατα: Πρόβληµα, Στιγµιότυπο, Αλγόριθµος Εργαλεία εκτίµησης πολυπλοκότητας: οι τάξεις Ο(n), Ω(n), Θ(n) Ανάλυση Πολυπλοκότητας Αλγορίθµων
Διαβάστε περισσότεραΕνότητα 1: Εισαγωγή Ασκήσεις και Λύσεις
Ενότητα 1: Εισαγωγή Ασκήσεις και Λύσεις Άσκηση 1 Αποδείξτε τη µεταβατική και τη συµµετρική ιδιότητα του Θ. Λύση Μεταβατική Ιδιότητα (ορισµός): Αν f(n) = Θ(g(n)) και g(n) = Θ(h(n)) τότε f(n)=θ(h(n)). Για
Διαβάστε περισσότεραΠρόβληµα (ADT) Λεξικού. Αλγόριθµοι & Πολυπλοκότητα (Χειµώνας 2011) Λεξικό, Union - Find 2
Πρόβληµα (ADT) Λεξικού Αλγόριθµοι & Πολυπλοκότητα (Χειµώνας 2011) Λεξικό, Union - Find 2 Πρόβληµα (ADT) Λεξικού Δυναµικά µεταβαλλόµενη συλλογή αντικειµένων που αναγνωρίζονται µε κλειδί (π.χ. κατάλογοι,
Διαβάστε περισσότεραKΕΦΑΛΑΙΟ 1 ΧΡΗΣΙΜΕΣ ΜΑΘΗΜΑΤΙΚΕΣ ΕΝΝΟΙΕΣ. { 1,2,3,..., n,...
KΕΦΑΛΑΙΟ ΧΡΗΣΙΜΕΣ ΜΑΘΗΜΑΤΙΚΕΣ ΕΝΝΟΙΕΣ Βασικές έννοιες διαιρετότητας Θα συµβολίζουµε µε, τα σύνολα των φυσικών αριθµών και των ακεραίων αντιστοίχως: {,,3,,, } { 0,,,,, } = = ± ± ± Ορισµός Ένας φυσικός αριθµός
Διαβάστε περισσότεραΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ. ΘΕΩΡΗΤΙΚΗ ΑΣΚΗΣΗ 1 ΛΥΣΕΙΣ Ανάλυση Πολυπλοκότητας
ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΠΛ 231: Δομές Δεδομένων και Αλγόριθμοι Εαρινό Εξάμηνο 2013 ΘΕΩΡΗΤΙΚΗ ΑΣΚΗΣΗ 1 ΛΥΣΕΙΣ Ανάλυση Πολυπλοκότητας Διδάσκων Καθηγητής: Παναγιώτης Ανδρέου Ημερομηνία Υποβολής:
Διαβάστε περισσότερα(Γραμμικές) Αναδρομικές Σχέσεις
(Γραμμικές) Αναδρομικές Σχέσεις Διδάσκοντες: Φ. Αφράτη, Δ. Φωτάκης Επιμέλεια διαφανειών: Δ. Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Αναδρομικές Σχέσεις
Διαβάστε περισσότεραΘΕΜΑΤΑ ΕΞΕΤΑΣΗΣ ΚΑΙ ΑΠΑΝΤΗΣΕΙΣ
ΘΕΜΑΤΑ ΕΞΕΤΑΣΗΣ ΚΑΙ ΑΠΑΝΤΗΣΕΙΣ ΜΑΘΗΜΑ: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ ΕΞΕΤΑΣΤΙΚΗ ΠΕΡΙΟ ΟΣ: ΣΕΠΤΕΜΒΡΙΟΥ 6 Ι ΑΣΚΩΝ: Ε. ΚΟΦΙ ΗΣ Όλα τα ερωτήµατα είναι ισοδύναµα. Καλή επιτυχία! ΘΕΜΑ ο a) Βρείτε την αναπαράσταση
Διαβάστε περισσότερα1o Φροντιστήριο ΗΥ240
1o Φροντιστήριο ΗΥ240 Άσκηση 1 Αποδείξτε τη μεταβατική και τη συμμετρική ιδιότητα του Θ Μεταβατική Ιδιότητα (ορισμός): Αν f(n) = Θ(g(n)) και g(n) = Θ(h(n)) τότε f(n)=θ(h(n)) Για να ισχύει f(n)= Θ(h(n))
Διαβάστε περισσότερα(Γραμμικές) Αναδρομικές Σχέσεις
(Γραμμικές) Αναδρομικές Σχέσεις ιδάσκοντες:. Φωτάκης. Σούλιου Επιμέλεια διαφανειών:. Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Αναδρομικές Σχέσεις Αναπαράσταση
Διαβάστε περισσότεραΔομές Δεδομένων. Λουκάς Γεωργιάδης.
Δομές Δεδομένων http://www.cs.uoi.gr/~loukas/courses/data_structures/ Λουκάς Γεωργιάδης email: loukas@cs.uoi.gr Αλγόριθμος: Μέθοδος για την επίλυση ενός προβλήματος Δομή Δεδομένων: Μέθοδος αποθήκευσης
Διαβάστε περισσότεραΑπαντήσεις. Θέμα 1 ο. Α. α) v1. Άρα v1
Απαντήσεις Θέμα 1 ο 3 ( 3)( 1 ) ( 3)( 1 ) Α. α) v1 lm lm lm 3 1 3 ( 1 )( 1 ) 3 1 ( 3)( 1 ) ( 3)( 1 ) lm lm lm( 1 ) 3 1 3 3 3 3 3 Άρα v1 β) Η είναι παραγωγίσιμη για 0 ως πράξεις παραγωγίσιμων με 1 1 10
Διαβάστε περισσότεραΕργαστήριο 6: Αναζήτηση, Ανάλυση Πολυπλοκότητας
Εργαστήριο 6: Αναζήτηση, Ανάλυση Πολυπλοκότητας Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: - Αναζήτηση με linearsearch, binarysearch, ternarysearch - Ανάλυση Πολυπλοκότητας ternarysearch
Διαβάστε περισσότεραΔιακριτά Μαθηματικά [Rosen, κεφ. 3] Γιάννης Εμίρης Τμήμα Πληροφορικής & Τηλεπικοινωνιών, ΕΚΠΑ Οκτώβριος 2018
Διακριτά Μαθηματικά [Rosen, κεφ. 3] Γιάννης Εμίρης Τμήμα Πληροφορικής & Τηλεπικοινωνιών, ΕΚΠΑ Οκτώβριος 2018 Αλγόριθμοι Ρυθμός αύξησης συναρτήσεων [Rosen 3.2] Αριθμητικές συναρτήσεις Τάξη αριθμητικών συναρτήσεων
Διαβάστε περισσότεραΑΛΓΟΡΙΘΜΟΙ Άνοιξη I. ΜΗΛΗΣ
ΑΛΓΟΡΙΘΜΟΙ http://elss.ueb.gr/ourses/inf6/ Άνοιξη 6 - I. ΜΗΛΗΣ ΑΣΥΜΠΤΩΤΙΚΟΙ ΣΥΜΒΟΛΙΣΜΟΙ ΑΛΓΟΡΙΘΜΟΙ - ΑΝΟΙΞΗ 6 - Ι. ΜΗΛΗΣ - - ASYMPTOTICS Αλγόριθμοι Τρείς κρίσιμες ερωτήσεις για κάθε αλγόριθμο για ένα πρόβλημα:
Διαβάστε περισσότεραΥπολογιστικά & Διακριτά Μαθηματικά
Υπολογιστικά & Διακριτά Μαθηματικά Ενότητα 1: Εισαγωγή- Χαρακτηριστικά Παραδείγματα Αλγορίθμων Στεφανίδης Γεώργιος Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons.
Διαβάστε περισσότεραΠΕΡΙΕΧΟΜΕΝΑ. ΠΡΟΛΟΓΟΣ... vii ΠΕΡΙΕΧΟΜΕΝΑ... ix ΓΕΝΙΚΗ ΒΙΒΛΙΟΓΡΑΦΙΑ... xv. Κεφάλαιο 1 ΓΕΝΙΚΕΣ ΕΝΝΟΙΕΣ ΑΠΟ ΤΗ ΣΤΑΤΙΣΤΙΚΗ
ΠΡΟΛΟΓΟΣ... vii ΠΕΡΙΕΧΟΜΕΝΑ... ix ΓΕΝΙΚΗ ΒΙΒΛΙΟΓΡΑΦΙΑ... xv Κεφάλαιο 1 ΓΕΝΙΚΕΣ ΕΝΝΟΙΕΣ ΑΠΟ ΤΗ ΣΤΑΤΙΣΤΙΚΗ 1.1 Πίνακες, κατανομές, ιστογράμματα... 1 1.2 Πυκνότητα πιθανότητας, καμπύλη συχνοτήτων... 5 1.3
Διαβάστε περισσότεραΑναδρομικοί Αλγόριθμοι
Αναδρομικός αλγόριθμος (recursive algorithm) Επιλύει ένα πρόβλημα λύνοντας ένα ή περισσότερα στιγμιότυπα του ίδιου προβλήματος. Αναδρομικός αλγόριθμος (recursive algorithm) Επιλύει ένα πρόβλημα λύνοντας
Διαβάστε περισσότεραΓράφημα. Συνδυαστικό αντικείμενο που αποτελείται από 2 σύνολα: Σύνολο κορυφών (vertex set) Σύνολο ακμών (edge set) 4 5 πλήθος κορυφών πλήθος ακμών
Γράφημα Συνδυαστικό αντικείμενο που αποτελείται από 2 σύνολα: Σύνολο κορυφών (vertex set) Σύνολο ακμών (edge set) 1 2 3 4 5 πλήθος κορυφών πλήθος ακμών Γράφημα Συνδυαστικό αντικείμενο που αποτελείται από
Διαβάστε περισσότεραΔιδάσκων: Παναγιώτης Ανδρέου
Διάλεξη 12: Δέντρα ΙΙ -Δυαδικά Δέντρα Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: - Δυαδικά Δένδρα - Δυαδικά Δένδρα Αναζήτησης(ΔΔΑ) - Εύρεση Τυχαίου, Μέγιστου, Μικρότερου στοιχείου - Εισαγωγή
Διαβάστε περισσότεραΑ Ν Α Λ Τ Η Α Λ Γ Ο Ρ Ι Θ Μ Ω Ν Κ Ε Υ Α Λ Α Ι Ο 5. Πως υπολογίζεται ο χρόνος εκτέλεσης ενός αλγορίθμου;
5.1 Επίδοση αλγορίθμων Μέχρι τώρα έχουμε γνωρίσει διάφορους αλγόριθμους (αναζήτησης, ταξινόμησης, κ.α.). Στο σημείο αυτό θα παρουσιάσουμε ένα τρόπο εκτίμησης της επίδοσης (performance) η της αποδοτικότητας
Διαβάστε περισσότεραΔένδρα. Μαθηματικά (συνδυαστικά) αντικείμενα. Έχουν κεντρικό ρόλο στην επιστήμη των υπολογιστών :
Δένδρα Μαθηματικά (συνδυαστικά) αντικείμενα. Έχουν κεντρικό ρόλο στην επιστήμη των υπολογιστών : Ανάλυση αλγορίθμων (π.χ. δένδρα αναδρομής) Δομές δεδομένων (π.χ. δένδρα αναζήτησης) ακμή Κατηγορίες (αύξουσα
Διαβάστε περισσότεραΑλγόριθμοι. Μάρθα Σιδέρη. ιαδικαστικά: ύο πρόοδοι 31 Μαρτίου, 18 Μαΐου 7-9μμ 20% η μία, ύο Προγραμματιστικές 1 προσθετικό βαθμό η μία.
Αλγόριθμοι Μάρθα Σιδέρη epl333 lect 011 1 ιαδικαστικά: ύο πρόοδοι 31 Μαρτίου, 18 Μαΐου 7-9μμ 0% η μία, ύο Προγραμματιστικές 1 προσθετικό βαθμό η μία. Οι πρόοδοι είναι προαιρετικές και το ποσοστό μετράει
Διαβάστε περισσότεραΔομές Δεδομένων & Αλγόριθμοι
Θέματα Απόδοσης Αλγορίθμων 1 Η Ανάγκη για Δομές Δεδομένων Οι δομές δεδομένων οργανώνουν τα δεδομένα πιο αποδοτικά προγράμματα Πιο ισχυροί υπολογιστές πιο σύνθετες εφαρμογές Οι πιο σύνθετες εφαρμογές απαιτούν
Διαβάστε περισσότεραΑλγόριθμοι και Δομές Δεδομένων (Ι) (εισαγωγικές έννοιες)
Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 2015-16 Αλγόριθμοι και Δομές Δεδομένων (Ι) (εισαγωγικές έννοιες) http://di.ionio.gr/~mistral/tp/csintro/ Μ.Στεφανιδάκης Τι είναι
Διαβάστε περισσότεραΑλγόριθμοι Ταξινόμησης Μέρος 4
Αλγόριθμοι Ταξινόμησης Μέρος 4 Μανόλης Κουμπαράκης Δομές Δεδομένων και Τεχνικές 1 Μέθοδοι Ταξινόμησης Βασισμένοι σε Συγκρίσεις Κλειδιών Οι αλγόριθμοι ταξινόμησης που είδαμε μέχρι τώρα αποφασίζουν πώς να
Διαβάστε περισσότεραΔυναμικός Προγραμματισμός
Δυναμικός Προγραμματισμός Επιμέλεια διαφανειών: Δ. Φωτάκης Τροποποιήσεις: Α. Παγουρτζής Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Διωνυμικοί Συντελεστές Διωνυμικοί
Διαβάστε περισσότεραΔιδάσκων: Κωνσταντίνος Κώστα Διαφάνειες: Δημήτρης Ζεϊναλιπούρ
Διάλεξη - Πολυπλοκότητα Αλγορίθμων / Επανάληψη Χρήσιμων Μαθηματικών Ορισμών Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Αλγόριθμοι, Κριτήρια Αξιολόγησης Αλγόριθμων, Γιατί αναλύουμε τους Αλγορίθμων
Διαβάστε περισσότεραΠρογραμματισμός Ι (ΗΥ120)
Προγραμματισμός Ι (ΗΥ120) Διάλεξη 20: Δυαδικό Δέντρο Αναζήτησης Δυαδικό δέντρο Κάθε κόμβος «γονέας» περιέχει δύο δείκτες που δείχνουν σε δύο κόμβους «παιδιά» του ιδίου τύπου. Αν οι δείκτες προς αυτούς
Διαβάστε περισσότεραd k 10 k + d k 1 10 k d d = k i=0 d i 10 i.
Διακριτά Μαθηματικά ΙΙ Χρήστος Νομικός Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων 2018 Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά και Πληροφορικής Μαθηματικά Πανεπιστήμιο ΙΙ Ιωαννίνων
Διαβάστε περισσότεραΕπιμέλεια διαφανειών: Δ. Φωτάκης Τροποποιήσεις-προσθήκες: Α. Παγουρτζής. Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών
Διαίρει-και-Βασίλευε Επιμέλεια διαφανειών: Δ. Φωτάκης Τροποποιήσεις-προσθήκες: Α. Παγουρτζής Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Διαίρει-και-Βασίλευε Γενική
Διαβάστε περισσότεραΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ
ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ Ενότητα 4: Αναδρομικές σχέσεις και ανάλυση αλγορίθμων Μαρία Σατρατζέμη Τμήμα Εφαρμοσμένης Πληροφορικής Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης
Διαβάστε περισσότεραΔιδάσκων: Κωνσταντίνος Κώστα Διαφάνειες: Δημήτρης Ζεϊναλιπούρ ΕΠΛ 035 Δομές Δεδομένων και Αλγόριθμοι για Ηλ. Μηχ. και Μηχ. Υπολ.
Διάλεξη : Παραδείγματα Ανάλυσης Πολυπλοκότητας / Ανάλυση Αναδρομικών Αλγόριθμων Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Παραδείγματα Ανάλυσης Πολυπλοκότητας : Μέθοδοι, 6 παραδείγματα
Διαβάστε περισσότερα