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

Μέγεθος: px
Εμφάνιση ξεκινά από τη σελίδα:

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

Transcript

1 ΕΠΛ31 Δομές Δεδομένων και Αλγόριθμοι 3. Πολυπλοκότητα Αλγορίθμων

2 Διάλεξη 3: - Πολυπλοκότητα Αλγορίθμων / Επανάληψη Χρήσιμων Μαθηματικών Ορισμών Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: - Αλγόριθμοι, Κριτήρια Αξιολόγησης Αλγόριθμων, Γιατί αναλύουμε τους Αλγόριθμους - Εμπειρική Θεωρητική Ανάλυση Αλγορίθμων, Αρχή Σταθερότητας - Εργαλεία εκτίμησης πολυπλοκότητας: οι τάξεις Ο(), Ω(), Θ( ) - Γραφική Απεικόνιση Ο(), Ω(), Θ( ) - Παραδείγματα Ανάλυσης Πολυπλοκότητας - Χρήσιμοι μαθηματικοί ορισμοί - Μαθηματική Επαγωγή ΕΠΛ31 Δομές Δεδομένων και Αλγόριθμοι

3 ΕΠΛ31 Δομές Δεδομένων και Αλγόριθμοι 3 Αλγόριθμοι Αλγόριθμος: είναι μια πεπερασμένη ακολουθία εντολών, αυστηρά καθορισμένων και εκτελέσιμων σε πεπερασμένο χρόνο, οι οποίες αν ακολουθηθούν επιτυγχάνεται κάποιο επιθυμητό αποτέλεσμα. Προγράμματα: Υλοποίηση αλγορίθμου σε μια γλώσσα προγραμματισμού Ένα σωστό πρόγραμμα δεν είναι αρκετό Τι είναι σημαντικό σε ένα Αλγόριθμο; Ορθότητα: όταν τα δεδομένα εισόδου ικανοποιούν τις αναγκαίες συνθήκες, τότε το πρόγραμμα τερματίζει με το αναμενόμενο αποτέλεσμα. Χρόνος Εκτέλεσης: Ο χρόνος που χρειάζεται το πρόγραμμα για να δημιουργήσει το αναμενόμενο αποτέλεσμα. Απαίτηση στην Μνήμη, Δίκτυο, Μαγνητικό Δίσκο (ανάλογα με την εφαρμογή): Τους υπολογιστικούς πόρους τους οποίους χρειάζεται η εφαρμογή, πέρα από τον επεξεργαστή, για να δημιουργηθεί το αναμενόμενο αποτέλεσμα.

4 Πολυπλοκότητα Αλγορίθμων ΕΠΛ31 Δομές Δεδομένων και Αλγόριθμοι -4 Υπάρχει ένα σύνολο σωστών αλγορίθμων για κάθε πρόβλημα. Όλοι οι αλγόριθμοι έχουν θεωρητικό ενδιαφέρον. Και πρακτικό ενδιαφέρον όμως παρουσιάζουν αυτοί που είναι αποδοτικοί, δηλαδή αυτοί που ελαχιστοποιούν: - τον χρόνο που εκτελούνται, - τον χώρο που χρησιμοποιούν. Στόχος: η ανάλυση και ο υπολογισμός της πολυπλοκότητας χρόνου και χώρου (tme ad space complexty) των αλγορίθμων και ο έλεγχος αν και πότε ένας αλγόριθμος είναι άριστος (optmal), δηλαδή ο πιο αποδοτικός για το πρόβλημα για το οποίο σχεδιάστηκε.

5 Ανάλυση Αλγορίθμων Θέλουμε να μπορούμε να υπολογίζουμε τον χρόνο εκτέλεσης ενός αλγορίθμου / και να τον βελτιώνουμε, προτού τον τρέξουμε σε κάποια μηχανή. Η σημερινή διάλεξη θα απαντήσει τις ερωτήσεις: Τι είναι η θεωρητική ανάλυση ενός αλγόριθμου; Ποια είναι τα κριτήρια ανάλυσης αλγορίθμων; Πως παριστάνουμε και υπολογίζουμε την απόδοση ενός αλγορίθμου με μαθηματικά εργαλεία; ΕΠΛ31 Δομές Δεδομένων και Αλγόριθμοι 5

6 Ανάλυση Αλγορίθμων Γιατί? Γιατί πρέπει να αναλύσουμε την πολυπλοκότητα ενός αλγορίθμου; Όταν ένα πρόγραμμα πρόκειται να επεξεργαστεί ένα μεγάλο όγκο δεδομένων, πρέπει να βεβαιωθούμε ότι θα τερματίσει σε αποδεκτά χρονικά πλαίσια. Αν ένας αλγόριθμος εύρεσης του πιο φθηνού εισιτηρίου σε ένα ηλεκτρονικό σύστημα αεροπορικών κρατήσεων θέλει μήνες για να εκτελεστεί, τότε το σύστημα δεν είναι χρήσιμο. Η θεωρητική ανάλυση, επιτρέπει σε ένα προγραμματιστή να υπολογίσει με την χρήση μαθηματικών εργαλείων τον αναμενόμενο χρόνο προτού κωδικοποιήσει το πρόγραμμα. Εάν ο αναμενόμενος χρόνος είναι πολύ μεγάλος, τότε θα σχεδιάσει κάποιο βελτιωμένο αλγόριθμο. ΕΠΛ31 Δομές Δεδομένων και Αλγόριθμοι 6

7 Εμπειρική Θεωρητική Ανάλυση Αλγορίθμων Ένας αλγόριθμος μπορεί να μελετηθεί: Εμπειρικά, μετρώντας το χρόνο και χώρο εκτέλεσής του σε συγκεκριμένο υπολογιστή. Μπορούμε να υλοποιήσουμε τον αλγόριθμο και να μετρήσουμε τον χρόνο με βιβλιοθήκες όπως την <tme.h> Θεωρητικά, μπορούμε να υπολογίσουμε το χρόνο και το χώρο που απαιτεί ο αλγόριθμος σαν συνάρτηση του μεγέθους των εξεταζομένων στιγμιότυπων. Τυπικά, μέγεθος ενός στιγμιότυπου αντιστοιχεί στο μέγεθος της μνήμης που απαιτείται για αποθήκευση του στιγμιότυπου στον υπολογιστή. Για απλούστευση της ανάλυσης θα μετρούμε το μέγεθος ως τον ακέραιο (ή τους ακέραιους) που αντιστοιχούν στο πλήθος των ποσοτήτων του στιγμιοτύπου. π.χ. Πρόβλημα: ταξινόμηση λίστας. Στιγμιότυπο: λίστα με στοιχεία. Μέγεθος: ΕΠΛ31 Δομές Δεδομένων και Αλγόριθμοι 7

8 Εμπειρική Θεωρητική Ανάλυση Αλγορίθμων Θεωρητική Ανάλυση Vs. Εμπειρική Ανάλυση Η θεωρητική ανάλυση: 1. δεν εξαρτάται από το υλικό του Η/Υ (μνήμη, cache, κλπ.). δεν εξαρτάται από τη γλώσσα προγραμματισμού ή το μεταφραστή 3. δεν εξαρτάται από τις ικανότητες του προγραμματιστή. 4. δεν απαιτεί την υλοποίηση του αλγόριθμου προτού την δοκιμή! 5. είναι ΓΕΝΙΚΗ ΕΠΛ31 Δομές Δεδομένων και Αλγόριθμοι 8

9 Θεωρητική Ανάλυση Αλγορίθμων Κάνουμε χρήση μιας υψηλού επιπέδου περιγραφής του αλγόριθμου και όχι της υλοποίησης του δηλαδή χρήση Ψευδοκώδικα. Θα χαρακτηρίσουμε τον χρόνο εκτέλεσης του αλγόριθμου σαν συνάρτηση του μεγέθους των δεδομένων, N Η ανάλυση μας θα λάβει υπόψη όλες τις δυνατές εισόδους. π.χ. βρείτε τον αριθμό 5 σε ένα πίνακα ακέραιων. - Στην καλύτερη περίπτωση: το βρίσκουμε στην πρώτη θέση - Στην χειρότερη περίπτωση: δεν τον βρίσκουμε καθόλου Επομένως, ένας αλγόριθμος μπορεί να εκτελείται γρηγορότερα σε συγκεκριμένα σύνολα δεδομένων από ότι σε κάποια άλλα. Η εύρεση της μέσης περίπτωσης είναι συνήθως δύσκολη, για αυτό οι αλγόριθμοι μετριούνται με βάση την χειρότερη περίπτωση. Σε συγκεκριμένα πεδία (ar traffc cotrol, συστήματα πραγματικού χρόνου, κτλ), η γνώση της χειρότερης περίπτωσης είναι πολύ σημαντική ΕΠΛ31 Δομές Δεδομένων και Αλγόριθμοι 9

10 Παράδειγμα Ανάλυσης 1 Υποθέστε ότι θέλετε να βρείτε το μεγαλύτερο στοιχείο σε μια λίστα θετικών ακεραίων. t largest( t X[], t ){ } t curret, ; whle ( < ){ } f ( X[] > curret){ } curret X[]; // σημείωσε τον μεγαλύτερο 1; retur curret; Μέγεθος δεδομένων εισόδου: Στόχος: υπολογισμός του αριθμού βασικών πράξεων Χειρότερη Περίπτωση: εξέταση όλων των στοιχείων t() Βέλτιστη Περίπτωση: εξέταση όλων των στοιχείων t() ΕΠΛ31 Δομές Δεδομένων και Αλγόριθμοι 1

