Κάθε καλώς ορισµένη υπολογιστική διαδικασία, η οποία καλείται να επιλύσει ένα συγκεκριµένο πρόβληµα εντός πεπερασµένου χρόνου.
|
|
- Παμφιλος Μέλιοι
- 7 χρόνια πριν
- Προβολές:
Transcript
1 Αλγόριθµοι Ι Κάθε καλώς ορισµένη υπολογιστική διαδικασία, η οποία καλείται να επιλύσει ένα συγκεκριµένο πρόβληµα εντός πεπερασµένου χρόνου. Αλγόριθµος είναι µια πεπερασµένη σειρά ενεργειών, αυστηρά καθορισµένων και εκτελέσιµων σε πεπερασµένο χρόνο, που στοχεύουν στην επίλυση ενός προβλήµατος. Τµ. Πληροφορικής, Α.Π.Θ. Τρίτη, 9 Νοεµβρίου 5 Αλγόριθµοι ΙΙ Ένας αλγόριθµος πρέπει να διαθέτει: είσοδο: καµία, µία ή περισσότερες τιµές δεδοµένων έξοδο: τουλάχιστο µία τιµή δεδοµένων καθοριστικότητα: κάθε ενέργεια να προσδιορίζεται σαφώς για τον τρόπο εκτέλεσής της περατότητα: να τελειώνει µετά από πεπερασµένα βήµατα εκτέλεσης των εντολών του αποτελεσµατικότητα: κάθε µεµονωµένη εντολή του αλγορίθµου να είναι απλή και εκτελέσιµη Τµ. Πληροφορικής, Α.Π.Θ. Τρίτη, 9 Νοεµβρίου 5
2 Αλγόριθµοι ΙΙΙ Κάθε είσοδος που ικανοποιεί τις προδιαγραφές του προβλήµατος καλείται νόµιµη και λέµε πως ορίζει ένα συγκεκριµένο στιγµιότυπο του προβλήµατος. Ένας αλγόριθµος επιλύει ένα πρόβληµα, όταν για κάθε στιγµιότυπο του προβλήµατος τερµατίζει µετά από πεπερασµένο χρόνο, παράγοντας σωστή έξοδο. Τµ. Πληροφορικής, Α.Π.Θ. Τρίτη, 9 Νοεµβρίου 5 Αλγορίθµοι ΙV Τεχνικές σχεδίασης αλγορίθµων: αλγόριθµοι brute-force: διακρίνονται από το γεγονός ότι επιλύουν το πρόβληµα µε τον πιο απλό, άµεσο ή προφανή τρόπο. Η λειτουργία τους βασίζεται στον εξαντλητικό έλεγχο όλων των πιθανών περιπτώσεων. άπληστοι αλγόριθµοι: προχωρούν µε βάση σταδιακές επιλογές, που αφορούν στο βέλτιστο κάθε βήµατος. αλγόριθµοι οπισθοδρόµησης: σε κάθε βήµα εξετάζουν συστηµατικά όλα τα πιθανά αποτελέσµατα κάθε απόφασης, εκτός και αν αποφασίσουν ότι για κάποιες περιπτώσεις δεν είναι απαραίτητος ένας τέτοιος εξαντλητικός έλεγχος. αλγόριθµοι διαίρει και βασίλευε: το πρόβληµα υποδιαιρείται σε πολλά µικρά υποπροβλήµατα πανοµοιότυπα µε το αρχικό. Κάθε ένα από αυτά επιλύεται ανεξάρτητα και οι επιµέρους λύσεις συνδυάζονται σε µία τελική λύση του αρχικού προβλήµατος. Τµ. Πληροφορικής, Α.Π.Θ. Τρίτη, 9 Νοεµβρίου 5 4
3 Αλγόριθµοι V αλγόριθµοι δυναµικού προγραµµατισµού: το πρόβληµα υποδιαιρείται σε πολλά µικρά προβλήµατα, τα οποία επιλύονται σταδιακά ως σύνθεση των λύσεων των µικρότερων και άρα απλούστερων υποπροβληµάτων. Είναι ιδιαίτερα διαδεδοµένοι για την επίλυση προβληµάτων βελτιστοποίησης. τυχαιοποιηµένοι αλγόριθµοι: αλγόριθµοι που φαίνεται ότι συµπεριφέρονται τυχαία αλγόριθµοι γράφων αλγόριθµοι αναγνώρισης συµβολοσειρών αριθµητικοί αλγόριθµοι κατανεµηµένοι αλγόριθµοι αλγόριθµοι συντακτικής σηµασιολογικής ανάλυσης (µεταγλωττιστές Τµ. Πληροφορικής, Α.Π.Θ. Τρίτη, 9 Νοεµβρίου 5 5 Ανάλυση Αλγορίθµων Ι Ποιος είναι ο καλύτερος αλγόριθµος; Συγκρίνουµε τους αλγορίθµους µε βάση την αποδοτικότητά τους ως συνάρτηση του µεγέθους των περιπτώσεων του προβλήµατος για τον υπολογισµό χρόνου ή χώρου. ιακρίνουµε την πρακτική ή εκ των υστέρων προσέγγιση την θεωρητική ή εκ των προτέρων προσέγγιση Η αποδοτικότητα χαρακτηρίζεται ως συνάρτηση του µεγέθους του προβλήµατος Με τον όρο µέγεθος αναφερόµαστε σε οποιοδήποτε ακέραιο που µε κάποιο τρόπο «µετράει» τον αριθµό των συστατικών µερών µιας περίπτωσης του προβλήµατος. Παράδειγµα: πρόβληµα ταξινόµησης µέγεθος περίπτωσης είναι ο αριθµός των προς ταξινόµηση δεδοµένων Τµ. Πληροφορικής, Α.Π.Θ. Τρίτη, 9 Νοεµβρίου 5 6
4 Ανάλυση Αλγορίθµων ΙΙ Μοντέλο Μηχανής Τυχαίας Προσπέλασης (RAM Αφαιρετική θεώρηση υπολογιστικού συστήµατος που: αναφέρεται σε συστήµατα του ενός επεξεργαστή δεν έχει τη δυνατότητα τελέσεως ταυτόχρονων πράξεων διαθέτει τους αναγκαίους καταχωρητές, ένα συσσωρευτή και µία ακολουθία απθηκευτικών θέσεων µε διευθύνσεις οι οποίες συνιστούν την κύρια µνήµη είναι σε θέση να εκτελεί τις αριθµητικές πράξεις {, -, *, /, od}, να παίρνει αποφάσεις τύπου f και να γράφει διαβάζει από και προς τις θέσεις µνήµης Τµ. Πληροφορικής, Α.Π.Θ. Τρίτη, 9 Νοεµβρίου 5 7 Ανάλυση Αλγορίθµων ΙΙΙ Οι στοιχειώδεις πράξεις που µπορεί να εκτελέσει µια µηχανή RAM έχουν κάποιο κόστος σε χρόνο: µέτρηση µοναδιαίου κόστους: σταθερό, πεπερασµένο κόστος ανεξαρτήτως του µήκους της δυαδικής αναπαράστασης των τελεστέων µέτρηση λογαριθµικού κόστους: η πράξη παίρνει χρόνο ανάλογο µε το µήκος της δυαδικής αναπαράστασης Εµείς θα χρησιµοποιήσουµε την πρώτη προσέγγιση. Θεώρηµα: Κάθε υπολογιστική διαδικασία µιας µηχανής Turg, µε κόστος πολυωνυµικό στο µέγεθος της εισόδου, µπορεί να εξοµοιωθεί από µία υπολογιστική, πολυωνυµική στο µέγεθος της εισόδου, διαδικασία µιας µηχανής RAM και αντίστροφα. Τµ. Πληροφορικής, Α.Π.Θ. Τρίτη, 9 Νοεµβρίου 5 8 4
5 Ανάλυση Αλγορίθµων ΙV Η ανάλυση θα γίνεται βάση του µοναδιαίου µέτρου ως συνάρτηση του µεγέθους της εισόδου που: για ένα πρόβληµα ταξινόµησης είναι το πλήθος των προς διάταξη αντικειµένων για έναν αλγόριθµο εύρεσης ελάχιστου επικαλυπτόµενου δένδρου σε γράφο µε σύνολο κορυφών V και σύνολο ακµών E, η είσοδος έχει µέγεθος V E για την τέλεση πολλαπλασιασµών µεταξύ µεγάλων ακεραίων το µέγεθος εισόδου είναι το συνολικό µήκος σε αριθµό bt της δυαδικής αναπαράστασής τους (όχι το πλήθος τους Τµ. Πληροφορικής, Α.Π.Θ. Τρίτη, 9 Νοεµβρίου 5 9 Ανάλυση Αλγορίθµων V Υπολογισµός κόστους ενός αλγορίθµου: σε κάθε εντολή ανάθεσης τιµής ή δήλωσης θα χρεώνουµε σταθερό χρόνο οι βρόχοι for και whle θα χρεώνονται το πλήθος των επαναλήψεων επί το πλήθος των εντολών που εκτελούνται σε κάθε επανάληψη Συχνά θα επικεντρωνόµαστε στις κυρίαρχες πράξεις, δηλαδή αυτές που παίζουν καταλυτικό ρόλο στη συµπεριφορά του αλγορίθµου: π.χ. στους αλγορίθµους ταξινόµησης οι κυρίαρχες πράξεις είναι οι συγκρίσεις και οι ανταλλαγές στοιχείων µεταξύ δύο θέσεων του πίνακα εισόδου Τµ. Πληροφορικής, Α.Π.Θ. Τρίτη, 9 Νοεµβρίου 5 5
6 Ανάλυση Αλγορίθµων 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
7 Ανάλυση Αλγορίθµων VΙΙΙ Στις περισσότερες περιπτώσεις είτε δεν είµαστε σε θέση είτε δε µας ενδιαφέρει να βρούµε ακριβείς τύπους και απλά ασχολούµαστε µε το ρυθµό αύξησης ή την τάξη αύξησης των συναρτήσεων που εκφράζουν την πολυπλοκότητα του αλγορίθµου. Τότε µιλάµε για ασυµπτωτικές εκτιµήσεις O, Θ ή Ω. c'f cf g g g cf cf O(f Ω(f Θ(f Τµ. Πληροφορικής, Α.Π.Θ. Τρίτη, 9 Νοεµβρίου 5 Ανάλυση Αλγορίθµων ΙΧ Αλγόριθµος που εκτελείται σε χρόνο τάξης εµφανίζει γραµµική πολυπλοκότητα εµφανίζει τετραγωνική πολυπλοκότητα εµφανίζει κυβική πολυπλοκότητα κ πολυωνυµική πολυπλοκότητα c εκθετική πολυπλοκότητα Αποδοτικότητα χώρου µνήµης για παράλληλους αλγορίθµους: Αποδοτικότητα επικοινωνίας Τµ. Πληροφορικής, Α.Π.Θ. Τρίτη, 9 Νοεµβρίου 5 4 7
8 Ανάλυση Αλγορίθµων Χ O( 5-4 sec 4-4 sec 5-4 sec - sec 5 - sec ώρες - 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 ( 6( 8 Αφού για κάθε ισχύει (8>, θέλουµε 6 6 Άρα ισχύει ότι f(( Τµ. Πληροφορικής, Α.Π.Θ. Τρίτη, 9 Νοεµβρίου 5 6 8
9 Ανάλυση Αλγορίθµων ΧΙΙ ΟΡΙΣΜΟΣ Θεωρούµε τη συνάρτηση 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
10 Ανάλυση Αλγορίθµων ΧΙ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
11 Ανάλυση Αλγορίθµων Χ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
12 Ανάλυση Αλγορίθµων Χ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
13 Ανάλυση Αλγορίθµων Χ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
14 Ανάλυση Αλγορίθµων ΧXII Για να βρεθούν ασυµπτωτικά όρια: Όταν ο αλγόριθµος περιέχει επαναληπτικές δοµές ελέγχου (whle, for κ.λ.π., τότε η αποδοτικότητα εκφράζεται ως άθροισµα όρων, π.χ. j. Έτσι, η ανάλυση ανάγεται στην j δυνατότητα χειρισµού τέτοιων αθροισµάτων και εύρεσης ασυµπτωτικών ορίων. Πρέπει να γνωρίζετε πολύ καλά τον υπολογισµό σειρών: - αριθµητικών - γεωµετρικών - αρµονικών για τις οποίες προσπαθείτε να αποδείξετε την ισχύ ενός ασυµπτωτικού ορίου µε τη χρήση επαγωγής. Τµ. Πληροφορικής, Α.Π.Θ. Τρίτη, 9 Νοεµβρίου 5 7 Ανάλυση Αλγορίθµων ΧXIIΙ Όταν ο αλγόριθµος περιέχει αναδροµικές κλήσεις, τότε η αποδοτικότητά του εκφράζεται από αναδροµικές εξισώσεις ή ανισοϊσότητες, π.χ. / T ( T ( τότε προσπαθούµε να βρούµε την αποδοτικότητα µε κάποιο από το εξής τρόπους: προσπαθούµε να «µαντέψουµε» µε επαναληπτική αντικατάσταση µε τη γενική µέθοδο Τµ. Πληροφορικής, Α.Π.Θ. Τρίτη, 9 Νοεµβρίου 5 8 4
15 Ανάλυση Αλγορίθµων Χ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
16 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
17 Ανάλυση Αλγορίθµων ΧXVΙΙΙ γενική µέθοδος ουσιαστικά είναι µία µέθοδος για την επίλυση αναδροµικών εξισώσεων της µορφής T ( at ( / b f (, a, b, f ( >, και βασίζεται στην εφαρµογή κάποιων θεωρηµάτων. Περισσότερες πληροφορίες στο: Αλγόριθµοι Σχεδιασµός και Αάλυση, Παναγιώτης. Μποζάνης, σελ. 9 Τµ. Πληροφορικής, Α.Π.Θ. Τρίτη, 9 Νοεµβρίου 5 Μορφές ανάλυσης ανάλυση µέσης περίπτωσης ανάλυση χειρότερης περίπτωσης µέσο κόστος εκτέλεσης του αλγορίθµου µέγιστο κόστος εκτέλεσης του αλγορίθµου Τµ. Πληροφορικής, Α.Π.Θ. Τρίτη, 9 Νοεµβρίου 5 4 7
18 Ανάλυση χειρότερης περίπτωσης Ι Παράδειγµα ανάλυσης χειρότερης περίπτωσης: 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
19 Ανάλυση χειρότερης περίπτωσης Ι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
20 Ανάλυση µέσης περίπτωσης ΙΙ 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
21 Ανάλυση ταξινόµησης II Αλγόριθµος straght serto sort (εκτέλεση Τµ. Πληροφορικής, Α.Π.Θ. Τρίτη, 9 Νοεµβρίου 5 4 Ανάλυση ταξινόµησης III Αλγόριθµος straght serto sort (ανάλυση... πόσες συγκρίσεις (εντολή whle γίνονται για κάθε? καλύτερη περίπτωση: η τιµή στη θέση είναι µεγαλύτερη από την τιµή στη θέση - (πίνακας ταξινοµηµένος σε αύξουσα µία σύγκριση για κάθε και άρα συνολικά - συγκρίσεις χειρότερη περίπτωση: (πίνακας ταξινοµηµένος σε φθίνουσα - συγκρίσεις για κάθε και άρα συνολικά συγκρίσεις ( ( / Τµ. Πληροφορικής, Α.Π.Θ. Τρίτη, 9 Νοεµβρίου 5 4
22 Ανάλυση ταξινόµησης 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
23 Ανάλυση ταξινόµησης 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
Δομές Δεδομένων & Αλγόριθμοι
Θέματα Απόδοσης Αλγορίθμων 1 Η Ανάγκη για Δομές Δεδομένων Οι δομές δεδομένων οργανώνουν τα δεδομένα πιο αποδοτικά προγράμματα Πιο ισχυροί υπολογιστές πιο σύνθετες εφαρμογές Οι πιο σύνθετες εφαρμογές απαιτούν
Διαβάστε περισσότεραΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ
ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ Ενότητα 3: Ασυμπτωτικός συμβολισμός Μαρία Σατρατζέμη Τμήμα Εφαρμοσμένης Πληροφορικής Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons.
Διαβάστε περισσότεραΕισαγωγή στους Αλγόριθµους. Αλγόριθµοι. Ιστορικά Στοιχεία. Ο πρώτος Αλγόριθµος. Παραδείγµατα Αλγορίθµων. Τι είναι Αλγόριθµος
Εισαγωγή στους Αλγόριθµους Αλγόριθµοι Τι είναι αλγόριθµος; Τι µπορεί να υπολογίσει ένας αλγόριθµος; Πως αξιολογείται ένας αλγόριθµος; Παύλος Εφραιµίδης pefraimi@ee.duth.gr Αλγόριθµοι Εισαγωγικές Έννοιες
Διαβάστε περισσότεραΑλγόριθμοι και Πολυπλοκότητα
Αλγόριθμοι και Πολυπλοκότητα Ανάλυση Αλγορίθμων Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ανάλυση Αλγορίθμων Η ανάλυση αλγορίθμων περιλαμβάνει τη διερεύνηση του τρόπου
Διαβάστε περισσότεραΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ. Αρχές Ανάλυσης Αλγορίθµων Κεφάλαιο 2. Ε. Μαρκάκης Επικ. Καθηγητής
ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ Αρχές Ανάλυσης Αλγορίθµων Κεφάλαιο 2 Ε. Μαρκάκης Επικ. Καθηγητής Περίληψη Εµπειρική ανάλυση αλγορίθµων Μαθηµατική ανάλυση αλγορίθµων Αύξηση συναρτήσεων Συµβολισµός µεγάλου όµικρον Παραδείγµατα
Διαβάστε περισσότεραΕισαγωγή στην Ανάλυση Αλγορίθμων (2-3)
Εισαγωγή στην Ανάλυση Αλγορίθμων (2-3) 3.1 Ασυμπτωτικός συμβολισμός (Ι) Οι ορισμοί που ακολουθούν μας επιτρέπουν να επιχειρηματολογούμε με ακρίβεια για την ασυμπτωτική συμπεριφορά. Οι f(n) και g(n) συμβολίζουν
Διαβάστε περισσότεραΟρισµός. Εστω συναρτήσεις: f : N R και g : N R. η f(n) είναι fi( g(n) ) αν υπάρχουν σταθερές C 1, C 2 και n 0, τέτοιες ώστε:
Συµβολισµός Ω( ) Τάξη των Συναρτήσεων () Εκτίµηση Πολυπλοκότητας Αλγορίθµων Ορέστης Τελέλης telelis@unipi.gr Ορισµός. Εστω συναρτήσεις: f : N R και g : N R η f(n) είναι Ω( g(n) ) αν υπάρχουν σταθερές C
Διαβάστε περισσότεραΥπολογιστικό Πρόβληµα
Υπολογιστικό Πρόβληµα Μετασχηµατισµός δεδοµένων εισόδου σε δεδοµένα εξόδου. Δοµή δεδοµένων εισόδου (έγκυρο στιγµιότυπο). Δοµή και ιδιότητες δεδοµένων εξόδου (απάντηση ή λύση). Τυπικά: διµελής σχέση στις
Διαβάστε περισσότεραΕισαγωγή στους Αλγόριθμους. Παύλος Εφραιμίδης, Λέκτορας
Εισαγωγή στους Αλγόριθμους Παύλος Εφραιμίδης, Λέκτορας http://pericles.ee.duth.gr 1 Περιεχόμενα Μαθήματος Εισαγωγή στου Αλγόριθμους Πολυπλοκότητα Αλγορίθμων Ασυμπτωτική Ανάλυση Θεωρία Γράφων Κλάσεις Πολυπλοκότητας
Διαβάστε περισσότεραΔιαίρει-και-Βασίλευε. Αλγόριθµοι & Πολυπλοκότητα (Χειµώνας 2011) Διαίρει-και-Βασίλευε 2
Διαίρει-και-Βασίλευε Αλγόριθµοι & Πολυπλοκότητα (Χειµώνας 2011) Διαίρει-και-Βασίλευε 2 Διαίρει-και-Βασίλευε Γενική µέθοδος σχεδιασµού αλγορίθµων: Διαίρεση σε ( 2) υποπροβλήµατα (σηµαντικά) µικρότερου µεγέθους.
Διαβάστε περισσότεραΔιακριτά Μαθηματικά [Rosen, κεφ. 3] Γιάννης Εμίρης Τμήμα Πληροφορικής & Τηλεπικοινωνιών, ΕΚΠΑ Οκτώβριος 2018
Διακριτά Μαθηματικά [Rosen, κεφ. 3] Γιάννης Εμίρης Τμήμα Πληροφορικής & Τηλεπικοινωνιών, ΕΚΠΑ Οκτώβριος 2018 Αλγόριθμοι Ρυθμός αύξησης συναρτήσεων [Rosen 3.2] Αριθμητικές συναρτήσεις Τάξη αριθμητικών συναρτήσεων
Διαβάστε περισσότεραΣτοιχεία Αλγορίθµων και Πολυπλοκότητας
Στοιχεία Αλγορίθµων και Πολυπλοκότητας Ορέστης Τελέλης telelis@unipi.gr Τµήµα Ψηφιακών Συστηµάτων, Πανεπιστήµιο Πειραιώς Ο. Τελέλης Πανεπιστήµιο Πειραιώς Πολυπλοκότητα 1 / 16 «Ζέσταµα» Να γράψετε τις συναρτήσεις
Διαβάστε περισσότεραΕνότητα 1: Εισαγωγή Ασκήσεις και Λύσεις
Ενότητα 1: Εισαγωγή Ασκήσεις και Λύσεις Άσκηση 1 Αποδείξτε τη µεταβατική και τη συµµετρική ιδιότητα του Θ. Λύση Μεταβατική Ιδιότητα (ορισµός): Αν f(n) = Θ(g(n)) και g(n) = Θ(h(n)) τότε f(n)=θ(h(n)). Για
Διαβάστε περισσότεραΚεφάλαιο 5 Ανάλυση Αλγορίθμων
Κεφάλαιο 5 Ανάλυση Αλγορίθμων 5.1 Επίδοση αλγορίθμων Τα πρωταρχικά ερωτήματα που προκύπτουν είναι: 1. πώς υπολογίζεται ο χρόνος εκτέλεσης ενός αλγορίθμου; 2. πώς μπορούν να συγκριθούν μεταξύ τους οι διάφοροι
Διαβάστε περισσότεραΥπολογιστική Πολυπλοκότητα
Υπολογιστική Πολυπλοκότητα Υπολογιστική πολυπλοκότητα αλγόριθµου Α: Ποσότητα υπολογιστικών πόρων που απαιτεί Α ως αύξουσα συνάρτηση µεγέθους στιγµιότυπου εισόδου. Χρόνος, µνήµη, επεξεργαστές, επικοινωνία,
Διαβάστε περισσότεραΔιάλεξη 04: Παραδείγματα Ανάλυσης
Διάλεξη 04: Παραδείγματα Ανάλυσης Πολυπλοκότητας/Ανάλυση Αναδρομικών Αλγόριθμων Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: - Παραδείγματα Ανάλυσης Πολυπλοκότητας : Μέθοδοι, παραδείγματα
Διαβάστε περισσότεραΕισαγωγή στην Ανάλυση Αλγορίθμων
Εισαγωγή στην Ανάλυση Αλγορίθμων (4) Μεθοδολογία αναδρομικών σχέσεων (Ι) Με επανάληψη της αναδρομής Έστω όπου r και a είναι σταθερές. Βρίσκουμε τη σχέση που εκφράζει την T(n) συναρτήσει της T(n-) την T(n)
Διαβάστε περισσότεραΣτην ενότητα αυτή θα µελετηθούν τα εξής θέµατα:
υναµικός Προγραµµατισµός Στην ενότητα αυτή θα µελετηθούν τα εξής θέµατα: Σχεδιασµός αλγορίθµων µε υναµικό Προγραµµατισµό Το πρόβληµα του πολλαπλασιασµού πινάκων ΕΠΛ 3 Αλγόριθµοι και Πολυπλοκότητα 3- υναµικός
Διαβάστε περισσότερα3 ΑΝΑ ΡΟΜΗ ΑΝΑΖΗΤΗΣΗ - ΤΑΞΙΝΟΜΗΣΗ. n! = 1*2*3*..(n-1)*n. n! = 1 αν n = 0, = n*(n-1)! αν n > ΑΝΑ ΡΟΜΗ Εισαγωγή
3 ΑΝΑ ΡΟΜΗ ΑΝΑΖΗΤΗΣΗ - ΤΑΞΙΝΟΜΗΣΗ 3.1 ΑΝΑ ΡΟΜΗ 3.1.1 Εισαγωγή ΕΦΑΡΜΟΣΜΕΝΗ ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ Αναδροµή είναι η µέθοδος κατά την οποία, σε µία γλώσσα προγραµµατισµού, µία διαδικασία ή συνάρτηση έχει την δυνατότητα
Διαβάστε περισσότεραΑν ένα πρόβλημα λύνεται από δύο ή περισσότερους αλγόριθμους, ποιος θα είναι ο καλύτερος; Με ποια κριτήρια θα τους συγκρίνουμε;
Αν ένα πρόβλημα λύνεται από δύο ή περισσότερους αλγόριθμους, ποιος θα είναι ο καλύτερος; Με ποια κριτήρια θα τους συγκρίνουμε; Πως θα υπολογίσουμε το χρόνο εκτέλεσης ενός αλγόριθμου; Για να απαντήσουμε
Διαβάστε περισσότεραΑ Ν Α Λ Τ Η Α Λ Γ Ο Ρ Ι Θ Μ Ω Ν Κ Ε Υ Α Λ Α Ι Ο 5. Πως υπολογίζεται ο χρόνος εκτέλεσης ενός αλγορίθμου;
5.1 Επίδοση αλγορίθμων Μέχρι τώρα έχουμε γνωρίσει διάφορους αλγόριθμους (αναζήτησης, ταξινόμησης, κ.α.). Στο σημείο αυτό θα παρουσιάσουμε ένα τρόπο εκτίμησης της επίδοσης (performance) η της αποδοτικότητας
Διαβάστε περισσότεραΕΠΛ231 Δομές Δεδομένων και Αλγόριθμοι 4. Παραδείγματα Ανάλυσης Πολυπλοκότητας Ανάλυση Αναδρομικών Αλγόριθμων
ΕΠΛ31 Δομές Δεδομένων και Αλγόριθμοι 4. Παραδείγματα Ανάλυσης Πολυπλοκότητας Ανάλυση Αναδρομικών Αλγόριθμων Διάλεξη 04: Παραδείγματα Ανάλυσης Πολυπλοκότητας/Ανάλυση Αναδρομικών Αλγόριθμων Στην ενότητα
Διαβάστε περισσότεραΣου προτείνω να τυπώσεις τις επόμενες τέσσερις σελίδες σε ένα φύλο διπλής όψης και να τις έχεις μαζί σου για εύκολη αναφορά.
AeppAcademy.com facebook.com/aeppacademy Γεια. Σου προτείνω να τυπώσεις τις επόμενες τέσσερις σελίδες σε ένα φύλο διπλής όψης και να τις έχεις μαζί σου για εύκολη αναφορά. Καλή Ανάγνωση & Καλή Επιτυχία
Διαβάστε περισσότεραΣτην ενότητα αυτή θα µελετηθούν τα εξής θέµατα:
υναµικός Προγραµµατισµός Στην ενότητα αυτή θα µελετηθούν τα εξής θέµατα: Σχεδιασµός αλγορίθµων µε υναµικό Προγραµµατισµό Το πρόβληµα του πολλαπλασιασµού πινάκων ΕΠΛ 3 Αλγόριθµοι και Πολυπλοκότητα 3- υναµικός
Διαβάστε περισσότεραΜαθηµατικά για Πληροφορική
Μαθηµατικά για Πληροφορική 6ο Μάθηµα Ηλίας Κουτσουπιάς, Γιάννης Εµίρης Τµήµα Πληροφορικής και Τηλεπικοινωνιών Πανεπιστήµιο Αθηνών 27/11/2008 27/11/2008 1 / 55 Γενικό πλάνο 1 Ανάλυση αλγορίθµων 2 Συµβολισµοί
Διαβάστε περισσότεραΤαξινόμηση. 1. Γρήγορη ταξινόμηση 2. Ταξινόμηση με Συγχώνευση. Εισαγωγή στην Ανάλυση Αλγορίθμων Μάγια Σατρατζέμη
Ταξινόμηση. Γρήγορη ταξινόμηση. Ταξινόμηση με Συγχώνευση Εισαγωγή στην Ανάλυση Αλγορίθμων Μάγια Σατρατζέμη Γρήγορη Ταξινόμηση Η γρήγορη ταξινόμηση qucksort), που αλλιώς ονομάζεται και ταξινόμηση µε διαμερισμό
Διαβάστε περισσότεραKΕΦΑΛΑΙΟ 1 ΧΡΗΣΙΜΕΣ ΜΑΘΗΜΑΤΙΚΕΣ ΕΝΝΟΙΕΣ. { 1,2,3,..., n,...
KΕΦΑΛΑΙΟ ΧΡΗΣΙΜΕΣ ΜΑΘΗΜΑΤΙΚΕΣ ΕΝΝΟΙΕΣ Βασικές έννοιες διαιρετότητας Θα συµβολίζουµε µε, τα σύνολα των φυσικών αριθµών και των ακεραίων αντιστοίχως: {,,3,,, } { 0,,,,, } = = ± ± ± Ορισµός Ένας φυσικός αριθµός
Διαβάστε περισσότεραΔοµές Δεδοµένων και Αλγόριθµοι - Εισαγωγή
Δοµές Δεδοµένων και Αλγόριθµοι - Εισαγωγή Στην ενότητα αυτή θα µελετηθούν τα εξής επιµέρους θέµατα: Εισαγωγή στις έννοιες Αλγόριθµοι και Πολυπλοκότητα, Οργάνωση Δεδοµένων και Δοµές Δεδοµένων Χρήσιµοι µαθηµατικοί
Διαβάστε περισσότερα(CLR, κεφάλαιο 32) Στην ενότητα αυτή θα µελετηθούν τα εξής θέµατα: Παραστάσεις πολυωνύµων Πολυωνυµική Παρεµβολή ιακριτός Μετασχηµατισµός Fourier
Ταχύς Μετασχηµατισµός Fourier CLR, κεφάλαιο 3 Στην ενότητα αυτή θα µελετηθούν τα εξής θέµατα: Παραστάσεις πολυωνύµων Πολυωνυµική Παρεµβολή ιακριτός Μετασχηµατισµός Fourier Ταχύς Μετασχηµατισµός Fourier
Διαβάστε περισσότεραΠροηγούµενο: Ανω Φράγµα στην Τάξη των Συναρτήσεων. Ρυθµός Αύξησης (Τάξη) των Συναρτήσεων. Σύνοψη Ιδιοτήτων
Προηγούµενο: Ανω Φράγµα στην Τάξη των Συναρτήσεων Ρυθµός Αύξησης (Τάξη) των Συναρτήσεων Ορέστης Τελέλης η (τάξη της) f() είναι O( g() ) αν υπάρχουν σταθερές C και 0, τέτοιες ώστε: f() C g() για κάθε 0
Διαβάστε περισσότεραΔιδάσκων: Κωνσταντίνος Κώστα Διαφάνειες: Δημήτρης Ζεϊναλιπούρ
Διάλεξη - Πολυπλοκότητα Αλγορίθμων / Επανάληψη Χρήσιμων Μαθηματικών Ορισμών Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Αλγόριθμοι, Κριτήρια Αξιολόγησης Αλγόριθμων, Γιατί αναλύουμε τους Αλγορίθμων
Διαβάστε περισσότεραΔιάλεξη 04: Παραδείγματα Ανάλυσης Πολυπλοκότητας/Ανάλυση Αναδρομικών Αλγόριθμων
Διάλεξη 04: Παραδείγματα Ανάλυσης Πολυπλοκότητας/Ανάλυση Αναδρομικών Αλγόριθμων Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: - Παραδείγματα Ανάλυσης Πολυπλοκότητας : Μέθοδοι, παραδείγματα
Διαβάστε περισσότεραΕισαγωγή στην Ανάλυση Αλγορίθμων (1) Διαφάνειες του Γ. Χ. Στεφανίδη
Εισαγωγή στην Ανάλυση Αλγορίθμων (1) Διαφάνειες του Γ. Χ. Στεφανίδη 0. Εισαγωγή Αντικείμενο μαθήματος: Η θεωρητική μελέτη ανάλυσης των αλγορίθμων. Στόχος: επιδόσεις των επαναληπτικών και αναδρομικών αλγορίθμων.
Διαβάστε περισσότεραΑνάλυση αλγορίθμων. Χρόνος εκτέλεσης: Αναμενόμενη περίπτωση. - απαιτεί γνώση της κατανομής εισόδου
Ανάλυση αλγορίθμων Παράμετροι απόδοσης ενός αλγόριθμου: Χρόνος εκτέλεσης Απαιτούμενοι πόροι, π.χ. μνήμη, επικοινωνία (π.χ. σε κατανεμημένα συστήματα) Προσπάθεια υλοποίησης Ανάλυση της απόδοσης Θεωρητική
Διαβάστε περισσότερα1 Ανάλυση αλγορίθµων. 2 Συµβολισµοί O, Ω και Θ. 3 Αναδροµικές εξισώσεις
Γενικό πλάνο Μαθηµατικά για Πληροφορική 6ο Μάθηµα 1 Ανάλυση αλγορίθµων Ηλίας Κουτσουπιάς, Γιάννης Εµίρης 2 Συµβολισµοί O, Ω και Θ Τµήµα Πληροφορικής και Τηλεπικοινωνιών Πανεπιστήµιο Αθηνών 27/11/2008 3
Διαβάστε περισσότεραΔιδάσκων: Παναγιώτης Ανδρέου
Διάλεξη 04: ΠαραδείγματαΑνάλυσης Πολυπλοκότητας/Ανάλυση Αναδρομικών Αλγόριθμων Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: -Παραδείγματα Ανάλυσης Πολυπλοκότητας : Μέθοδοι, παραδείγματα -Γραμμική
Διαβάστε περισσότεραΤαξινόμηση. 1. Ταξινόμηση με Εισαγωγή 2. Ταξινόμηση με Επιλογή. Εισαγωγή στην Ανάλυση Αλγορίθμων Μάγια Σατρατζέμη
Ταξινόμηση. Ταξινόμηση με Εισαγωγή. Ταξινόμηση με Επιλογή Εισαγωγή στην Ανάλυση Αλγορίθμων Μάγια Σατρατζέμη Ταξινόμηση Η ταξινόμηση sortg τοποθετεί ένα σύνολο κόμβων ή εγγραφών σε μία συγκεκριμένη διάταξη
Διαβάστε περισσότεραΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ
ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ Δομές δεδομένων Άσκηση αυτοαξιολόγησης 1 Παναγιώτα Φατούρου Τμήμα Επιστήμης Υπολογιστών Ενότητα 1: Εισαγωγή Ασκήσεις και Λύσεις Άσκηση 1 Αποδείξτε τη µεταβατική
Διαβάστε περισσότερα5.1. Προσδοκώμενα αποτελέσματα
5.1. Προσδοκώμενα αποτελέσματα Όταν θα έχεις ολοκληρώσει τη μελέτη αυτού του κεφαλαίου θα έχεις κατανοήσει τις τεχνικές ανάλυσης των αλγορίθμων, θα μπορείς να μετράς την επίδοση των αλγορίθμων με βάση
Διαβάστε περισσότεραΠρόβλημα 29 / σελίδα 28
Πρόβλημα 29 / σελίδα 28 Πρόβλημα 30 / σελίδα 28 Αντιμετάθεση / σελίδα 10 Να γράψετε αλγόριθμο, οποίος θα διαβάζει τα περιεχόμενα δύο μεταβλητών Α και Β, στη συνέχεια να αντιμεταθέτει τα περιεχόμενά τους
Διαβάστε περισσότεραΔιδάσκων: Παναγιώτης Ανδρέου
Διάλεξη 6: ΠαραδείγματαΑνάλυσης Πολυπλοκότητας/Ανάλυση Αναδρομικών Αλγόριθμων Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: -Παραδείγματα Ανάλυσης Πολυπλοκότητας : Μέθοδοι, παραδείγματα -Γραμμική
Διαβάστε περισσότεραΑλγόριθµοι και Πολυπλοκότητα
Αλγόριθµοι και Πολυπλοκότητα Στην ενότητα αυτή θα µελετηθούν τα εξής θέµατα: Πρόβληµα, Στιγµιότυπο, Αλγόριθµος Εργαλεία εκτίµησης πολυπλοκότητας: οι τάξεις Ο(n), Ω(n), Θ(n) Ανάλυση Πολυπλοκότητας Αλγορίθµων
Διαβάστε περισσότεραΑναζήτηση. 1. Σειριακή αναζήτηση 2. Δυαδική Αναζήτηση. Εισαγωγή στην Ανάλυση Αλγορίθμων Μάγια Σατρατζέμη
Αναζήτηση. Σειριακή αναζήτηση. Δυαδική Αναζήτηση Εισαγωγή στην Ανάλυση Αλγορίθμων Μάγια Σατρατζέμη Παραδοχή Στη συνέχεια των διαφανειών (διαλέξεων) η ασυμπτωτική έκφραση (συμβολισμός Ο, Ω, Θ) του χρόνου
Διαβάστε περισσότεραΑΕΠΠ Ερωτήσεις θεωρίας
ΑΕΠΠ Ερωτήσεις θεωρίας Κεφάλαιο 1 1. Τα δεδομένα μπορούν να παρέχουν πληροφορίες όταν υποβάλλονται σε 2. Το πρόβλημα μεγιστοποίησης των κερδών μιας επιχείρησης είναι πρόβλημα 3. Για την επίλυση ενός προβλήματος
Διαβάστε περισσότεραΕισαγωγικές Έννοιες. ημήτρης Φωτάκης. Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών. Εθνικό Μετσόβιο Πολυτεχνείο
Εισαγωγικές Έννοιες ημήτρης Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Άδεια Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons.
Διαβάστε περισσότεραHeapsort Using Multiple Heaps
sort sort Using Multiple s. Λεβεντέας Χ. Ζαρολιάγκης Τµήµα Μηχανικών Η/Υ & Πληροφορικής 29 Αυγούστου 2008 sort 1 Ορισµός ify Build- 2 sort Πως δουλεύει Ιδιότητες 3 4 Προβλήµατα Προτάσεις Ανάλυση Κόστους
Διαβάστε περισσότεραΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ
ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ Ενότητα 6β: Ταξινόμηση με εισαγωγή και επιλογή Μαρία Σατρατζέμη Τμήμα Εφαρμοσμένης Πληροφορικής Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creatve
Διαβάστε περισσότεραΓραµµική Αλγεβρα. Ενότητα 2 : Επίλυση Γραµµικών Εξισώσεων. Ευστράτιος Γαλλόπουλος Τµήµα Μηχανικών Η/Υ & Πληροφορικής
Γραµµική Αλγεβρα Ενότητα 2 : Επίλυση Γραµµικών Εξισώσεων Ευστράτιος Γαλλόπουλος Τµήµα Μηχανικών Η/Υ & Πληροφορικής Αδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons.
Διαβάστε περισσότεραΚατ οίκον Εργασία 1 Σκελετοί Λύσεων
ΕΠΛ Δομές Δεδομένων και Αλγόριθμοι Σεπτέμβριος 008 Κατ οίκον Εργασία Σκελετοί Λύσεων Άσκηση Παρατηρούμε ότι ο χρόνος εκτέλεσης μέσης περίπτωσης της κάθε εντολής if ξεχωριστά: if (c mod 0) for (k ; k
Διαβάστε περισσότεραΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ
ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ Ενότητα 1: Εισαγωγή Μαρία Σατρατζέμη Τμήμα Εφαρμοσμένης Πληροφορικής Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό
Διαβάστε περισσότεραΑλγόριθμοι και Δομές Δεδομένων (Ι) (εισαγωγικές έννοιες)
Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 2015-16 Αλγόριθμοι και Δομές Δεδομένων (Ι) (εισαγωγικές έννοιες) http://di.ionio.gr/~mistral/tp/csintro/ Μ.Στεφανιδάκης Τι είναι
Διαβάστε περισσότεραΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ
ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ Ενότητα 7α: Μελέτη πολυπλοκότητας των Αλγόριθμων qucksort & mergesort Μαρία Σατρατζέμη Τμήμα Εφαρμοσμένης Πληροφορικής Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται
Διαβάστε περισσότεραΔυναμικός Προγραμματισμός
Δυναμικός Προγραμματισμός Επιμέλεια διαφανειών: Δ. Φωτάκης Τροποποιήσεις: Α. Παγουρτζής Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Διωνυμικοί Συντελεστές Διωνυμικοί
Διαβάστε περισσότεραΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ
ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΡΟΓΡΑΜΜΑ ΣΠΟΥ ΩΝ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ ΜΑΘΗΜΑΤΙΚΑ Ι (ΘΕ ΠΛΗ ) Ενδεικτικές Λύσεις ΕΡΓΑΣΙΑ η (Ηµεροµηνία Αποστολής στον Φοιτητή: Οκτωβρίου 005) Η Άσκηση στην εργασία αυτή είναι
Διαβάστε περισσότεραΔιάλεξη 09: Αλγόριθμοι Ταξινόμησης I
Διάλεξη 09: Αλγόριθμοι Ταξινόμησης I Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Οι αλγόριθμοι ταξινόμησης: Α. SelectoSort Ταξινόμηση με Επιλογή Β. IsertoSort Ταξινόμηση με Εισαγωγή Γ. MergeSort
Διαβάστε περισσότεραπεριεχόμενα ρυθιμός αύξησης συναρτήσεων ασυμπτωτική πολυπλοκότητα ασυμπτωτική επίδοση ασυμπτωτικοί συμβολισμοί ασυμπτωτικός συμβολισμος
ρυθμός αύξησης συναρτήσεων περιεχόμενα Ασυμπτωτικός συμβολισμός Καθιερωμένοι συμβολισμοί και συνήθεις συναρτήσεις Παύλος Εφραιμίδης 2 ασυμπτωτική πολυπλοκότητα ασυμπτωτική επίδοση Πολυπλοκότητα χειρότερης
Διαβάστε περισσότεραΑσκήσεις για το µάθηµα «Ανάλυση Ι και Εφαρµογές» (ε) Κάθε συγκλίνουσα ακολουθία άρρητων αριθµών συγκλίνει σε άρρητο αριθµό.
Ασκήσεις για το µάθηµα «Ανάλυση Ι και Εφαρµογές» Κεφάλαιο : Ακολουθίες πραγµατικών αριθµών Α Οµάδα Εξετάστε αν οι παρακάτω προτάσεις είναι αληθείς ή ψευδείς αιτιολογήστε πλήρως την απάντησή σας α Κάθε
Διαβάστε περισσότεραΑλγόριθµοι και Πολυπλοκότητα
Αλγόριθµοι και Πολυπλοκότητα Στην ενότητα αυτή θα µελετηθούν τα εξής θέµατα: Πρόβληµα, Στιγµιότυπο, Αλγόριθµος Εργαλεία εκτίµησης πολυπλοκότητας: οι τάξεις Ο(), Ω(), Θ( ) Ανάλυση Πολυπλοκότητας Αλγορίθµων
Διαβάστε περισσότεραΑσυμπτωτικός Συμβολισμός
Ασυμπτωτικός Συμβολισμός Επιμέλεια διαφανειών: Δημήτρης Φωτάκης (λίγες προσθήκες: Άρης Παγουρτζής) Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Υπολογιστική Πολυπλοκότητα
Διαβάστε περισσότεραΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ
ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ Ενότητα 2: Ασυμπτωτικός συμβολισμός Μαρία Σατρατζέμη Τμήμα Εφαρμοσμένης Πληροφορικής Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons.
Διαβάστε περισσότεραΔιδάσκων: Κωνσταντίνος Κώστα Διαφάνειες: Δημήτρης Ζεϊναλιπούρ ΕΠΛ 035 Δομές Δεδομένων και Αλγόριθμοι για Ηλ. Μηχ. και Μηχ. Υπολ.
Διάλεξη : Παραδείγματα Ανάλυσης Πολυπλοκότητας / Ανάλυση Αναδρομικών Αλγόριθμων Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Παραδείγματα Ανάλυσης Πολυπλοκότητας : Μέθοδοι, 6 παραδείγματα
Διαβάστε περισσότεραΔομές Δεδομένων Ενότητα 2
ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Ενότητα 2: Θέματα Απόδοσης Απόστολος Παπαδόπουλος Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons.
Διαβάστε περισσότεραΤι είναι αλγόριθμος; Υποπρογράμματα (υποαλγόριθμοι) Βασικές αλγοριθμικές δομές
Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 2015-16 Αλγόριθμοι και Δομές Δεδομένων (Ι) (εισαγωγικές έννοιες) http://di.ionio.gr/~mistral/tp/csintro/ Μ.Στεφανιδάκης Τι είναι
Διαβάστε περισσότεραΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΙΡΑΙΩΣ ΤΜΗΜΑ ΨΗΦΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ
ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΙΡΑΙΩΣ ΤΜΗΜΑ ΨΗΦΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ ΜΑΘΗΜΑ: ΑΛΓΟΡΙΘΜΟΙ ΚΑΙ ΠΟΛΥΠΛΟΚΟΤΗΤΑ 1. α. Να βάλετε σε αύξουσα σειρά μεγέθους τις παρακάτω συναρτήσεις χρονικής πολυπλοκότητας αλγορίθμων: nlogn, n logn,
Διαβάστε περισσότεραΚεφάλαιο 2. Παραγοντοποίηση σε Ακέραιες Περιοχές
Κεφάλαιο Παραγοντοποίηση σε Ακέραιες Περιοχές Γνωρίζουµε ότι στο Ÿ κάθε στοιχείο εκτός από το 0 και τα ± γράφεται ως γινόµενο πρώτων αριθµών κατά τρόπο ουσιαστικά µοναδικό Από τη Βασική Άλγεβρα ξέρουµε
Διαβάστε περισσότεραΑΣΥΜΠΤΩΤΙΚΗ ΑΝΑΛΥΣΗ & ΠΡΟΣΘΕΣΗ
ΑΣΥΜΠΤΩΤΙΚΗ ΑΝΑΛΥΣΗ & ΠΡΟΣΘΕΣΗ Θέματα μελέτης Ορθότητα και απόδοση αλγορίθμων Παρουσίαση και ανάλυση αλγορίθμου για πρόσθεση Al Khwarizmi Αλγόριθμοι Το δεκαδικό σύστημα εφευρέθηκε στην Ινδία περίπου το
Διαβάστε περισσότεραΕισαγωγή - Βασικές έννοιες. Ι.Ε.Κ ΓΛΥΦΑΔΑΣ Τεχνικός Τεχνολογίας Internet Αλγοριθμική Ι (Ε) Σχολ. Ετος A Εξάμηνο
Εισαγωγή - Βασικές έννοιες Ι.Ε.Κ ΓΛΥΦΑΔΑΣ Τεχνικός Τεχνολογίας Internet Αλγοριθμική Ι (Ε) Σχολ. Ετος 2012-13 A Εξάμηνο Αλγόριθμος Αλγόριθμος είναι μια πεπερασμένη σειρά ενεργειών, αυστηρά καθορισμένων
Διαβάστε περισσότεραΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ
ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ Ενότητα 6α: Αναζήτηση Μαρία Σατρατζέμη Τμήμα Εφαρμοσμένης Πληροφορικής Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commos. Για εκπαιδευτικό
Διαβάστε περισσότεραΑλγόριθµοι. Παράδειγµα. ιαίρει και Βασίλευε. Παράδειγµα MergeSort. Τεχνικές Σχεδιασµού Αλγορίθµων
Τεχνικές Σχεδιασµού Αλγορίθµων Αλγόριθµοι Παύλος Εφραιµίδης pefraimi@ee.duth.gr Ορισµένες γενικές αρχές για τον σχεδιασµό αλγορίθµων είναι: ιαίρει και Βασίλευε (Divide and Conquer) υναµικός Προγραµµατισµός
Διαβάστε περισσότεραοµές εδοµένων 3 ο Εξάµηνο Τµήµα Πανεπιστήµιο Πληροφορικής Ιωαννίνων ΟΜΕΣ Ε ΟΜΕΝΩΝ
Τµήµα Πανεπιστήµιο Πληροφορικής Ιωαννίνων ΟΜΕΣ Ε ΟΜΕΝΩΝ ΕΝΟΤΗΤΑ 1 ΕΙΣΑΓΩΓΗ 1 εδοµένα Σύνολο από πληροφορίες που πρέπει να αποθηκευτούν σε έναν υπολογιστή Υπολογιστικό Μοντέλο ένας επεξεργαστής και µεγάλος
Διαβάστε περισσότεραΓενικές Παρατηρήσεις. Μη Κανονικές Γλώσσες - Χωρίς Συµφραζόµενα (1) Το Λήµµα της Αντλησης. Χρήση του Λήµµατος Αντλησης.
Γενικές Παρατηρήσεις Μη Κανονικές Γλώσσες - Χωρίς Συµφραζόµενα () Ορέστης Τελέλης telelis@unipi.gr Τµήµα Ψηφιακών Συστηµάτων, Πανεπιστήµιο Πειραιώς Υπάρχουν µη κανονικές γλώσσες, π.χ., B = { n n n }. Αυτό
Διαβάστε περισσότερα(Γραμμικές) Αναδρομικές Σχέσεις
(Γραμμικές) Αναδρομικές Σχέσεις Διδάσκοντες: Φ. Αφράτη, Δ. Φωτάκης Επιμέλεια διαφανειών: Δ. Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Αναδρομικές Σχέσεις
Διαβάστε περισσότεραΠεριεχόμενα. Εισαγωγή του επιμελητή, Γιάννης Σταματίου 15 Πρόλογος 17 Εισαγωγή 23. Μέρος I. ΕΠΑΝΑΛΗΠΤΙΚΟΙ ΑΛΓΟΡΙΘΜΟΙ ΚΑΙ ΑΝΑΛΛΟΙΩΤΕΣ ΣΥΝΘΗΚΕΣ
Περιεχόμενα Εισαγωγή του επιμελητή, Γιάννης Σταματίου 15 Πρόλογος 17 Εισαγωγή 23 Μέρος I. ΕΠΑΝΑΛΗΠΤΙΚΟΙ ΑΛΓΟΡΙΘΜΟΙ ΚΑΙ ΑΝΑΛΛΟΙΩΤΕΣ ΣΥΝΘΗΚΕΣ 1. Επαναληπτικοί αλγόριθμοι: Μέτρα προόδου και αναλλοίωτες συνθήκες.....................................................29
Διαβάστε περισσότεραΚατ οίκον Εργασία 1 Σκελετοί Λύσεων
EΠΛ Αλγόριθµοι και Πολυπλοκότητα Φεβρουάριος 00 Κατ οίκον Εργασία Σκελετοί Λύσεων. Ο αλγόριθµος διαίρει και βασίλευε για το πρόβληµα έχει ως εξής: Μοίρασε τον πίνακα σε δύο µισά. Υπολόγισε αναδροµικά τα
Διαβάστε περισσότεραιαίρει-και-βασίλευε ημήτρης Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο
ιαίρει-και-βασίλευε ημήτρης Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο ιαίρει-και-βασίλευε Γενική μέθοδος σχεδιασμού αλγορίθμων: ιαίρεση σε ( 2) υποπροβλήματα
Διαβάστε περισσότεραΕΙΣΑΓΩΓΗ ΣΤΙΣ ΑΡΧΕΣ ΤΗΣ ΕΠΙΣΤΗΜΗΣ ΤΩΝ Η/Υ
ΕΙΣΑΓΩΓΗ ΣΤΙΣ ΑΡΧΕΣ ΤΗΣ ΕΠΙΣΤΗΜΗΣ ΤΩΝ Η/Υ ΜΕΡΛΙΑΟΥΝΤΑΣ ΣΤΕΦΑΝΟΣ, ΠΕ19 ΚΕΦΑΛΑΙΟ 3 Αλγόριθμοι 3. Αλγόριθμοι 2 3. Αλγόριθμοι 3.1 Η έννοια του αλγορίθμου 3.2 Χαρακτηριστικά αλγορίθμου 3.3 Ανάλυση αλγορίθμων
Διαβάστε περισσότεραΔυναμικός Προγραμματισμός
Δυναμικός Προγραμματισμός Επιμέλεια διαφανειών: Δ. Φωτάκης Τροποποιήσεις /προσθήκες: Α. Παγουρτζής Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Διωνυμικοί Συντελεστές
Διαβάστε περισσότεραΚΕΦΑΛΑΙΟ 12: Θεωρία υπολογισµών
ΚΕΦΑΛΑΙΟ 12: Θεωρία υπολογισµών 1 Συναρτήσεις και ο υπολογισµός τους 2 Μηχανές Turing 3 Καθολικές γλώσσες προγραµµατισµού 4 Μια µη υπολογίσιµη συνάρτηση 5 Πολυπλοκότητα προβληµάτων 1 Συναρτήσεις Μία συνάρτηση
Διαβάστε περισσότεραΑναδρομή Ανάλυση Αλγορίθμων
Αναδρομή Ανάλυση Αλγορίθμων Παράδειγμα: Υπολογισμός του παραγοντικού Ορισμός του n! n! = n x (n - 1) x x 2 x 1 Ο παραπάνω ορισμός μπορεί να γραφεί ως n! = 1 αν n = 0 n x (n -1)! αλλιώς Παράδειγμα (συνέχ).
Διαβάστε περισσότερα2 ΟΥ και 7 ΟΥ ΚΕΦΑΛΑΙΟΥ
ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΕΠΙΜΕΛΕΙΑ: ΜΑΡΙΑ Σ. ΖΙΩΓΑ ΚΑΘΗΓΗΤΡΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΘΕΩΡΙΑ 2 ΟΥ και 7 ΟΥ ΚΕΦΑΛΑΙΟΥ ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΑΛΓΟΡΙΘΜΩΝ και ΔΟΜΗ ΑΚΟΛΟΥΘΙΑΣ 2.1 Να δοθεί ο ορισμός
Διαβάστε περισσότεραΕπιμέλεια διαφανειών: Δ. Φωτάκης Τροποποιήσεις-προσθήκες: Α. Παγουρτζής. Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών
Διαίρει-και-Βασίλευε Επιμέλεια διαφανειών: Δ. Φωτάκης Τροποποιήσεις-προσθήκες: Α. Παγουρτζής Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Διαίρει-και-Βασίλευε Γενική
Διαβάστε περισσότεραΑλγόριθµοι και Πολυπλοκότητα
Αλγόριθµοι και Πολυπλοκότητα Ν. Μ. Μισυρλής Τµήµα Πληροφορικής και Τηλεπικοινωνιών, Πανεπιστήµιο Αθηνών Καθηγητής: Ν. Μ. Μισυρλής () Αλγόριθµοι και Πολυπλοκότητα 15 Ιουνίου 2009 1 / 26 Εισαγωγή Η ϑεωρία
Διαβάστε περισσότεραΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ. Ταξινόµηση Mergesort Κεφάλαιο 8. Ε. Μαρκάκης Επίκουρος Καθηγητής
ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ Ταξινόµηση Mergesort Κεφάλαιο 8 Ε. Μαρκάκης Επίκουρος Καθηγητής Περίληψη Ταξινόµηση µε συγχώνευση Αλγόριθµος Mergesort Διµερής συγχώνευση Αφηρηµένη επιτόπου συγχώνευση Αναλυτική ταξινόµηση
Διαβάστε περισσότερατη µέθοδο της µαθηµατικής επαγωγής για να αποδείξουµε τη Ϲητούµενη ισότητα.
Αριστοτελειο Πανεπιστηµιο Θεσσαλονικης Τµηµα Μαθηµατικων Εισαγωγή στην Αλγεβρα Τελική Εξέταση 15 Φεβρουαρίου 2017 1. (Οµάδα Α) Εστω η ακολουθία Fibonacci F 1 = 1, F 2 = 1 και F n = F n 1 + F n 2, για n
Διαβάστε περισσότεραΔιακριτά Μαθηματικά ΙΙ Χρήστος Νομικός Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων 2018 Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά
Διακριτά Μαθηματικά ΙΙ Χρήστος Νομικός Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων 2018 Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά και Πληροφορικής Μαθηματικά Πανεπιστήμιο ΙΙ Ιωαννίνων
Διαβάστε περισσότεραΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ
ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ Ενότητα 13: Αλγόριθμοι-Μεγάλων ακεραίων- Εκθετοποίηση- Πολλαπλασιασμός πινάκων -Strassen Μαρία Σατρατζέμη Τμήμα Εφαρμοσμένης Πληροφορικής Άδειες Χρήσης Το παρόν εκπαιδευτικό
Διαβάστε περισσότεραΚατ οίκον Εργασία 1 Σκελετοί Λύσεων
ΕΠΛ 1 Δομές Δεδομένων και Αλγόριθμοι Σεπτέμβριος 009 Κατ οίκον Εργασία 1 Σκελετοί Λύσεων Άσκηση 1 Αρχικά θα πρέπει να υπολογίσουμε τον αριθμό των πράξεων που μπορεί να εκτελέσει ο υπολογιστής σε μια ώρα,
Διαβάστε περισσότεραΑλγόριθμοι και Πολυπλοκότητα Φώτης Ε. Ψωμόπουλος, Περικλής Α. Μήτκας
ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Τομέας Ηλεκτρονικής και Υπολογιστών Εργαστήριο Επεξεργασίας Πληροφορίας και Υπολογισμών Καθηγητής: Περικλής
Διαβάστε περισσότεραΚεφάλαιο 6. Εισαγωγή στη µέθοδο πεπερασµένων όγκων επίλυση ελλειπτικών και παραβολικών διαφορικών εξισώσεων
Κεφάλαιο 6 Εισαγωγή στη µέθοδο πεπερασµένων όγκων επίλυση ελλειπτικών παραβολικών διαφορικών εξισώσεων 6.1 Εισαγωγή Η µέθοδος των πεπερασµένων όγκων είναι µία ευρέως διαδεδοµένη υπολογιστική µέθοδος επίλυσης
Διαβάστε περισσότεραΔυναμικός Προγραμματισμός
Τρίγωνο του Pascal Δυναμικός Προγραμματισμός Διωνυμικοί συντελεστές Διδάσκοντες: Σ. Ζάχος, Δ. Φωτάκης Επιμέλεια διαφανειών: Δ. Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο
Διαβάστε περισσότεραΓΡΑΜΜΙΚΗ ΑΛΓΕΒΡΑ Ι (ΑΡΤΙΟΙ) Λυσεις Ασκησεων - Φυλλαδιο 2
ΓΡΑΜΜΙΚΗ ΑΛΓΕΒΡΑ Ι Τµηµα Β (ΑΡΤΙΟΙ) Λυσεις Ασκησεων - Φυλλαδιο ιδασκων: Α Μπεληγιάννης Ιστοσελιδα Μαθηµατος : http://usersuoigr/abeligia/linearalgebrai/lai8/lai8html Παρασκευή 6 Οκτωβρίου 8 Υπενθυµίζουµε
Διαβάστε περισσότεραΟ αλγόριθμος πρέπει να τηρεί κάποια κριτήρια
Αλγόριθμος είναι μια πεπερασμένη σειρά ενεργειών, αυστηρά καθορισμένων και εκτελέσιμων σε πεπερασμένο χρόνο, που στοχεύουν στην επίλυση ενός προβλήματος. Ο αλγόριθμος πρέπει να τηρεί κάποια κριτήρια Είσοδος:
Διαβάστε περισσότεραΚεφάλαιο 2 ο Βασικές Έννοιες Αλγορίθμων (σελ )
Κεφάλαιο 2 ο Βασικές Έννοιες Αλγορίθμων (σελ. 25 48) Τι είναι αλγόριθμος; Γ ΛΥΚΕΙΟΥ Αλγόριθμος είναι μία πεπερασμένη σειρά ενεργειών, αυστηρά καθορισμένων και εκτελέσιμων σε πεπερασμένο χρονικό διάστημα,
Διαβάστε περισσότεραΠρόλογος. Πρόλογος 13. Πώς χρησιμοποείται αυτό το βιβλίο 17
Πρόλογος Πρόλογος 13 Πώς χρησιμοποείται αυτό το βιβλίο 17 1 Η λογική σκέψη 19 1.1 Τυπική λογική 20 1.1.1 Διερευνητικά προβλήματα 21 1.1.2 Σύνδεσμοι και προτάσεις 21 1.1.3 Οι πίνακες αλήθειας 23 1.1.4 Λογικές
Διαβάστε περισσότεραΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ. Δοµές Δεδοµένων
ΟΝΟΜΑΤΕΠΩΝΥΜΟ: ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ AM: Δοµές Δεδοµένων Εξεταστική Ιανουαρίου 2014 Διδάσκων : Ευάγγελος Μαρκάκης 20.01.2014 ΥΠΟΓΡΑΦΗ ΕΠΟΠΤΗ: Διάρκεια εξέτασης : 2 ώρες και
Διαβάστε περισσότεραΤμήμα Μηχανολόγων Μηχανικών Πανεπιστήμιο Θεσσαλίας ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ. Βήματα προς τη δημιουργία εκτελέσιμου κώδικα
Τμήμα Μηχανολόγων Μηχανικών Πανεπιστήμιο Θεσσαλίας ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Βήματα προς τη δημιουργία εκτελέσιμου κώδικα Ιωάννης Λυχναρόπουλος Μαθηματικός, MSc, PhD Βήματα προς τη δημιουργία εκτελέσιμου κώδικα
Διαβάστε περισσότεραΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ
ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΡΟΓΡΑΜΜΑ ΣΠΟΥ ΩΝ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ ΜΑΘΗΜΑΤΙΚΑ Ι (ΘΕ ΠΛΗ ) ΑΠΑΝΤΗΣΕΙΣ Α ΕΡΓΑΣΙΑΣ. ( 8 µον.) Η άσκηση αυτή αναφέρεται σε διαιρετότητα και ρίζες πολυωνύµων. a. Να λυθεί η εξίσωση
Διαβάστε περισσότεραΕισαγωγή στους Αλγορίθμους
Εισαγωγή στους Αλγορίθμους Ενότητα 5η Διδάσκων Χρήστος Ζαρολιάγκης Καθηγητής Τμήμα Μηχανικών Η/Υ & Πληροφορικής Πανεπιστήμιο Πατρών Email: zaro@ceid.upatras.gr Η Μέθοδος «Διαίρει & Βασίλευε» Η Μέθοδος
Διαβάστε περισσότερα11.1 Συναρτήσεις. ΚΕΦΑΛΑΙΟ 11: Θεωρία υπολογισµών
ΚΕΦΑΛΑΙΟ : Θεωρία υπολογισµών. Συναρτήσεις και ο υπολογισµός τους. Μηχανές Turig.3 Καθολικές γλώσσες προγραµµατισµού.4 Μια µη υπολογίσιµη συνάρτηση.5 Πολυπλοκότητα προβληµάτων.6 Κρυπτογραφία δηµόσιου κλειδιού.
Διαβάστε περισσότεραΑριθμοθεωρητικοί Αλγόριθμοι
Αλγόριθμοι που επεξεργάζονται μεγάλους ακέραιους αριθμούς Μέγεθος εισόδου: Αριθμός bits που απαιτούνται για την αναπαράσταση των ακεραίων. Έστω ότι ένας αλγόριθμος λαμβάνει ως είσοδο έναν ακέραιο Ο αλγόριθμος
Διαβάστε περισσότερα