11 Παράδειγμα Ανάλυσης Αν ήταν ταξινομημένη η λίστα (σε αύξουσα σειρά) τότε το μεγαλύτερο στοιχείο μπορεί να βρεθεί σε σταθερό χρόνο (δηλαδή πάντα το τελευταίο στοιχείο). t largest( t X[], t ){ f (<) retur -1; // error; retur X[-1]; } Μέγεθος δεδομένων εισόδου: Χειρότερη Περίπτωση: εξέταση τελευταίου στοιχείου t() 1 Βέλτιστη Περίπτωση: εξέταση τελευταίου στοιχείου t() 1 ΕΠΛ31 Δομές Δεδομένων και Αλγόριθμοι 11

12 Μονάδα Σύγκρισης της Αποδοτικότητας Η αρχή της σταθερότητας Δύο διαφορετικές υλοποιήσεις του ίδιου αλγορίθμου (σε διαφορετικές μηχανές ή σε διαφορετικές γλώσσες ή από διαφορετικούς προγραμματιστές) δεν διαφέρουν στο χρόνο εκτέλεσής τους περισσότερο από κάποιο σταθερό πολλαπλάσιο. δηλ. αν E 1 είναι o χρόνος εκτέλεσης της μίας υλοποίησης και E της άλλης, τότε ισχύει E 1 c E για κάποια σταθερά c. Για παράδειγμα έχουμε ένα πρόγραμμα το οποίο ταξινομεί ένα πίνακα μεγέθους Ν, στον υπολογιστή PC του σπιτιού μας σε χρόνο Ε1 και σε ένα ΙΒΜ Βlue Gee σε χρόνο Ε. Παρατηρούμε ότι ισχύει : Ε1 1,, * Ε Η σταθερά c1,, δεν εξαρτάται από το Ν αλλά από το περιβάλλον εκτέλεσης (μεταγλωττιστής, υλικό, λειτουργικό σύστημα, κτλ). Επομένως εάν αυξηθεί το Ν, τότε και πάλι θα εκτελείται 1,, πιο αργά στο PC μας ΕΠΛ31 Δομές Δεδομένων και Αλγόριθμοι 1

13 Σύγκριση Πολυπλοκότητας Αλγορίθμων Για την αξιολόγηση των διαφόρων αλγορίθμων χρησιμοποιούνται διάφορα μεγέθη. : μέγεθος του προβλήματος T(): Ο χρόνος εκτέλεσης T() Σύγκριση Πολυπλοκοτήτων t() Περιγραφή 1 (ένα) Σταθερός (costat) 3 c, log Γραμμικός (lear) Πολυωνυμικός (polyomal) Τετραγωνικός δευτεροβάθμιος (quadratc), π.χ., Shortest Path Djstra Κυβικός - τριτοβάθμιος (cubc), π.χ., All- Par-Shortest Path Floyd-Warshall Εκθετικός (expoetal) Λογαριθμικός (logarthmc) O(lg ) O() O( ) O( 3 ) O( ) ΕΠΛ31 Δομές Δεδομένων και Αλγόριθμοι 13

14 Ρυθμός Αύξησης μιας Συνάρτησης Ο ρυθμός αύξησης μιας συνάρτησης είναι σημαντικός όταν ο αριθμός των δεδομένων εισόδου N, είναι σημαντικά μεγάλος. Για 4 16 και 16 Για 1 1.6*1 3 και 1, Itel 9-895HK ~ 1 1 Istructos / secod (basc operatos) Θα ήθελε ~ αιώνες να τελειώσει για 1 Εάν ένας αλγόριθμος εκτελείται σε και μια άλλη έκδοση πράξεις τότε για μικρές τιμές θα έχουν παρόμοιο χρόνο εκτέλεσης. Για μεγάλες τιμές αυτό βέβαια δεν ισχύει! ΕΠΛ31 Δομές Δεδομένων και Αλγόριθμοι 14

15 Ρυθμός Αύξησης μιας Συνάρτησης (συν.) ΕΠΛ31 Δομές Δεδομένων και Αλγόριθμοι 15 O() Log 1.6 secod.7 secod.8 secod.9 secod.1 secod.15 secod.18 secod.6 secod.1 Secod.18 secod.3 secod.6 secod.3 secod.6 secod.6 secod.4 secod.54 secod.15 secod.6 secod 1.6 secods 6. secods 3.6 secod.48 secod.16 secod.75 secod 6. secods 1.5 mutes 1.66 ΩΡΕΣ 4.6 secod.96 secod 4.86 secod 37.5 secod 1. mutes 4.34 ΗΜΕΡΕΣ.3 ΜΗΝΕΣ 5.6 secod 19. secods.43 mutes 31.5 mutes ΩΡΕΣ 6. ΧΡΟΝΙΑ ΑΙΩΝΕΣ.5 secod 5. secods 1.5 ΩΡΕΣ ΑΙΩΝΕΣ ΑΙΩΝΕΣ ΧΙΛ/ΔΕΣ ΑΙΩΝΕΣ ΧΙΛ/ΔΕΣ ΑΙΩΝΕΣ 3.3 secod 4.8 ΩΡΕΣ 3.1 ΧΡΟΝΙΑ ΧΙΛ/ΔΕΣ ΑΙΩΝΕΣ ΧΙΛ/ΔΕΣ ΑΙΩΝΕΣ ΗΛΙΚΙΑ ΓΗΣ ΗΛΙΚΙΑ ΓΑΛΑΞΙΑ!.36 mutes 1.5 ΩΡΕΣ ΑΙΩΝΕΣ ΧΙΛ/ΔΕΣ ΑΙΩΝΕΣ ΗΛΙΚΙΑ ΗΛΙΟΥ ΗΛΙΚΙΑ ΓΑΛΑΞΙΑ Μέγεθος Προβ/τος Προβλήματα Μικρού Μεγέθους Προβλήματα Μεσαίου Μεγέθους Προβλήματα Μεγάλου Μεγέθους

16 Εκθετικοί Αλγόριθμοι Number of partcles the Observable Uverse (quars, electros, ): ~3.8 x 1 8 Εκθετικοί αλγόριθμοι ΌΧΙ, No, Ne,,,לא Khôg, 没有, нет as much as possble ΕΠΛ31 Δομές Δεδομένων και Αλγόριθμοι 16

17 Σύγκριση Πολυπλοκότητας Αλγορίθμων Μόνο για πολύ μικρά Ν Προσπαθούμε να τους αποφεύγουμε log-log plot 51T Ο στόχος μας τις περισσότερες φορές 64T 8T 4T T T logarthmc costat Ιδανικοί! 1K K 4K 8K 51K sze Typcal orders of growth ΕΠΛ31 Δομές Δεδομένων και Αλγόριθμοι 17

18 Ρυθμός Αύξησης μιας Συνάρτησης (συν.) Σημειώστε ότι η τιμή μιας συνάρτηση, καθορίζεται κυρίως από τον μεγαλύτερο όρο για μεγάλες τιμές του. Π.χ. Ένας αλγόριθμος μας θέλει f() χρόνο για να ολοκληρώσει: f() 1* 3 4* 8 Για 1 f() 1,1,4,8 Χρησιμοποιώντας μόνο τον πιο μεγάλο όρο 1* 3 1,,, θα μπορούσαμε να υπολογίσουμε τον χρόνο εκτέλεσης του προγράμματος με 99.99% ακρίβεια! Επομένως τα 4* 8 είναι αχρείαστα στην ανάλυση μας ΕΠΛ31 Δομές Δεδομένων και Αλγόριθμοι 18

19 Τυπικός κώδικας για ρυθμούς αύξησης *Slde from: Sedgewc ΕΠΛ31 Δομές Δεδομένων και Αλγόριθμοι 19

20 Προβλήματα που μπορούμε να λύσουμε *Slde from: Sedgewc ΕΠΛ31 Δομές Δεδομένων και Αλγόριθμοι Χρειαζόμαστε αλγόριθμους log N ή N log N για να μπορέσουμε να ακολουθήσουμε το νόμο του Moore

21 Μοντέλο Υπολογισμού της ανάλυσης μας Υπολογιστής που εκτελεί οδηγίες διαδοχικά (όχι παράλληλες μηχανές). Βασική πράξη θεωρούμε ότι είναι οποιαδήποτε πράξη της οποίας ο χρόνος εκτέλεσης είναι φραγμένος από κάποια σταθερά (δηλ. c, για κάποια σταθερά c). Π.χ., μαθηματικές πράξεις (πρόσθεση, αφαίρεση ), σύγκριση, καταχώρηση μεταβλητής, επιστροφή αποτελέσματος. Συνεπώς ο χρόνος εκτέλεσης μιας βασικής πράξης μπορεί να προσδιοριστεί ανεξάρτητα από το στιγμιότυπο (πχ 13 ή 13 θέλουν τον ίδιο ακριβώς χρόνο εκτέλεσης). Επειδή ορίζουμε το χρόνο εκτέλεσης ενός αλγορίθμου με την έννοια του σταθερού πολλαπλασίου c, για την ανάλυση θα χρειαστούμε μόνο τον αριθμό των βασικών πράξεων που εκτελούνται από ένα αλγόριθμο και όχι τον ακριβή χρόνο που απαιτούν η κάθε μια. Άρα για τον υπολογισμό του χρόνου εκτέλεσης ενός αλγόριθμου απλά μετρούμε τον αριθμό των βασικών πράξεων που εκτελεί. ΕΠΛ31 Δομές Δεδομένων και Αλγόριθμοι 1

22 Ασυμπτωτική Προσέγγιση: Bg-O Μας επιτρέπει να υπολογίσουμε τον ρυθμό αύξησης μιας συνάρτησης χωρίς να ανησυχούμε για: a) σταθερά πολλαπλάσια (c) ή b) για μικρότερους όρους, οι οποίοι έτσι και αλλιώς δεν επηρεάζουν τον χρόνο εκτέλεσης ενός προγράμματος. Επομένως δεν έχουμε να ανησυχούμε για το υλικό, μεταγλωττιστή, κτλ. με τα οποία θα εκτελεστεί ο αλγόριθμος μας. Η προσέγγιση Bg-O, μας επιτρέπει να ορίσουμε μια σχετική σειρά στις συναρτήσεις συγκρίνοντας τους επικρατέστερους όρους. π.χ. ένας αλγόριθμος θέλει f() πράξεις ενώ ένας άλλος θέλει g() 3 πράξεις τότε ξέρουμε ότι o πρώτος εκτελείται πιο γρήγορα για μεγάλες τιμές του ΕΠΛ31 Δομές Δεδομένων και Αλγόριθμοι

23 ΕΠΛ31 Δομές Δεδομένων και Αλγόριθμοι 3 Εργαλεία Εκτίμησης Πολυπλοκότητας Ορισμός: Θεωρούμε συνάρτηση Τ(). Ορίζουμε f()μπορεί να είναι οποιαδήποτε συνάρτηση >,, log 1. Τ() Ο( f () ), αν υπάρχουν σταθερές c> και 1 ώστε Τ() cf(), για κάθε.. Τ() Ω( f() ), αν υπάρχουν σταθερές c> και 1 ώστε Τ()cf(), για κάθε. 3. Τ() Θ( f() ), αν Τ()Ο(f()) και Τ()Ω(f()). Αν Τ()Ο(f ()), τότε λέμε πως η συνάρτηση Τ είναι της τάξεως f(). Αν Τ() Ω(f ()), τότε λέμε πως η Τ είναι της τάξεως ωμέγα της f (). Αν Τ() Θ(f ()), τότε λέμε πως η Τ είναι της τάξεως θήτα της f (). (λέγεται και ακριβής τάξη)

24 Γραφική Απεικόνιση Βg-O ΕΠΛ31 Δομές Δεδομένων και Αλγόριθμοι 4 1 H συνάρτηση f(x) είναι O(g(x)) Δηλαδή υπάρχουν σταθερές c> και 1 ώστε: f() cg(), για κάθε. H συνάρτηση x x1 είναι Ο(x )

25 Γραφική Απεικόνιση Βg-Ω και Bg-Θ ΕΠΛ31 Δομές Δεδομένων και Αλγόριθμοι 5 H συνάρτηση f() ε Ω(g()) Δηλαδή υπάρχουν σταθερές c> και 1 ώστε: f()cg(), για κάθε. H συνάρτηση f() ε Θ(g()) Δηλαδή υπάρχουν σταθερές c >,c > και 1 ώστε: c.g() f() c.g(), για κάθε.

26 Παραδείγματα Βg-O Παράδειγμα είναι Ο() Τεκμηρίωση Πρέπει να δείξουμε ότι υπάρχει c>, o 1 έτσι ώστε: 7-3 c*, Για c7, o 1 η παραπάνω ανισότητα ικανοποιείται, επομένως 7-3 είναι Ο() π.χ., 7*1-3 7*1 (4 7) 7*-3 7* (11 14) 7*3-3 7*3 (18 1) κοκ ΕΠΛ31 Δομές Δεδομένων και Αλγόριθμοι 6

27 Παραδείγματα Βg-O Παράδειγμα 3 1log5 είναι Ο( 3 ) ΕΠΛ31 Δομές Δεδομένων και Αλγόριθμοι 7 Τεκμηρίωση Πρέπει να δείξουμε ότι υπάρχει c>, o 1 έτσι ώστε 3 1log5 c* 3 3 1log (>1) Για c35, o 1 η παραπάνω ανισότητα ικανοποιείται, επομένως 3 1log5 είναι Ο( 3 )

28 Ιδιότητες Bg-O Στις περισσότερες περιπτώσεις μας ενδιαφέρει μόνο το άνω φράγμα (χείριστη περίπτωση εκτέλεσης ενός αλγορίθμου), δηλαδή το O. Η συνάρτηση O έχει τις ακόλουθες ιδιότητες: 1. O(XY) O(X) O(Y) max (O(X),O(Y)). O(X*Y) O(X)*O(Y) O(X * Y) 3. O(c * X) O(X) (c σταθερά > ) Ισχύει η ακόλουθη σειρά 1< log< < log< < 3 < <!< < είναι ασυμπτωτικά μικρότερο Παράδειγμα Έστω ότι ένας αλγόριθμος έχει την ακόλουθη συνάρτηση αύξησης f() 16 log 3 7 Τότε απλοποιούμε την συνάρτηση αύξησης ως εξής 16 log (διαγράφουμε τις μικρότερες τιμές του Κανόνας 1) log (διαγράφουμε τις σταθερές Κανόνας 3) δηλαδή f() Ο( log) ΕΠΛ31 Δομές Δεδομένων και Αλγόριθμοι 8

29 ΕΠΛ31 Δομές Δεδομένων και Αλγόριθμοι 9 Παραδείγματα Ιδιοτήτων Bg-O Παραδείγματα: 15 3 Ο() *( 7 ) Ο( 7 ) 134 Ο(1) ( 7 )*m Ο( 7 m ) 5 O( ) 5lg 4 Ο(lg) Προφανώς, κατά την ανάλυση αλγορίθμων στόχος μας είναι αυτά τα όρια να είναι όσο το δυνατό πιο ακριβή. Εάν 7-4 είναι Ο(), τότε προφανώς 7-4 είναι Ο( ), Ο( 3 ), Ο( 4 ),. Ωστόσο, οι χαρακτηρισμοί bg-o πρέπει να είναι όσο το δυνατό πιο μικρής τάξης. (δηλαδή το Ο() είναι το πιο στενό άνω όριο).

30 ΕΠΛ31 Δομές Δεδομένων και Αλγόριθμοι 3 Ασυμπτωματική Ανάλυση Ασυμπτωματικά Μικρότερο (Asymptotcally Smaller) < σημαίνει: είναι ασυμπτωματικά μικρότερο. Έστω ότι q() και p(), δυο μη-αρνητικές συναρτήσεις. q( ) Το q() < p(), εάν ισχύει: lm - p( ) To p() ασυμπτωματικά επικρατεί (domates) το q(). Παράδειγμα 1: Αποδείξτε ότι ισχύει 17< 3 6 lm

31 Κανόνες L Hobtal ΕΠΛ31 Δομές Δεδομένων και Αλγόριθμοι 31

32 ΕΠΛ31 Δομές Δεδομένων και Αλγόριθμοι 3 Ασυμπτωματική Ανάλυση (συν.) Παράδειγμα : Αποδείξτε ότι ισχύει < e lm - e e Με χρήση κανόνων de L'Hôptal e Παράδειγμα 3: Αποδείξτε ότι ισχύει l < (llog e ) 1 l 1 lm 1 - Με χρήση κανόνων de L'Hôptal

33 ΕΠΛ31 Δομές Δεδομένων και Αλγόριθμοι 33 Παράδειγμα Ανάλυσης Υποθέστε ότι θέλετε να βρείτε την θέση κάποιου στοιχείου K σε μια λίστα Χ[] (μήκους ). t dex( t X[],t,t ){ 1 t ; whle ( < ) { 3 f (X[]) // tem foud 4 retur ; 5 1; } 6 retur error; } Μέγεθος δεδομένων εισόδου: Χειρότερη Περίπτωση: εξέταση όλων των στοιχείων (π.χ. ψάχνουμε το 5) t() > O() Βέλτιστη Περίπτωση: το στοιχείο βρίσκετε στην θέση 1 (π.χ. ψάχνουμε το 3) t() 1 > Ω(1) Άρα εκτός από το μέγεθος εισόδου και το ίδιο το στιγμιότυπο εισόδου παίζει κάποιο σημαντικό ρόλο στην ανάλυση κάποιου αλγορίθμου (ή συνάρτησης) Χ 7? > θέση

34 Ανάλυση Χειρίστης Περίπτωσης Στις περισσότερες περιπτώσεις, μας ενδιαφέρει η ανάλυση χείριστης περίπτωσης, επειδή μας δίδει ένα άνω φράγμα στον χρόνο εκτέλεσης ενός αλγόριθμου. Αν D είναι το σύνολο όλων των εισόδων (στιγμιότυπων*) μεγέθους, και t(i) ο αριθμός βασικών πράξεων που εκτελούνται από τον αλγόριθμο για κάθε ID τότε ορίζουμε την : Πολυπλοκότητα Χειρίστης Περίπτωσης: W() max {t(i) I D } Δηλαδή, ο ορισμός δίνει ένα άνω φράγμα (upper boud) της πολυπλοκότητας του αλγορίθμου. * D { {3,1,7,,9,5}, {1,3,7,,9,5},., (6!7 διατάξεις) } ΕΠΛ31 Δομές Δεδομένων και Αλγόριθμοι 34

35 Ανάλυση Μέσης Περίπτωσης Υποθέτουμε πως μπορούμε να αντιστοιχίσουμε μια πιθανότητα p(i) σε κάθε είσοδο ID. Ορίζουμε την πολυπλοκότητα Μέσης Περίπτωσης ως A σ D p(i). t(i) Παράδειγμα: Ψάχνουμε το 3 σε μια λίστα (6 αριθμών) To 3 μπορεί να βρίσκεται σε μια από τις πιο κάτω θέσεις: Ι 1 {3,x,x,x,x,x} Ι {x,3,x,x,x,x} Ι 3 {x,x,3,x,x,x} Ι 4 {x,x,x,3,x,x} Ι 5 {x,x,x,x,3,x} Ι 6 {x,x,x,x,x,3} Υποθέτουμε ότι και οι 6 καταστάσεις έχουν πιθανότητα εμφάνισης p(i)1/ Πολυπλοκότητα Μέσης Περίπτωσης 1/ * (1 πράξη) 1/ * ( πράξεις) 1/ * (3 πράξεις) 1/ * (4 πράξεις) 1/ * (5 πράξεις) 1/ * (6 πράξεις) A 1 σ D 1 ((1) ) 1 t(i): αριθ. βασικών πράξεων p(i): Πιθανότητα εμφάνισης στιγμιοτύπου ΕΠΛ31 Δομές Δεδομένων και Αλγόριθμοι 35

36 ΕΠΛ31 Δομές Δεδομένων και Αλγόριθμοι 36 Παράδειγμα 1: Υπολογισμός Χρόνου Εκτέλεσης Υποθέστε ότι ένα πρόβλημα επιλύνεται με τον πιο κάτω κώδικα: t ; for (; <; ) ; // Ανάλυση ; // H βασική πράξη η οποία χρειάζεται Ο(1) χρόνο Ο αλγόριθμος εκτελεί την βασική πράξη φορές 1 O αλγόριθμος έχει πολυπλοκότητα της τάξης O() Στην βέλτιστη περίπτωση χρειάζεται Ω() > O() & Ω() > Θ()

37 ΕΠΛ31 Δομές Δεδομένων και Αλγόριθμοι 37 Επανάληψη Χρήσιμων Μαθηματικών Ορισμών Ορισμός 1: log x a b ff x b a Χρήσιμοι νόμοι λογάριθμων: log ab log a log b log a b b. log a log ab log a log b log a b (log c b) (log c a) b log b x x log a a 1 log (log ) log * log log log log xlog log 1 (commo), log e (l - atural), log (lg - bary) π.χ., log 1 log 1 log δεν ορίζεται Ορισμός : π.χ., x max{ a a x,t( a)} x m{ a a x,t( a)} (floor) (celg) 5.7 6,

38 Ακολουθίες και Αθροίσματα ΕΠΛ31 Δομές Δεδομένων και Αλγόριθμοι * log 1 log log Το οποίο προκύπτει αλλιώς ως: Άθροισμα Γεωμετρικής Προόδου /4 / ) 1)( ( 1) ( log a a a

39 Μαθηματική Επαγωγή Στόχος Να αποδειχθεί ότι η (μαθηματική) πρόταση Π() ισχύει για κάθε. Μέθοδος 1. Επαληθεύουμε πως η Π ισχύει για,. Υποθέτουμε πως η Π ισχύει για και 3. Αποδεικνύουμε πως η Π ισχύει για 1. Παραλλαγές Αντί του, σε ορισμένες περιπτώσεις ενδιαφερόμαστε για a, όπου το a είναι κάποιος ακέραιος. Στο δεύτερο βήμα: Υποθέτουμε πως η Π ισχύει για και αποδεικνύουμε πως η Π ισχύει για 1. ΕΠΛ31 Δομές Δεδομένων και Αλγόριθμοι 39

40 ΕΠΛ31 Δομές Δεδομένων και Αλγόριθμοι 4 Λογική πίσω από την Μαθηματική Επαγωγή Έστω ότι κάποιος ισχυρίζεται ότι ο ακόλουθος τύπος ισχύει πάντα Καλούμαστε να αποδείξουμε (δηλαδή να δείξουμε ότι για κάθε τιμή του Χ ισχύει) η να το διαψεύσουμε (ότι δηλ., υπάρχει κάποια τιμή του που κάνει αναληθή τον ισχυρισμό. Δοκιμή για 1 : (1*)/ 1 το οποίο είναι το ίδιο με το 1! Δοκιμή για : (*3)/ 3 το οποίο είναι το ίδιο με το 1! Δοκιμή για 3 : (3*4)/ 6 το οποίο είναι το ίδιο με το 13! Δοκιμή για 4 : (4*5)/ 1 το οποίο είναι το ίδιο με το 134!. ( 1) Ας υποθέσουμε ότι ισχύει και για Μπορούμε να δείξουμε ότι ισχύει και για 1 με βάσει την προηγούμενη υπόθεση; Εάν ναι τότε το έχουμε αποδείξει. Εάν όχι τότε δεν το έχουμε διαψεύσει, απλά δεν έχουμε βρει την απάντηση!

41 ΕΠΛ31 Δομές Δεδομένων και Αλγόριθμοι 41 Παράδειγμα 1 Τυπική Απόδειξη Να αποδείξετε ότι. Απόδειξη: Θα αποδείξουμε με τη μέθοδο της μαθηματικής επαγωγής την πρόταση Π() ( 1) ( 1) 1. Επαληθεύουμε την Π() ως εξής: ( 1). Υποθέτουμε ότι ισχύει η Π(), δηλαδή ότι ( 1) 3. Και θα αποδείξουμε ότι ισχύει η Π(1): Επαγωγική υπόθεση 1 ( 1) ( 1) ( ( 1) 1) ( ( 1) 1)( )

42 Παράδειγμα Τυπική Απόδειξη Να αποδείξετε ότι Απόδειξη: Θα αποδείξουμε με τη μέθοδο της μαθηματικής επαγωγής την πρόταση Π() 1. Επαληθεύουμε την Π() ως εξής:. Υποθέτουμε ότι ισχύει η Π(), δηλαδή ότι 3. Και θα αποδείξουμε ότι ισχύει η Π(1): ΕΠΛ31 Δομές Δεδομένων και Αλγόριθμοι ( 1) 3 4 ( 1) 4 1) ( ( 1) 4 1) 1) (( 1) ( 4 ) ( 1) ( 4 4) 4 ( 1) ( 4 1)) ( 4 ( 1) ( 4 1)) ( 4 ( 1) ( 4 1) ( 4 1) ( 1) ( 4 1) ( 1) ( ) 1) (( 1) ( 1 3

43 ΕΠΛ31 Δομές Δεδομένων και Αλγόριθμοι 43 Παράδειγμα 3 Τυπική Απόδειξη Να αποδείξετε ότι για >7. Απόδειξη: 3! Θα αποδείξουμε με τη μέθοδο της μαθηματικής επαγωγής την πρόταση Π() 3! για > ! 1. Επαληθεύουμε την Π(7) ως εξής:. 54. Υποθέτουμε ότι ισχύει η Π(), δηλαδή ότι 3!. 3. Και θα αποδείξουμε ότι ισχύει η Π(1): 3 1 ( 1)! ! ( 1).! ( 1)! [Επαγωγική υπόθεση] [Για >7 ισχύει πάντα (1>3)] [Το οποίο είναι το ζητούμενο]

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

Διδάσκων: Κωνσταντίνος Κώστα Διαφάνειες: Δημήτρης Ζεϊναλιπούρ Διάλεξη - Πολυπλοκότητα Αλγορίθμων / Επανάληψη Χρήσιμων Μαθηματικών Ορισμών Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Αλγόριθμοι, Κριτήρια Αξιολόγησης Αλγόριθμων, Γιατί αναλύουμε τους Αλγορίθμων

Διαβάστε περισσότερα

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

Διδάσκων: Παναγιώτης Ανδρέου Διάλεξη -5: -Πολυπλοκότητα Αλγορίθμων / Επανάληψη Χρήσιμων Μαθηματικών Ορισμών Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: -Αλγόριθμοι, Κριτήρια Αξιολόγησης Αλγόριθμων, Γιατί αναλύουμε τους

Διαβάστε περισσότερα

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

Διδάσκων: Παναγιώτης Ανδρέου Διάλεξη 3: -Πολυπλοκότητα Αλγορίθμων / Επανάληψη Χρήσιμων Μαθηματικών Ορισμών Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: -Αλγόριθμοι, Κριτήρια Αξιολόγησης Αλγόριθμων, Γιατί αναλύουμε τους

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

Αλγόριθµοι και Πολυπλοκότητα Αλγόριθµοι και Πολυπλοκότητα Στην ενότητα αυτή θα µελετηθούν τα εξής θέµατα: Πρόβληµα, Στιγµιότυπο, Αλγόριθµος Εργαλεία εκτίµησης πολυπλοκότητας: οι τάξεις Ο(), Ω(), Θ( ) Ανάλυση Πολυπλοκότητας Αλγορίθµων

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

Κεφάλαιο 5 Ανάλυση Αλγορίθμων Κεφάλαιο 5 Ανάλυση Αλγορίθμων 5.1 Επίδοση αλγορίθμων Τα πρωταρχικά ερωτήματα που προκύπτουν είναι: 1. πώς υπολογίζεται ο χρόνος εκτέλεσης ενός αλγορίθμου; 2. πώς μπορούν να συγκριθούν μεταξύ τους οι διάφοροι

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

Α Ν Α Λ Τ Η Α Λ Γ Ο Ρ Ι Θ Μ Ω Ν Κ Ε Υ Α Λ Α Ι Ο 5. Πως υπολογίζεται ο χρόνος εκτέλεσης ενός αλγορίθμου; 5.1 Επίδοση αλγορίθμων Μέχρι τώρα έχουμε γνωρίσει διάφορους αλγόριθμους (αναζήτησης, ταξινόμησης, κ.α.). Στο σημείο αυτό θα παρουσιάσουμε ένα τρόπο εκτίμησης της επίδοσης (performance) η της αποδοτικότητας

Διαβάστε περισσότερα

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

Αλγόριθµοι και Πολυπλοκότητα Αλγόριθµοι και Πολυπλοκότητα Στην ενότητα αυτή θα µελετηθούν τα εξής θέµατα: Πρόβληµα, Στιγµιότυπο, Αλγόριθµος Εργαλεία εκτίµησης πολυπλοκότητας: οι τάξεις Ο(n), Ω(n), Θ(n) Ανάλυση Πολυπλοκότητας Αλγορίθµων

Διαβάστε περισσότερα

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

Αλγόριθμοι και Πολυπλοκότητα Αλγόριθμοι και Πολυπλοκότητα Ανάλυση Αλγορίθμων Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ανάλυση Αλγορίθμων Η ανάλυση αλγορίθμων περιλαμβάνει τη διερεύνηση του τρόπου

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

Διδάσκων: Παναγιώτης Ανδρέου Διάλεξη 04: ΠαραδείγματαΑνάλυσης Πολυπλοκότητας/Ανάλυση Αναδρομικών Αλγόριθμων Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: -Παραδείγματα Ανάλυσης Πολυπλοκότητας : Μέθοδοι, παραδείγματα -Γραμμική

Διαβάστε περισσότερα

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

Κατ οίκον Εργασία 1 Σκελετοί Λύσεων ΕΠΛ 1 Δομές Δεδομένων και Αλγόριθμοι Σεπτέμβριος 009 Κατ οίκον Εργασία 1 Σκελετοί Λύσεων Άσκηση 1 Αρχικά θα πρέπει να υπολογίσουμε τον αριθμό των πράξεων που μπορεί να εκτελέσει ο υπολογιστής σε μια ώρα,

Διαβάστε περισσότερα

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

Δομές Δεδομένων και Αλγόριθμοι Δομές Δεδομένων και Αλγόριθμοι Χρήστος Γκόγκος ΤΕΙ Ηπείρου, Τμήμα Μηχανικών Πληροφορικής ΤΕ Χειμερινό Εξάμηνο 2014-2015 (Παρουσίαση 6) 1 / 20 Ρυθμοί αύξησης Γραμμικός ρυθμός αύξησης: n, 2n, Πολυωνυμικός

Διαβάστε περισσότερα

Διάλεξη 17: Επανάληψη για την ενδιάμεση εξέταση. Διδάσκων: Παναγιώτης Ανδρέου. ΕΠΛ035 Δομές Δεδομένων και Αλγόριθμοι για Ηλ. Μηχ. Και Μηχ. Υπολ.

Διάλεξη 17: Επανάληψη για την ενδιάμεση εξέταση. Διδάσκων: Παναγιώτης Ανδρέου. ΕΠΛ035 Δομές Δεδομένων και Αλγόριθμοι για Ηλ. Μηχ. Και Μηχ. Υπολ. Διάλεξη 7: Επανάληψη για την ενδιάμεση εξέταση Διδάσκων: Παναγιώτης Ανδρέου ΕΠΛ35 Δομές Δεδομένων και Αλγόριθμοι για Ηλ. Μηχ. Και Μηχ. Υπολ. ΑΠΟΡΙΕΣ ΕΠΛ35 Δομές Δεδομένων και Αλγόριθμοι για Ηλ. Μηχ. Και

Διαβάστε περισσότερα

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

Διδάσκων: Παναγιώτης Ανδρέου ΕΠΛ231 Δομές Δεδομένων και Αλγόριθμοι Φροντιστήριο: Επανάληψη για την ενδιάμεση εξέταση Διδάσκων: Παναγιώτης Ανδρέου ΕΠΛ231 Δομές Δεδομένων και Αλγόριθμοι 1 Μαθηματική Επαγωγή Να αποδείξετε ότι 1 3 5... (2 1) 2 για >0. Απόδειξη: Επαληθεύουμε

Διαβάστε περισσότερα

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

Διδάσκων: Κωνσταντίνος Κώστα Διαφάνειες: Παναγιώτης Ανδρέου Διάλεξη Ε3: Επανάληψη Επανάληψη για την ενδιάμεση εξέταση Διδάσκων: Κωνσταντίνος Κώστα Διαφάνειες: Παναγιώτης Ανδρέου Ε3- Είναι ισοδύναμα; typedef struct ode { t data; struct ode *ext; NODE; A. NODE ;

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

Δομές Δεδομένων & Αλγόριθμοι

Δομές Δεδομένων & Αλγόριθμοι Θέματα Απόδοσης Αλγορίθμων 1 Η Ανάγκη για Δομές Δεδομένων Οι δομές δεδομένων οργανώνουν τα δεδομένα πιο αποδοτικά προγράμματα Πιο ισχυροί υπολογιστές πιο σύνθετες εφαρμογές Οι πιο σύνθετες εφαρμογές απαιτούν

Διαβάστε περισσότερα

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

Ορισµός. Εστω συναρτήσεις: 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

Διαβάστε περισσότερα

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

Δομές Δεδομένων (Data Structures) Δομές Δεδομένων (Data Structures) Ανάλυση - Απόδοση Αλγορίθμων Έλεγχος Αλγορίθμων. Απόδοση Προγραμμάτων. Χωρική/Χρονική Πολυπλοκότητα. Ασυμπτωτικός Συμβολισμός. Παραδείγματα. Αλγόριθμοι: Βασικές Έννοιες

Διαβάστε περισσότερα

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

Διδάσκων: Παναγιώτης Ανδρέου Διάλεξη 6: ΠαραδείγματαΑνάλυσης Πολυπλοκότητας/Ανάλυση Αναδρομικών Αλγόριθμων Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: -Παραδείγματα Ανάλυσης Πολυπλοκότητας : Μέθοδοι, παραδείγματα -Γραμμική

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

Πολυπλοκότητα Αλγορίθµων

Πολυπλοκότητα Αλγορίθµων Πολυπλοκότητα Αλγορίθµων Στην ενότητα αυτή θα µελετηθούν τα εξής επιµέρους θέµατα: Πρόβληµα, Στιγµιότυπο, Αλγόριθµος Εµπειρική Θεωρητική Ανάλυση Αλγορίθµων Εργαλεία εκτίµησης πολυπλοκότητας: οι τάξεις

Διαβάστε περισσότερα

Αλγόριθμοι. Μάρθα Σιδέρη. ιαδικαστικά: ύο πρόοδοι 31 Μαρτίου, 18 Μαΐου 7-9μμ 20% η μία, ύο Προγραμματιστικές 1 προσθετικό βαθμό η μία.

Αλγόριθμοι. Μάρθα Σιδέρη. ιαδικαστικά: ύο πρόοδοι 31 Μαρτίου, 18 Μαΐου 7-9μμ 20% η μία, ύο Προγραμματιστικές 1 προσθετικό βαθμό η μία. Αλγόριθμοι Μάρθα Σιδέρη epl333 lect 011 1 ιαδικαστικά: ύο πρόοδοι 31 Μαρτίου, 18 Μαΐου 7-9μμ 0% η μία, ύο Προγραμματιστικές 1 προσθετικό βαθμό η μία. Οι πρόοδοι είναι προαιρετικές και το ποσοστό μετράει

Διαβάστε περισσότερα

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

Δομές Δεδομένων Ενότητα 2 ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Ενότητα 2: Θέματα Απόδοσης Απόστολος Παπαδόπουλος Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons.

Διαβάστε περισσότερα

ΑΛΓΟΡΙΘΜΟΙ Άνοιξη I. ΜΗΛΗΣ

ΑΛΓΟΡΙΘΜΟΙ  Άνοιξη I. ΜΗΛΗΣ ΑΛΓΟΡΙΘΜΟΙ http://elss.ueb.gr/ourses/inf6/ Άνοιξη 6 - I. ΜΗΛΗΣ ΑΣΥΜΠΤΩΤΙΚΟΙ ΣΥΜΒΟΛΙΣΜΟΙ ΑΛΓΟΡΙΘΜΟΙ - ΑΝΟΙΞΗ 6 - Ι. ΜΗΛΗΣ - - ASYMPTOTICS Αλγόριθμοι Τρείς κρίσιμες ερωτήσεις για κάθε αλγόριθμο για ένα πρόβλημα:

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

Δοµές Δεδοµένων και Αλγόριθµοι - Εισαγωγή Δοµές Δεδοµένων και Αλγόριθµοι - Εισαγωγή Στην ενότητα αυτή θα µελετηθούν τα εξής επιµέρους θέµατα: Εισαγωγή στις έννοιες Αλγόριθµοι και Πολυπλοκότητα, Οργάνωση Δεδοµένων και Δοµές Δεδοµένων Χρήσιµοι µαθηµατικοί

Διαβάστε περισσότερα

ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ ΥΠΟΛΟΓΙΣΤΩΝ

ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ ΥΠΟΛΟΓΙΣΤΩΝ Εισαγωγή ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ ΥΠΟΛΟΓΙΣΤΩΝ Όπως για όλες τις επιστήμες, έτσι και για την επιστήμη της Πληροφορικής, ο τελικός στόχος της είναι η επίλυση προβλημάτων. Λύνονται όμως όλα τα προβλήματα;

Διαβάστε περισσότερα

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

Κατ οίκον Εργασία 1 Σκελετοί Λύσεων ΕΠΛ Δομές Δεδομένων και Αλγόριθμοι Σεπτέμβριος 00 Κατ οίκον Εργασία Σκελετοί Λύσεων Άσκηση Αφού ξέρουμε με ακρίβεια τον αριθμό των βασικών πράξεων που εκτελεί ο κάθε αλγόριθμος σε δεδομένα μεγέθους, θα

Διαβάστε περισσότερα

Υπολογιστικά & Διακριτά Μαθηματικά

Υπολογιστικά & Διακριτά Μαθηματικά Υπολογιστικά & Διακριτά Μαθηματικά Ενότητα 1: Εισαγωγή- Χαρακτηριστικά Παραδείγματα Αλγορίθμων Στεφανίδης Γεώργιος Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons.

Διαβάστε περισσότερα

Σχεδίαση και Ανάλυση Αλγορίθμων

Σχεδίαση και Ανάλυση Αλγορίθμων Σχεδίαση και Ανάλυση Αλγορίθμων Ενότητα 4.0 Επιλογή Αλγόριθμοι Επιλογής Select και Quick-Select Σταύρος Δ. Νικολόπουλος 2016-17 Τμήμα Μηχανικών Η/Υ & Πληροφορικής Πανεπιστήμιο Ιωαννίνων Webpage: www.cs.uoi.gr/~stavros

Διαβάστε περισσότερα

Αλγόριθμοι Ταξινόμησης Μέρος 4

Αλγόριθμοι Ταξινόμησης Μέρος 4 Αλγόριθμοι Ταξινόμησης Μέρος 4 Μανόλης Κουμπαράκης Δομές Δεδομένων και Τεχνικές 1 Μέθοδοι Ταξινόμησης Βασισμένοι σε Συγκρίσεις Κλειδιών Οι αλγόριθμοι ταξινόμησης που είδαμε μέχρι τώρα αποφασίζουν πώς να

Διαβάστε περισσότερα

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

Εισαγωγή στους Αλγόριθµους. Αλγόριθµοι. Ιστορικά Στοιχεία. Ο πρώτος Αλγόριθµος. Παραδείγµατα Αλγορίθµων. Τι είναι Αλγόριθµος Εισαγωγή στους Αλγόριθµους Αλγόριθµοι Τι είναι αλγόριθµος; Τι µπορεί να υπολογίσει ένας αλγόριθµος; Πως αξιολογείται ένας αλγόριθµος; Παύλος Εφραιµίδης pefraimi@ee.duth.gr Αλγόριθµοι Εισαγωγικές Έννοιες

Διαβάστε περισσότερα

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

ΑΣΥΜΠΤΩΤΙΚΗ ΑΝΑΛΥΣΗ & ΠΡΟΣΘΕΣΗ ΑΣΥΜΠΤΩΤΙΚΗ ΑΝΑΛΥΣΗ & ΠΡΟΣΘΕΣΗ Θέματα μελέτης Ορθότητα και απόδοση αλγορίθμων Παρουσίαση και ανάλυση αλγορίθμου για πρόσθεση Al Khwarizmi Αλγόριθμοι Το δεκαδικό σύστημα εφευρέθηκε στην Ινδία περίπου το

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

Εισαγωγή στους Αλγόριθμους. Παύλος Εφραιμίδης, Λέκτορας Εισαγωγή στους Αλγόριθμους Παύλος Εφραιμίδης, Λέκτορας http://pericles.ee.duth.gr 1 Περιεχόμενα Μαθήματος Εισαγωγή στου Αλγόριθμους Πολυπλοκότητα Αλγορίθμων Ασυμπτωτική Ανάλυση Θεωρία Γράφων Κλάσεις Πολυπλοκότητας

Διαβάστε περισσότερα

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

Κατ οίκον Εργασία 1 Σκελετοί Λύσεων ΕΠΛ Δομές Δεδομένων και Αλγόριθμοι Σεπτέμβριος 008 Κατ οίκον Εργασία Σκελετοί Λύσεων Άσκηση Παρατηρούμε ότι ο χρόνος εκτέλεσης μέσης περίπτωσης της κάθε εντολής if ξεχωριστά: if (c mod 0) for (k ; k

Διαβάστε περισσότερα

Σχεδίαση & Ανάλυση Αλγορίθμων

Σχεδίαση & Ανάλυση Αλγορίθμων Σχεδίαση & Ανάλυση Αλγορίθμων Ενότητα 3 Αλγόριθμοι Επιλογής Σταύρος Δ. Νικολόπουλος Τμήμα Μηχανικών Η/Υ & Πληροφορικής Πανεπιστήμιο Ιωαννίνων Webpage: www.cs.uoi.gr/~stavros Αλγόριθμοι Επιλογής Γνωρίζουμε

Διαβάστε περισσότερα

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ. ΘΕΩΡΗΤΙΚΗ ΑΣΚΗΣΗ 1 ΛΥΣΕΙΣ Ανάλυση Πολυπλοκότητας

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ. ΘΕΩΡΗΤΙΚΗ ΑΣΚΗΣΗ 1 ΛΥΣΕΙΣ Ανάλυση Πολυπλοκότητας ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΠΛ 231: Δομές Δεδομένων και Αλγόριθμοι ΘΕΩΡΗΤΙΚΗ ΑΣΚΗΣΗ 1 ΛΥΣΕΙΣ Ανάλυση Πολυπλοκότητας ΠΕΡΙΓΡΑΦΗ Σε αυτή την άσκηση καλείστε να αναλύσετε και να υπολογίσετε το

Διαβάστε περισσότερα

Ασκήσεις (2) Άσκηση 1

Ασκήσεις (2) Άσκηση 1 Άσκηση 1 Ασκήσεις () Εισαγωγή στην Ανάλυση Αλγορίθμων Υποθέστε ότι συγκρίνουμε την υλοποίηση της ταξινόμησης με εισαγωγή και της ταξινόμησης με συγχώνευση στον ίδιο υπολογιστή. Για εισόδους μεγέθους n,

Διαβάστε περισσότερα

Προβλήματα, αλγόριθμοι, ψευδοκώδικας

Προβλήματα, αλγόριθμοι, ψευδοκώδικας Προβλήματα, αλγόριθμοι, ψευδοκώδικας October 11, 2011 Στο μάθημα Αλγοριθμική και Δομές Δεδομένων θα ασχοληθούμε με ένα μέρος της διαδικασίας επίλυσης υπολογιστικών προβλημάτων. Συγκεκριμένα θα δούμε τι

Διαβάστε περισσότερα

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

Στοιχεία Αλγορίθµων και Πολυπλοκότητας Στοιχεία Αλγορίθµων και Πολυπλοκότητας Ορέστης Τελέλης telelis@unipi.gr Τµήµα Ψηφιακών Συστηµάτων, Πανεπιστήµιο Πειραιώς Ο. Τελέλης Πανεπιστήµιο Πειραιώς Πολυπλοκότητα 1 / 16 «Ζέσταµα» Να γράψετε τις συναρτήσεις

Διαβάστε περισσότερα

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

περιεχόμενα ρυθιμός αύξησης συναρτήσεων ασυμπτωτική πολυπλοκότητα ασυμπτωτική επίδοση ασυμπτωτικοί συμβολισμοί ασυμπτωτικός συμβολισμος ρυθμός αύξησης συναρτήσεων περιεχόμενα Ασυμπτωτικός συμβολισμός Καθιερωμένοι συμβολισμοί και συνήθεις συναρτήσεις Παύλος Εφραιμίδης 2 ασυμπτωτική πολυπλοκότητα ασυμπτωτική επίδοση Πολυπλοκότητα χειρότερης

Διαβάστε περισσότερα

Πανεπιστήμιο Ιωαννίνων Τμήμα Μηχανικών Η/Υ και Πληροφορικής Δομές Δεδομένων [ΠΛΥ302] Χειμερινό Εξάμηνο 2013

Πανεπιστήμιο Ιωαννίνων Τμήμα Μηχανικών Η/Υ και Πληροφορικής Δομές Δεδομένων [ΠΛΥ302] Χειμερινό Εξάμηνο 2013 Πανεπιστήμιο Ιωαννίνων Τμήμα Μηχανικών Η/Υ και Πληροφορικής Δομές Δεδομένων [ΠΛΥ302] Χειμερινό Εξάμηνο 2013 Λυμένες Ασκήσεις Σετ Α: Ανάλυση Αλγορίθμων Άσκηση 1 Πραγματοποιήσαμε μια σειρά μετρήσεων του

Διαβάστε περισσότερα

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

Υπολογιστικό Πρόβληµα Υπολογιστικό Πρόβληµα Μετασχηµατισµός δεδοµένων εισόδου σε δεδοµένα εξόδου. Δοµή δεδοµένων εισόδου (έγκυρο στιγµιότυπο). Δοµή και ιδιότητες δεδοµένων εξόδου (απάντηση ή λύση). Τυπικά: διµελής σχέση στις

Διαβάστε περισσότερα

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

Εισαγωγή στην Ανάλυση Αλγορίθμων Εισαγωγή στην Ανάλυση Αλγορίθμων (4) Μεθοδολογία αναδρομικών σχέσεων (Ι) Με επανάληψη της αναδρομής Έστω όπου r και a είναι σταθερές. Βρίσκουμε τη σχέση που εκφράζει την T(n) συναρτήσει της T(n-) την T(n)

Διαβάστε περισσότερα

ΜΕΓΙΣΤΙΚΟΣ ΤΕΛΕΣΤΗΣ 18 Σεπτεμβρίου 2014

ΜΕΓΙΣΤΙΚΟΣ ΤΕΛΕΣΤΗΣ 18 Σεπτεμβρίου 2014 ΜΕΓΙΣΤΙΚΟΣ ΤΕΛΕΣΤΗΣ 18 Σεπτεμβρίου 2014 Περιεχόμενα 1 Εισαγωγή 2 2 Μεγιστικός τελέστης στην μπάλα 2 2.1 Βασικό θεώρημα........................ 2 2.2 Γενική περίπτωση μπάλας.................. 6 2.2.1 Στο

Διαβάστε περισσότερα

Πανεπιστήμιο Ιωαννίνων Τμήμα Πληροφορικής Δομές Δεδομένων [ΠΛΥ302] Χειμερινό Εξάμηνο 2012

Πανεπιστήμιο Ιωαννίνων Τμήμα Πληροφορικής Δομές Δεδομένων [ΠΛΥ302] Χειμερινό Εξάμηνο 2012 Πανεπιστήμιο Ιωαννίνων Τμήμα Πληροφορικής Δομές Δεδομένων [ΠΛΥ302] Χειμερινό Εξάμηνο 2012 Ενδεικτικές απαντήσεις 1 ου σετ ασκήσεων. Άσκηση 1 Πραγματοποιήσαμε μια σειρά μετρήσεων του χρόνου εκτέλεσης τριών

Διαβάστε περισσότερα

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

Διάλεξη 17: O Αλγόριθμος Ταξινόμησης HeapSort Διάλεξη 17: O Αλγόριθμος Ταξινόμησης HeapSort Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Η διαδικασία PercolateDown, Δημιουργία Σωρού O Αλγόριθμος Ταξινόμησης HeapSort Υλοποίηση, Παραδείγματα

Διαβάστε περισσότερα

Ειδικά θέματα Αλγορίθμων και Δομών Δεδομένων (ΠΛΕ073) Απαντήσεις 1 ου Σετ Ασκήσεων

Ειδικά θέματα Αλγορίθμων και Δομών Δεδομένων (ΠΛΕ073) Απαντήσεις 1 ου Σετ Ασκήσεων Ειδικά θέματα Αλγορίθμων και Δομών Δεδομένων (ΠΛΕ073) Απαντήσεις 1 ου Σετ Ασκήσεων Άσκηση 1 α) Η δομή σταθμισμένης ένωσης με συμπίεση διαδρομής μπορεί να τροποποιηθεί πολύ εύκολα ώστε να υποστηρίζει τις

Διαβάστε περισσότερα

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

Εισαγωγή στην Ανάλυση Αλγορίθμων (2-3) Εισαγωγή στην Ανάλυση Αλγορίθμων (2-3) 3.1 Ασυμπτωτικός συμβολισμός (Ι) Οι ορισμοί που ακολουθούν μας επιτρέπουν να επιχειρηματολογούμε με ακρίβεια για την ασυμπτωτική συμπεριφορά. Οι f(n) και g(n) συμβολίζουν

Διαβάστε περισσότερα

Άσκηση 1 (ανακοινώθηκε στις 20 Μαρτίου 2017, προθεσμία παράδοσης: 24 Απριλίου 2017, 12 τα μεσάνυχτα).

Άσκηση 1 (ανακοινώθηκε στις 20 Μαρτίου 2017, προθεσμία παράδοσης: 24 Απριλίου 2017, 12 τα μεσάνυχτα). Κ08 Δομές Δεδομένων και Τεχνικές Προγραμματισμού Διδάσκων: Μανόλης Κουμπαράκης Εαρινό Εξάμηνο 2016-2017. Άσκηση 1 (ανακοινώθηκε στις 20 Μαρτίου 2017, προθεσμία παράδοσης: 24 Απριλίου 2017, 12 τα μεσάνυχτα).

Διαβάστε περισσότερα

Θεωρία Υπολογισμού και Πολυπλοκότητα Μαθηματικό Υπόβαθρο

Θεωρία Υπολογισμού και Πολυπλοκότητα Μαθηματικό Υπόβαθρο Θεωρία Υπολογισμού και Πολυπλοκότητα Μαθηματικό Υπόβαθρο Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Σύνολα Συναρτήσεις και Σχέσεις Γραφήματα Λέξεις και Γλώσσες Αποδείξεις ΕΠΛ 211 Θεωρία

Διαβάστε περισσότερα

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

Υπολογιστική Πολυπλοκότητα Υπολογιστική Πολυπλοκότητα Υπολογιστική πολυπλοκότητα αλγόριθµου Α: Ποσότητα υπολογιστικών πόρων που απαιτεί Α ως αύξουσα συνάρτηση µεγέθους στιγµιότυπου εισόδου. Χρόνος, µνήµη, επεξεργαστές, επικοινωνία,

Διαβάστε περισσότερα

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

οµές εδοµένων 3 ο Εξάµηνο Τµήµα Πανεπιστήµιο Πληροφορικής Ιωαννίνων ΟΜΕΣ Ε ΟΜΕΝΩΝ Τµήµα Πανεπιστήµιο Πληροφορικής Ιωαννίνων ΟΜΕΣ Ε ΟΜΕΝΩΝ ΕΝΟΤΗΤΑ 1 ΕΙΣΑΓΩΓΗ 1 εδοµένα Σύνολο από πληροφορίες που πρέπει να αποθηκευτούν σε έναν υπολογιστή Υπολογιστικό Μοντέλο ένας επεξεργαστής και µεγάλος

Διαβάστε περισσότερα

ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ

ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΑΝΑΠΤΥΞΗ ΚΑΙ ΣΧΕΔΙΑΣΗ ΛΟΓΙΣΜΙΚΟΥ Η γλώσσα προγραμματισμού C ΕΡΓΑΣΤΗΡΙΟ 2: Εκφράσεις, πίνακες και βρόχοι 14 Απριλίου 2016 Το σημερινό εργαστήριο

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

Διαδικασιακός Προγραμματισμός Τμήμα ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΕ ΤΕΙ ΔΥΤΙΚΗΣ ΕΛΛΑΔΑΣ Διαδικασιακός Προγραμματισμός Διάλεξη 12 η Αναζήτηση/Ταξινόμηση Πίνακα Οι διαλέξεις βασίζονται στο βιβλίο των Τσελίκη και Τσελίκα C: Από τη Θεωρία στην

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

Θεωρία Υπολογισμού και Πολυπλοκότητα Αναγωγές

Θεωρία Υπολογισμού και Πολυπλοκότητα Αναγωγές Θεωρία Υπολογισμού και Πολυπλοκότητα Αναγωγές Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Ανεπίλυτα Προβλήματα από τη Θεωρία Γλωσσών (5.1) To Πρόβλημα της Περάτωσης Το Πρόβλημα της Κενότητα

Διαβάστε περισσότερα

Τυχαιοκρατικοί Αλγόριθμοι

Τυχαιοκρατικοί Αλγόριθμοι Πιθανότητες και Αλγόριθμοι Ανάλυση μέσης περίπτωσης Μελέτα τη συμπεριφορά ενός αλγορίθμου σε μια «μέση» είσοδο (ως προς κάποια κατανομή) Τυχαιοκρατικός αλγόριθμος Λαμβάνει τυχαίες αποφάσεις καθώς επεξεργάζεται

Διαβάστε περισσότερα

Υπολογιστικά & Διακριτά Μαθηματικά

Υπολογιστικά & Διακριτά Μαθηματικά Υπολογιστικά & Διακριτά Μαθηματικά Ενότητα 5: Αναδρομικές σχέσεις - Υπολογισμός Αθροισμάτων Στεφανίδης Γεώργιος Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για

Διαβάστε περισσότερα

Αριθμητική Ανάλυση & Εφαρμογές

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

Διαβάστε περισσότερα

ΕΝΑΣ ΔΙΚΡΙΤΗΡΙΟΣ ΑΛΓΟΡΙΘΜΟΣ SIMPLEX

ΕΝΑΣ ΔΙΚΡΙΤΗΡΙΟΣ ΑΛΓΟΡΙΘΜΟΣ SIMPLEX ΚΕΦΑΛΑΙΟ 3 ΕΝΑΣ ΔΙΚΡΙΤΗΡΙΟΣ ΑΛΓΟΡΙΘΜΟΣ SIMPLEX 3.1 Εισαγωγή Ο αλγόριθμος Simplex θεωρείται πλέον ως ένας κλασικός αλγόριθμος για την επίλυση γραμμικών προβλημάτων. Η πρακτική αποτελεσματικότητά του έχει

Διαβάστε περισσότερα

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

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ Ενότητα 2: Ασυμπτωτικός συμβολισμός Μαρία Σατρατζέμη Τμήμα Εφαρμοσμένης Πληροφορικής Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons.

Διαβάστε περισσότερα

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ. ΘΕΩΡΗΤΙΚΗ ΑΣΚΗΣΗ 1 ΛΥΣΕΙΣ Ανάλυση Πολυπλοκότητας

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ. ΘΕΩΡΗΤΙΚΗ ΑΣΚΗΣΗ 1 ΛΥΣΕΙΣ Ανάλυση Πολυπλοκότητας ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΠΛ 231: Δομές Δεδομένων και Αλγόριθμοι Εαρινό Εξάμηνο 2013 ΘΕΩΡΗΤΙΚΗ ΑΣΚΗΣΗ 1 ΛΥΣΕΙΣ Ανάλυση Πολυπλοκότητας Διδάσκων Καθηγητής: Παναγιώτης Ανδρέου Ημερομηνία Υποβολής:

Διαβάστε περισσότερα

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

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ Ενότητα 3: Ασυμπτωτικός συμβολισμός Μαρία Σατρατζέμη Τμήμα Εφαρμοσμένης Πληροφορικής Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons.

Διαβάστε περισσότερα

Ψευδοκώδικας. November 7, 2011

Ψευδοκώδικας. November 7, 2011 Ψευδοκώδικας November 7, 2011 Οι γλώσσες τύπου ψευδοκώδικα είναι ένας τρόπος περιγραφής αλγορίθμων. Δεν υπάρχει κανένας τυπικός ορισμός της έννοιας του ψευδοκώδικα όμως είναι κοινός τόπος ότι οποιαδήποτε

Διαβάστε περισσότερα

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

ΕΙΣΑΓΩΓΗ ΣΤΟΥΣ ΑΛΓΟΡΙΘΜΟΥΣ ΚΑΙ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ ΕΙΣΑΓΩΓΗ ΣΤΟΥΣ ΑΛΓΟΡΙΘΜΟΥΣ ΚΑΙ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΤΜΗΜΑ ΠΟΛΙΤΙΣΜΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΣ Διδάσκουσα Δρ Β. Καβακλή Χειμερινό Εξάμηνο 2001 1 Δοκιμή Έλεγχος Αλγορίθμου Για να

Διαβάστε περισσότερα

Βρόχοι. Εντολή επανάληψης. Το άθροισμα των αριθμών 1 5 υπολογίζεται με την εντολή. Πρόβλημα. Πώς θα υπολογίσουμε το άθροισμα των ακέραιων ;

Βρόχοι. Εντολή επανάληψης. Το άθροισμα των αριθμών 1 5 υπολογίζεται με την εντολή. Πρόβλημα. Πώς θα υπολογίσουμε το άθροισμα των ακέραιων ; Εντολή επανάληψης Το άθροισμα των αριθμών 1 5 υπολογίζεται με την εντολή Πρόβλημα Πώς θα υπολογίσουμε το άθροισμα των ακέραιων 1 5000; Ισοδύναμοι υπολογισμοί του Ισοδύναμοι υπολογισμοί του Ισοδύναμοι υπολογισμοί

Διαβάστε περισσότερα

ΚΕΦΑΛΑΙΟ 1ο: ΔΙΑΦΟΡΙΚΟΣ ΛΟΓΙΣΜΟΣ ΕΝΟΤΗΤΑ 3: ΟΡΙΑ - ΣΥΝΕΧΕΙΑ ΣΥΝΑΡΤΗΣΗΣ

ΚΕΦΑΛΑΙΟ 1ο: ΔΙΑΦΟΡΙΚΟΣ ΛΟΓΙΣΜΟΣ ΕΝΟΤΗΤΑ 3: ΟΡΙΑ - ΣΥΝΕΧΕΙΑ ΣΥΝΑΡΤΗΣΗΣ ΚΕΦΑΛΑΙΟ ο: ΔΙΑΦΟΡΙΚΟΣ ΛΟΓΙΣΜΟΣ ΕΝΟΤΗΤΑ : ΟΡΙΑ - ΣΥΝΕΧΕΙΑ ΣΥΝΑΡΤΗΣΗΣ Η έννοια του ορίου στο x ο Υπάρχουν συναρτήσεις οι τιμές των οποίων πλησιάζουν ένα πραγματικό αριθμό L, όταν η ανεξάρτητη μεταβλητή

Διαβάστε περισσότερα

Δομές Δεδομένων. Ενότητα 1 - Εισαγωγή. Χρήστος Γκουμόπουλος. Πανεπιστήμιο Αιγαίου Τμήμα Μηχανικών Πληροφοριακών και Επικοινωνιακών Συστημάτων

Δομές Δεδομένων. Ενότητα 1 - Εισαγωγή. Χρήστος Γκουμόπουλος. Πανεπιστήμιο Αιγαίου Τμήμα Μηχανικών Πληροφοριακών και Επικοινωνιακών Συστημάτων Δομές Δεδομένων Ενότητα 1 - Εισαγωγή Χρήστος Γκουμόπουλος Πανεπιστήμιο Αιγαίου Τμήμα Μηχανικών Πληροφοριακών και Επικοινωνιακών Συστημάτων Αντικείμενο μαθήματος Δομές Δεδομένων (ΔΔ): Στην επιστήμη υπολογιστών

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

Διακριτά Μαθηματικά. Άγγελος Κιαγιάς. https://crypto.di.uoa.gr/dmath aggelos. Τμήμα Πληροφορικής & Τηλεπικοινωνιών. π.

Διακριτά Μαθηματικά. Άγγελος Κιαγιάς. https://crypto.di.uoa.gr/dmath aggelos. Τμήμα Πληροφορικής & Τηλεπικοινωνιών. π. π.1 Διακριτά Μαθηματικά https://crypto.di.uoa.gr/dmath2013 Άγγελος Κιαγιάς http://www.di.uoa.gr/ aggelos Τμήμα Πληροφορικής & Τηλεπικοινωνιών π.2 Τι είναι τα Διακριτά Μαθηματικά; Είναι η μελέτη διακριτών

Διαβάστε περισσότερα

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

Αλγόριθμοι και Δομές Δεδομένων (Ι) (εισαγωγικές έννοιες) Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 2015-16 Αλγόριθμοι και Δομές Δεδομένων (Ι) (εισαγωγικές έννοιες) http://di.ionio.gr/~mistral/tp/csintro/ Μ.Στεφανιδάκης Τι είναι

Διαβάστε περισσότερα

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

Αναζήτηση. 1. Σειριακή αναζήτηση 2. Δυαδική Αναζήτηση. Εισαγωγή στην Ανάλυση Αλγορίθμων Μάγια Σατρατζέμη Αναζήτηση. Σειριακή αναζήτηση. Δυαδική Αναζήτηση Εισαγωγή στην Ανάλυση Αλγορίθμων Μάγια Σατρατζέμη Παραδοχή Στη συνέχεια των διαφανειών (διαλέξεων) η ασυμπτωτική έκφραση (συμβολισμός Ο, Ω, Θ) του χρόνου

Διαβάστε περισσότερα

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

ΑΕΠΠ Ερωτήσεις θεωρίας ΑΕΠΠ Ερωτήσεις θεωρίας Κεφάλαιο 1 1. Τα δεδομένα μπορούν να παρέχουν πληροφορίες όταν υποβάλλονται σε 2. Το πρόβλημα μεγιστοποίησης των κερδών μιας επιχείρησης είναι πρόβλημα 3. Για την επίλυση ενός προβλήματος

Διαβάστε περισσότερα

Διάλεξη 2η: Αλγόριθμοι και Προγράμματα

Διάλεξη 2η: Αλγόριθμοι και Προγράμματα Διάλεξη 2η: Αλγόριθμοι και Προγράμματα Τμήμα Επιστήμης Υπολογιστών, Πανεπιστήμιο Κρήτης Εισαγωγή στην Επιστήμη Υπολογιστών Βασίζεται σε διαφάνειες του Κ Παναγιωτάκη Πρατικάκης (CSD) Αλγόριθμοι και Προγράμματα

Διαβάστε περισσότερα

Για τις λύσεις των προβλημάτων υπάρχει τρόπος εκτίμησης της επίδοσης (performance) και της αποδοτικότητας (efficiency). Ερωτήματα για την επίδοση

Για τις λύσεις των προβλημάτων υπάρχει τρόπος εκτίμησης της επίδοσης (performance) και της αποδοτικότητας (efficiency). Ερωτήματα για την επίδοση Επίδοση Αλγορίθμων Για τις λύσεις των προβλημάτων υπάρχει τρόπος εκτίμησης της επίδοσης (performance) και της αποδοτικότητας (efficiency). Ερωτήματα για την επίδοση πώς υπολογίζεται ο χρόνος εκτέλεσης

Διαβάστε περισσότερα

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

5.1. Προσδοκώμενα αποτελέσματα 5.1. Προσδοκώμενα αποτελέσματα Όταν θα έχεις ολοκληρώσει τη μελέτη αυτού του κεφαλαίου θα έχεις κατανοήσει τις τεχνικές ανάλυσης των αλγορίθμων, θα μπορείς να μετράς την επίδοση των αλγορίθμων με βάση

Διαβάστε περισσότερα

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

5 ΕΙΣΑΓΩΓΗ ΣΤΗ ΘΕΩΡΙΑ ΑΛΓΟΡΙΘΜΩΝ 5 ΕΙΣΑΓΩΓΗ ΣΤΗ ΘΕΩΡΙΑ ΑΛΓΟΡΙΘΜΩΝ 5.1 Εισαγωγή στους αλγορίθμους 5.1.1 Εισαγωγή και ορισμοί Αλγόριθμος (algorithm) είναι ένα πεπερασμένο σύνολο εντολών οι οποίες εκτελούν κάποιο ιδιαίτερο έργο. Κάθε αλγόριθμος

Διαβάστε περισσότερα

Φροντιστήριο #4 Λυμένες Ασκήσεις Μαθηματική Επαγωγή 13/3/2018

Φροντιστήριο #4 Λυμένες Ασκήσεις Μαθηματική Επαγωγή 13/3/2018 Φροντιστήριο #4 Λυμένες Ασκήσεις Μαθηματική Επαγωγή 1//018 Σημείωση: Όλες οι παρακάτω αποδείξεις ακολουθούν την επαγωγική μέθοδο. Κάποια από τα παραδείγματα έχουν αποδειχθεί και με άλλες μεθόδους στο Φροντιστήριο

Διαβάστε περισσότερα

Ασκήσεις μελέτης της 4 ης διάλεξης. ), για οποιοδήποτε μονοπάτι n 1

Ασκήσεις μελέτης της 4 ης διάλεξης. ), για οποιοδήποτε μονοπάτι n 1 Οικονομικό Πανεπιστήμιο Αθηνών, Τμήμα Πληροφορικής Μάθημα: Τεχνητή Νοημοσύνη, 2016 17 Διδάσκων: Ι. Ανδρουτσόπουλος Ασκήσεις μελέτης της 4 ης διάλεξης 4.1. (α) Αποδείξτε ότι αν η h είναι συνεπής, τότε h(n

Διαβάστε περισσότερα

Ποσοτικές Μέθοδοι στη Διοίκηση Επιχειρήσεων ΙΙ Σύνολο- Περιεχόμενο Μαθήματος

Ποσοτικές Μέθοδοι στη Διοίκηση Επιχειρήσεων ΙΙ Σύνολο- Περιεχόμενο Μαθήματος Ποσοτικές Μέθοδοι στη Διοίκηση Επιχειρήσεων ΙΙ Σύνολο- Περιεχόμενο Μαθήματος Χιωτίδης Γεώργιος Τμήμα Λογιστικής και Χρηματοοικονομικής Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης

Διαβάστε περισσότερα

Τεχνητή Νοημοσύνη. 2η διάλεξη (2015-16) Ίων Ανδρουτσόπουλος. http://www.aueb.gr/users/ion/

Τεχνητή Νοημοσύνη. 2η διάλεξη (2015-16) Ίων Ανδρουτσόπουλος. http://www.aueb.gr/users/ion/ Τεχνητή Νοημοσύνη 2η διάλεξη (2015-16) Ίων Ανδρουτσόπουλος http://www.aueb.gr/users/ion/ 1 Οι διαφάνειες αυτής της διάλεξης βασίζονται στα βιβλία: Τεχνητή Νοημοσύνη των Βλαχάβα κ.ά., 3η έκδοση, Β. Γκιούρδας

Διαβάστε περισσότερα

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

Τι είναι αλγόριθμος; Υποπρογράμματα (υποαλγόριθμοι) Βασικές αλγοριθμικές δομές Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 2015-16 Αλγόριθμοι και Δομές Δεδομένων (Ι) (εισαγωγικές έννοιες) http://di.ionio.gr/~mistral/tp/csintro/ Μ.Στεφανιδάκης Τι είναι

Διαβάστε περισσότερα

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

Διάλεξη 09: Αλγόριθμοι Ταξινόμησης I Διάλεξη 09: Αλγόριθμοι Ταξινόμησης I Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Οι αλγόριθμοι ταξινόμησης: Α. SelectoSort Ταξινόμηση με Επιλογή Β. IsertoSort Ταξινόμηση με Εισαγωγή Γ. MergeSort

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

ΙΑ ΟΧΙΚΕΣ ΒΕΛΤΙΩΣΕΙΣ

ΙΑ ΟΧΙΚΕΣ ΒΕΛΤΙΩΣΕΙΣ Tel.: +30 2310998051, Αριστοτέλειο Πανεπιστήμιο Θεσσαλονίκης Σχολή Θετικών Επιστημών Τμήμα Φυσικής 541 24 Θεσσαλονίκη Καθηγητής Γεώργιος Θεοδώρου Ιστοσελίδα: http://users.auth.gr/theodoru ΙΑ ΟΧΙΚΕΣ ΒΕΛΤΙΩΣΕΙΣ

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

Αλγόριθμοι και Πολυπλοκότητα Φώτης Ε. Ψωμόπουλος, Περικλής Α. Μήτκας ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Τομέας Ηλεκτρονικής και Υπολογιστών Εργαστήριο Επεξεργασίας Πληροφορίας και Υπολογισμών Καθηγητής: Περικλής

Διαβάστε περισσότερα

Μερικές φορές δεν μπορούμε να αποφανθούμε για την τιμή του άπειρου αθροίσματος.

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

Διαβάστε περισσότερα

με Τέλος πάντων, έστω ότι ξεκινάει ένα άλλο υποθετικό σενάριο που απλά δεν διευκρινίζεται. Για το i) θα έχουμε , 2

με Τέλος πάντων, έστω ότι ξεκινάει ένα άλλο υποθετικό σενάριο που απλά δεν διευκρινίζεται. Για το i) θα έχουμε , 2 Άσκηση 75 Σε έναν οργανισμό, αρχικά υπάρχουν 04800 βακτήρια. Μετά από 1 ώρα υπάρχουν 10400 βακτήρια, μετά από ώρες 5100 βακτήρια, και γενικά ο αριθμός των βακτηρίων υποδιπλασιάζεται κάθε μια ώρα. α) Πόσα

Διαβάστε περισσότερα

Μαθηματική Εισαγωγή Συναρτήσεις

Μαθηματική Εισαγωγή Συναρτήσεις Φυσικός Ραδιοηλεκτρολόγος (MSc) ο Γενικό Λύκειο Καστοριάς Καστοριά, Ιούλιος 14 A. Μαθηματική Εισαγωγή Πράξεις με αριθμούς σε εκθετική μορφή Επίλυση βασικών μορφών εξισώσεων Συναρτήσεις Στοιχεία τριγωνομετρίας

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

ΕΠΛ 003: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ

ΕΠΛ 003: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΠΛ 003: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ Δρ. Κόννης Γιώργος Πανεπιστήμιο Κύπρου - Τμήμα Πληροφορικής Προγραμματισμός Στόχοι 1 Να περιγράψουμε τις έννοιες του Υπολογιστικού Προβλήματος και του Προγράμματος/Αλγορίθμου

Διαβάστε περισσότερα

Βασίλειος Μαχαιράς Πολιτικός Μηχανικός Ph.D.

Βασίλειος Μαχαιράς Πολιτικός Μηχανικός Ph.D. Βασίλειος Μαχαιράς Πολιτικός Μηχανικός Ph.D. Μη γραμμικός προγραμματισμός: μέθοδοι μονοδιάστατης ελαχιστοποίησης Πανεπιστήμιο Θεσσαλίας Σχολή Θετικών Επιστημών ΤμήμαΠληροφορικής Διάλεξη 6 η /2017 Τι παρουσιάστηκε

Διαβάστε περισσότερα