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

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

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

Transcript

1 Εισαγωγή στους Αλγορίθμους Ενότητα 1η Διδάσκων Χρήστος Ζαρολιάγκης Καθηγητής Τμήμα Μηχανικών Η/Υ & Πληροφορικής Πανεπιστήμιο Πατρών

2 Διαδικαστικά Μαθήματος Διδασκαλία/Φροντιστήρια: Δευτέρα 15:00-17:00 & Τρίτη 15:00-17:00, ΒΑ Επικουρικό Έργο Μεταπτυχιακοί Συνεργάτες Τμήμα Μηχανικών Η/Υ & Πληροφορικής Ιστοσελίδα Μαθήματος 2

3 Διαδικαστικά Μαθήματος Εξετάσεις (γραπτές) Εξέταση Προόδου όταν θα έχει καλυφθεί > ½ της ύλης (η ημερομηνία θα ανακοινωθεί έγκαιρα) Τελική Εξέταση: περίοδος Ιαν & Ιουν/Σεπ (επαναληπτικές) Χρήση ενός χειρόγραφου φύλλου Α4 (2 σελ.) με ότι πληροφορία επιθυμείτε Βαθμολογία ΒΤΕ = Βαθμός Τελικής Εξέτασης ΒΕΠ = Βαθμός Εξέτασης Προόδου Τελικός Βαθμός = max{βte, 0.4xΒΕΠ + 0.6xΒΤΕ} 3

4 Στόχος Μαθήματος Εισαγωγή σε θεμελιώδεις αλγοριθμικές έννοιες και τεχνικές Αλληγορία & Μήνυμα Έστω ότι θέλετε να γίνετε γλύπτης. Χρειάζεστε εκμάθηση βασικών τεχνικών: εύρεση σωστών υλικών (μάρμαρα, πέτρες, κλπ), μετακίνηση υλικών, ανέγερση σκαλωσιάς, Η γνώση αυτών των τεχνικών δεν θα σας κάνει διάσημο καλλιτέχνη, αλλά ακόμη και αν έχετε ένα πραγματικά εξαιρετικό ταλέντο θα είναι πολύ δύσκολο να γίνετε επιτυχημένος καλλιτέχνης, χωρίς να τις γνωρίζετε. Δεν είναι αναγκαίο να κατέχετε τέλεια όλες τις βασικές τεχνικές πριν φτιάξετε το πρώτο σας γλυπτό. Αλλά πρέπει πάντοτε να είστε πρόθυμοι να επιστρέψετε στις βασικές σας τεχνικές προκειμένου να τις βλ βελτιώσετε. 4

5 Τι είναι Αλγόριθμος ; Αλγόριθμος - Ορισμός [webster.com] Μια διαδικασία δ για την επίλυση ενός μαθηματικού προβλήματος (όπως η εύρεση του μέγιστου κοινού διαιρέτη) σε ένα πεπερασμένο αριθμό βημάτων που συχνά περιέχει την επανάληψη μιας πράξης. [Knuth] Ένας αλγόριθμος είναι μια πεπερασμένη, συγκεκριμένη, αποτελεσματική διαδικασία, με μια είσοδο και κάποια έξοδο. 5

6 Τι είναι Αλγόριθμος ; Αλγόριθμοι Μαθηματικά υπολογιστών Κινητήρια δύναμη πίσω από κάθε ευφυές λογισμικό Οι σπουδαίοι αλγόριθμοι είναι η ποίηση του υπολογισμού. Όπως μια στροφή ενός ποιήματος, μπορεί να είναι λακωνικοί, υπαινικτικοί, πυκνοί, ακόμα και μυστηριώδεις. Όταν όμως ξεκλειδωθούν, ρίχνουν ένα λαμπρό φως σε κάποια διάσταση του υπολογισμού. -Francis Sullivan 6

7 Αλγόριθμοι Συσκευές Πλοήγησης Αυτοκινήτων Εύρεση Βέλτιστων τ Διαδρομών ίκτυο Διαδ Συστάσεις για αγορές μέσω διαδικτύου Wall St treet 70% των συναλλαγών πραγματοποιούνται μέσω ευφυών αλγορίθμων 14:45: λεπτο κραχ από πώληση μετοχών αξίας 26Μ 2.6Μ σε μόλις 20 λεπτά, μέσω χρηματιστηριακού λογισμικού βασισμένου σε έναν νέο αλγόριθμο 7

8 2 Κομβικά Σημεία στην Εξέλιξη της Ανθρωπότητας Τυπογραφία (Mainz, 1448): εκτύπωση βιβλίων με μεταλλικά στοιχεία από τον Johannes Gutenberg ( ) Αλγόριθμοι (βασικές αριθμητικές μέθοδοι), από τον Abu 'Abd Allah Muhammad ibn Musa Al-Khwarizmi (~820 μχ), βασισμένες στο δεκαδικό θεσιακό σύστημα (Ινδία ~600 μχ) Al-Khwarizmi ( /850 μχ): Πέρσης μαθηματικός και αστρονόμος. Έγραψε το Kitab al-jabr wa'l-muqabala (άλγεβρα γβρ Λυκείου) ) Κitab: μεταφράστηκε στα λατινικά (12 ο μχ αιώνα) και το περιεχόμενό του διαδόθηκε στη Δύση από τον Leonardo Fibonacci ( ) 8

9 Ετυμολογία Αλγορισμός = διαδικασία εκτέλεσης αριθμητικής χρησιμοποιώντας δεκαδικούς (αραβικούς) αριθμούς Λάθος αντίληψη! Αλγόριθμος άλγος/αλγεινός [επίπονος] + αριθμός Πραγματική προέλευση: παραφθορά του ονόματος του Abu 'Abd Allah Muhammad ibn Musa Al-Khwarizmi ( /850 μχ). 9

10 Σχεδιασμός & Ανάλυση Αλγορίθμων Ιδέα γνωστή από την αρχαιότητα π.χ. αλγόριθμος Ευκλείδη για εύρεση ΜΚΔ Ευκλείδης ο Αλεξανδρινός ( π.χ.) 10

11 Σχεδιασμός & Ανάλυση Αλγορίθμων Ιδέα παλιά αλλά συστηματική μελέτη και ανάλυση μετά το 1970 Απαιτεί: κριτική μαθηματική σκέψη και επίλυση προβλημάτων 11

12 Εφαρμογές Αλγόριθμοι: βρίσκονται στην «καρδιά» δά κάθε υπολογιστικής διαδικασίαςδ Δίκτυα (επικοινωνιών, μεταφορών, κλπ) Διαδίκτυο και Παγκόσμιος Ιστός Επιχειρησιακή έρευνα Τεχνητή νοημοσύνη Υπολογιστική βιολογία Κρυφή μνήμη Μεταγλωττιστές Βάσεις δεδομένων Δρομολόγηση Ανάλυση δεδομένων (κοινωνική δικτύωση) Επεξεργασία σημάτων Γραφικά υπολογιστών Επιστημονικός υπολογισμός... Εστιάζουμε σε αλγόριθμους και τεχνικές που είναι χρήσιμοι στην πράξη 12

13 Ύλη Βασικά στοιχεία σχεδιασμού & ανάλυσης αλγορίθμων Αποδοτικότητα, ασυμπτωτικός συμβολισμός, ορθότητα Βασικές δομές δεδομένων (λίστα, πίνακας, ουρά προτεραιότητας) Ταξινόμηση στοιχείων Μέθοδος «Διαίρει και Βασίλευε» Γραφήματα και αλγόριθμοι γραφημάτων Διάτρεξη γραφημάτων Συνεκτικότητα Τοπολογική διάταξη Μέθοδοι απληστείας και δυναμικού προγραμματισμού Ελάχιστα γεννητικά δένδρα Συντομότερες διαδρομές Ροή δικτύου Επιλεγμένα θέματα 13

14 Βιβλιογραφία 1. J. Kleinberg and E. Tardos, Σχεδιασμός Αλγορίθμων, ελληνική έκδοση, Εκδόσεις Κλειδάριθμος, T. Cormen, C. Leiserson, R. Rivest, and C. Stein, Εισαγωγή στους Αλγορίθμους, ελληνική έκδοση, Πανεπιστημιακές Εκδόσεις Κρήτης, K. Mehlhorn and P. Sanders, Αλγόριθμοι και Δομές Δεδομένων Τα βασικά εργαλεία, ελληνική έκδοση, Εκδόσεις Κλειδάριθμος, S. Dasgupta, C. Papadimitriou, and U. Vazirani, Αλγόριθμοι, ελληνική έκδοση, Εκδόσεις Κλειδάριθμος, Θ. Παπαθεοδώρου, αθ Αλγόριθμοι: : Εισαγωγικά Θέματα και Παραδείγματα, Εκδόσεις Πανεπιστημίου Πατρών,

15 Σχεδιασμός & Ανάλυση Αλγορίθμων Όταν υπάρξει μια Αναλυτική Μηχανή, τότε απαραίτητα θα οδηγεί την μελλοντική πορεία της επιστήμης. Όταν θα αναζητείται ένα αποτέλεσμα με την βοήθειά της, θα προκύπτει το παρακάτω ερώτημα: Με ποιό τρόπο υπολογισμού μπορεί η μηχανή να φτάσει σε αυτά τα αποτελέσματα στον ελάχιστο χρόνο; ; - Charles Babbage (1864) Charles Babbage ( ) Αναλυτική Μηχανή (σχέδιο) 15

16 Βασικά Στοιχεία Ανάλυσης Αλγορίθμων Αποδοτικότητα Προσεγγίσεις Ανάλυσης Πολυπλοκότητα

17 Αποδοτικότητα Επιθυμία: εύρεση του πιο «αποδοτικού» αλγορίθμου Πώς μετράμε την αποδοτικότητα ; Κλιμάκωση: πώς μεταβάλλεται η συμπεριφορά του αλγορίθμου σε διαφορετικά μεγέθη (εισόδου) του προβλήματος ; Π.χ. αναμένουμε μεγαλύτερη (υπολογιστική) προσπάθεια για μια ταξινόμηση στοιχείων από ότι για μια ταξινόμηση στοιχείων 17

18 Αποδοτικότητα 1 η προσέγγιση (εμπειρική): προγραμματισμός μ αλγορίθμου και εξαγωγή γή συμπερασμάτων μ μέσω πειραμάτων Ανομοιογενής εξαρτάται από πολλούς υποκειμενικούς παράγοντες Καμία γνώση για την κλιμάκωση (συμπεριφορά αλγορίθμου σε μεγαλύτερα μγ μεγέθη μγ εισόδου) ) 18

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

20 Αποδοτικότητα 2 η προσέγγιση (πολυπλοκότητα χειρότερης περίπτωσης): Άνω όριο στον χρόνο εκτέλεσης για κάθε στιγμιότυπο εισόδου Ομοιογενής αποτυπώνει αρκετά καλά την αποδοτικότητα στην πράξη και προσφέρει ρ πληροφορία ρ κλιμάκωσης Δρακόντειο μέτρο, αλλά δεν υπάρχει αποτελεσματική εναλλακτική λύση 20

21 Αποδοτικότητα 3 η προσέγγιση (πολυπλοκότητα μέσης περίπτωσης): Μέσος (αναμενόμενος) χρόνος εκτέλεσης σε «τυχαία» στιγμιότυπα εισόδου μιας πιθανοτικής κατανομής Δύσκολο/αδύνατο να οριστούν πραγματικά στιγμιότυπα από τυχαίες κατανομές Ανομοιογενής - βέλτιστος αλγόριθμος για μια κατανομή μπορεί να έχει τελείως διαφορετική συμπεριφορά σε άλλη κατανομή 21

22 Αποδοτικότητα Επικεντρωνόμαστε στην ανάλυση πολυπλοκότητας χειρότερης περίπτωσης 22

23 Μοντέλο RAM (Μηχανή Τυχαίας Προσπέλασης Random Access Machine) Καταχωρητές 0 1 CPU Μνήμη... John von Neumann ( ) Εντολές μηχανής (load/store, αριθμητικές, λογικές, συγκρίσεις, jump, ) Λέξη μνήμης w bit: 2 w στοιχεία Μέγεθος εισόδου n πρέπει να μπορεί να αναπαρασταθεί δηλ. n = 2 w w = log 2 n log n bit Τιμή στοιχείου εισόδου Ν χρειάζεται log N bit για να αναπαρασταθεί Υπόθεση: Ν = n c = 2 w (c μια σταθερά), τότε w=c log n, δηλ. χρειάζεται ένας σταθερός αριθμός λέξεων μνήμης των log n bit 23

24 Μοντέλο RAM (Μηχανή Τυχαίας Προσπέλασης Random Access Machine) Στιγμιότυπο εισόδου μεγέθους n στοιχείων, με μέγιστη τιμή στοιχείου N Στοιχειώδες υπολογιστικό βήμα: 1 μονάδα χρόνου για κάθε βασική λειτουργία (π.χ., αριθμητική πράξη, λογική πράξη, σύγκριση, καταχώρηση, κλπ) 1 μονάδα χρόνου για προσπέλαση (ανάγνωση/εγγραφή) ενός σταθερού αριθμού λέξεων μνήμης των log n (ή log Ν) bit Επιθυμία κλιμάκωσης Χρονική πολυπλοκότητα = f(n) [ή f(n, log N)] Χωρική πολυπλοκότητα = g(n, log N) Ερώτημα: τι μορφή (πρέπει να) έχουν οι f και g ; 24

25 Αναζήτηση Ωμής Βίας (Υπερ)Εκθετικός Χρόνος Ωμή βία: Τετριμμένος αλγόριθμος επίλυσης προβλήματος έλεγχος όλων των πιθανών λύσεων (στο χώρο όλων των δυνατών λύσεων του προβλήματος) Συνήθως παίρνει χρόνο 2 n ή χειρότερο (π.χ. n!) για είσοδο μεγέθους n Μηδαμινή πρακτική αξία (όσο μεγαλώνει η τιμή του n) Εκθετική πολυπλοκότητα Υπάρχουν σταθερές a > 0, c > 0, d > 0, και κ 0 τέτοιες ώστε για κάθε είσοδο μεγέθους n, ο χρόνος εκτέλεσης να φράσσεται από στοιχειώδη υπολογιστικά βήματα Π.χ., n! n n = 2 n log n 25

26 Πολυωνυμικός Χρόνος Υπάρχουν σταθερές c > 0, d > 0, και κ 0 τέτοιες ώστε για κάθε είσοδο μεγέθους n, ο χρόνος εκτέλεσης να φράσσεται από c n d log k n στοιχειώδη υπολογιστικά βήματα Επιθυμητή ιδιότητα κλιμάκωσης. Όταν το μέγεθος της εισόδου διπλασιάζεται, η χρονική πολυπλοκότητα θα πρέπει να μεγαλώνει μόνο κατά έναν σταθερό παράγοντα Δ Μέγεθος Χρόνος n c n d log k n 2n c (2n) d log k (2n) < < c (2 d+1 ) n d log k n Δ = 2 d+1 Ένας αλγόριθμος είναι πολυωνυμικού χρόνου αν ισχύει η παραπάνω ιδιότητα κλιμάκωσης 26

27 Πολυωνυμικός vs Εκθετικός Χρόνος Χρονική διάρκεια 1 ώρας σε Η/Υ με S1 στοιχ. λειτουργίες /sec Αλγόριθμος ΠΧΠ Μέγεθος στιγμιοτύπου Πολυωνυμικός n 2 n1 Εκθετικός 2 n Ν1 Νέος Η/Υ με ταχύτητα S2 = 100 S1 στοιχ. λειτουργίες/sec Ερώτημα 1: πόσο μεγαλύτερα μγ στιγμιότυπα εισόδου μεγέθους μγ n2 μπορεί να επιλύσει σε μία ώρα ο Π στο νέο Η/Υ?? Ερώτημα 2: πόσο μεγαλύτερα στιγμιότυπα εισόδου μεγέθους Ν2 μπορεί να επιλύσει σε μία ώρα ο Ε στο νέο Η/Υ?? 27

28 Ενδεικτικοί Χρόνοι Εκτέλεσης Πολυωνυμικών & Εκθετικών Αλγορίθμων Πίνακας 2.1 Οι χρόνοι εκτέλεσης (στρογγυλεμένοι προς τα επάνω) διαφόρων αλγορίθμων για εισόδους αυξανόμενου μεγέθους, σε έναν επεξεργαστή που εκτελεί ένα εκατομμύριο εντολές υψηλού επιπέδου ανά δευτερόλεπτο. Στις περιπτώσεις όπου ο χρόνος εκτέλεσης υπερβαίνει τα έτη, καταγράφουμε απλώς ότι ο αλγόριθμος χρειάζεται πάρα πολύ χρόνο. n n log 2 n n 2 n n 2 n n! n = 10 < 1 sec < 1 sec < 1 sec < 1 sec < 1 sec < 1 sec 4 sec n = 30 < 1 sec < 1 sec < 1 sec < 1 sec < 1 sec 18 min έτη n = 50 < 1 sec < 1 sec < 1 sec < 1 sec 11 λεπτά 36 έτη πάρα πολύ n = 100 < 1 sec < 1 sec < 1 sec 1 sec 12,892 έτη έτη πάρα πολύ n = 1,000 < 1 sec < 1 sec 1 sec 18 λεπτά πάρα πάρα πάρα πολύ πολύ πολύ n = 10,000 < 1 sec < 1 sec 2 λεπτά 12 ημέρες πάρα πολύ n = 100,000 < 1 sec 2 sec 3 ώρες 32 έτη πάρα πολύ πάρα πολύ πάρα πολύ πάρα πολύ πάρα πολύ n = 1,000,000 1 sec 20 sec 12 ημέρες 31,710 έτη πάρα πάρα πάρα πολύ πολύ πολύ 28

29 Αποδοτικότητα & Πολυωνυμικός Χρόνος Ένας αλγόριθμος είναι αποδοτικός αν έχει πολυωνυμικό χρόνο εκτέλεσης Αιτιολόγηση: Μεγάλη πρακτική σημασία! Στην πράξη, οι αλγόριθμοι πολυωνυμικού χρόνου που αναπτύσσουμε σχεδόν πάντα έχουν χαμηλές σταθερές και χαμηλούς εκθέτες Μείωση του εκθετικού ορίου ενός αλγόριθμου ωμής βίας συνήθως αποκαλύπτει κάποια πολύ σημαντική δομή του προβλήματος Εξαιρέσεις Κάποιοι αλγόριθμοι πολυωνυμικού χρόνου έχουν όντως υψηλές σταθερές ή/και εκθέτες, και είναι άχρηστοι στην πράξη Κάποιοι αλγόριθμοι εκθετικού χρόνου (ή χειρότεροι) ρ ) χρησιμοποιούνται ευρέως γιατί τα στιγμιότυπα χειρότερης περίπτωσης είναι σπάνια Μέθοδος Simplex Unix grep 29

30 Πολυωνυμικός Χρόνος Ένας αλγόριθμος είναι αποδοτικός αν έχει πολυωνυμικό χρόνο εκτέλεσης Ερώτημα: Μας αρκεί οποιοσδήποτε πολυωνυμικός χρόνος; 30

31 Πολυωνυμικοί Αλγόριθμοι Πρόβλημα: ταξινόμηση n στοιχείων Στοιχειώδης λειτουργία: σύγκριση δύο στοιχείων Αλγόριθμος Χρόνος (συγκρίσεις) Α1 10 n log n Α2 n 2 Υπολογιστής Συγκρίσεις/sec Υ1 (2005) 10 7 Υ2 (2014) 10 9 n = 10 6 Χρόνος Α1 (πιο αποδοτικός) στον Υ1 (αργός): ( log l 10 6 )/10 7 = 6 log 10 secs 20 secs Χρόνος Α2 (λιγότερο αποδοτικός) στον Υ2 (γρήγορος): (10 6 ) 2 / 10 9 = 1000 secs = 16.6 min 31

32 Πολυωνυμικοί Αλγόριθμοι Πρόβλημα: ταξινόμηση n στοιχείων Στοιχειώδης λειτουργία: σύγκριση δύο στοιχείων Αλγόριθμος Χρόνος (συγκρίσεις) Α1 10 n log n Α2 n 2 Υπολογιστής Συγκρίσεις/sec Υ1 (2005) 10 7 Υ2 (2014) 10 9 n = 10 7 Χρόνος Α1 (πιο αποδοτικός) στον Υ1 (αργός): ( log l 10 7 )/10 7 = 70 log 10 = 232 secs min Χρόνος Α2 (λιγότερο αποδοτικός) στον Υ2 (γρήγορος): (10 7 ) 2 / 10 9 = ses = 27.7 hours (!) 32

33 Πολυωνυμικός Χρόνος Ένας αλγόριθμος είναι αποδοτικός αν έχει πολυωνυμικό χρόνο εκτέλεσης Ερώτημα: Μας αρκεί οποιοσδήποτε πολυωνυμικός χρόνος; Απάντηση: ΟΧΙ Αποδοτικότητα Όσο το δυνατόν «μικρότερο» πολυώνυμο Τεράστια πρακτική/τεχνολογική σημασία 33

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

Εισαγωγή στους Αλγορίθμους Εισαγωγή στους Αλγορίθμους Ενότητα 1η Διδάσκων Χρήστος Ζαρολιάγκης Καθηγητής Τμήμα Μηχανικών Η/Υ & Πληροφορικής Πανεπιστήμιο Πατρών Email: zaro@ceid.upatras.gr Διαδικαστικά Μαθήματος Διδασκαλία/Φροντιστήρια:

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

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

Εισαγωγή στους Αλγορίθμους Ενότητα 1η Εισαγωγή στους Αλγορίθμους Ενότητα 1η Διδάσκων Χρήστος Ζαρολιάγκης Καθηγητής Τμήμα Μηχανικών Η/Υ & Πληροφορικής Πανεπιστήμιο Πατρών Email: zaro@ceid.upatras.gr Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό

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

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

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

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

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

Εισαγωγή στους Αλγορίθμους Ενότητα 7η Εισαγωγή στους Αλγορίθμους Ενότητα 7η Διδάσκων Χρήστος Ζαρολιάγκης Καθηγητής Τμήμα Μηχανικών Η/Υ & Πληροφορικής Πανεπιστήμιο Πατρών Email: zaro@ceid.upatras.gr Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό

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

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

Εισαγωγή στους Αλγορίθμους Ενότητα 11η Εισαγωγή στους Αλγορίθμους Ενότητα 11η Διδάσκων Χρήστος Ζαρολιάγκης Καθηγητής Τμήμα Μηχανικών Η/Υ & Πληροφορικής Πανεπιστήμιο Πατρών Email: zaro@ceid.upatras.gr Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό

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

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

Εισαγωγή στους Αλγορίθμους Ενότητα 10η Εισαγωγή στους Αλγορίθμους Ενότητα 10η Διδάσκων Χρήστος Ζαρολιάγκης Καθηγητής Τμήμα Μηχανικών Η/Υ & Πληροφορικής Πανεπιστήμιο Πατρών Email: zaro@ceid.upatras.gr Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό

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

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

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

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

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

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

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

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

Εισαγωγή στους Αλγορίθμους Ενότητα 9η Εισαγωγή στους Αλγορίθμους Ενότητα 9η Διδάσκων Χρήστος Ζαρολιάγκης Καθηγητής Τμήμα Μηχανικών Η/Υ & Πληροφορικής Πανεπιστήμιο Πατρών Email: zaro@ceid.upatras.gr Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό

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

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

Εισαγωγή στους Αλγορίθμους Ενότητα 8η Εισαγωγή στους Αλγορίθμους Ενότητα 8η Διδάσκων Χρήστος Ζαρολιάγκης Καθηγητής Τμήμα Μηχανικών Η/Υ & Πληροφορικής Πανεπιστήμιο Πατρών Email: zaro@ceid.upatras.gr Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό

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

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

Εισαγωγή στους Αλγορίθμους Ενότητα 5η Εισαγωγή στους Αλγορίθμους Ενότητα 5η Διδάσκων Χρήστος Ζαρολιάγκης Καθηγητής Τμήμα Μηχανικών Η/Υ & Πληροφορικής Πανεπιστήμιο Πατρών Email: zaro@ceid.upatras.gr Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό

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

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

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

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

Δομές Δεδομένων. Λουκάς Γεωργιάδης.

Δομές Δεδομένων. Λουκάς Γεωργιάδης. Δομές Δεδομένων http://www.cs.uoi.gr/~loukas/courses/data_structures/ Λουκάς Γεωργιάδης email: loukas@cs.uoi.gr Αλγόριθμος: Μέθοδος για την επίλυση ενός προβλήματος Δομή Δεδομένων: Μέθοδος αποθήκευσης

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

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

Εισαγωγή στους Αλγορίθμους Ενότητα 11η Εισαγωγή στους Αλγορίθμους Ενότητα 11η Διδάσκων Χρήστος Ζαρολιάγκης Καθηγητής Τμήμα Μηχανικών Η/Υ & Πληροφορικής Πανεπιστήμιο Πατρών Email: zaro@ceid.upatras.gr Δυναμικός Προγραμματισμός Σταθμισμένος Χρονοπρογραμματισμός

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

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

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

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

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

Εισαγωγή στους Αλγορίθμους Ενότητα 4η Εισαγωγή στους Αλγορίθμους Ενότητα 4η Διδάσκων Χρήστος Ζαρολιάγκης Καθηγητής Τμήμα Μηχανικών Η/Υ & Πληροφορικής Πανεπιστήμιο Πατρών Email: zaro@ceid.upatras.gr Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό

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

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

Εισαγωγή στους Αλγόριθμους Εισαγωγή στους Αλγόριθμους Εύη Παπαϊωάννου Σχολή Οργάνωσης και Διοίκησης Επιχειρήσεων Τμήμα Διαχείρισης Πολιτισμικού Περιβάλλοντος και Νέων Τεχνολογιών Σκοποί ενότητας Ασυμπτωτική ανάλυση Τίτλος Ενότητας

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

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

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

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

Κεφάλαιο 2. Βασικά στοιχεία ανάλυσης αλγορίθμων. Χρησιμοποιήθηκε υλικό από τις αγγλικές διαφάνειες του Kevin Wayne.

Κεφάλαιο 2. Βασικά στοιχεία ανάλυσης αλγορίθμων. Χρησιμοποιήθηκε υλικό από τις αγγλικές διαφάνειες του Kevin Wayne. Κεφάλαιο 2 Βασικά στοιχεία ανάλυσης αλγορίθμων Χρησιμοποιήθηκε υλικό από τις αγγλικές διαφάνειες του Kevin Wayne. 1 2.1 Υπολογιστική Επιλυσιμότητα "For me, great algorithms are the poetry of computation.

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

Δομές Δεδομένων. Λουκάς Γεωργιάδης. http://www.cs.uoi.gr/~loukas/courses/data_structures/ email: loukas@cs.uoi.gr

Δομές Δεδομένων. Λουκάς Γεωργιάδης. http://www.cs.uoi.gr/~loukas/courses/data_structures/ email: loukas@cs.uoi.gr Δομές Δεδομένων http://www.cs.uoi.gr/~loukas/courses/data_structures/ Λουκάς Γεωργιάδης email: loukas@cs.uoi.gr Αλγόριθμος: Μέθοδος για την επίλυση ενός προβλήματος Δεδομένα: Σύνολο από πληροφορίες που

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

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

Αλγόριθμοι και Πολυπλοκότητα Αλγόριθμοι και Πολυπλοκότητα Εισαγωγή Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Βιβλιογραφία Jon Kleinberg και Éva Tardos, Σχεδιασμός αλγορίθμων, Εκδόσεις Κλειδάριθμος,

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

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

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

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

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

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

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

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

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

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

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

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

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

εισαγωγικές έννοιες Παύλος Εφραιμίδης Δομές Δεδομένων και

εισαγωγικές έννοιες Παύλος Εφραιμίδης Δομές Δεδομένων και Παύλος Εφραιμίδης 1 περιεχόμενα ενθετική ταξινόμηση ανάλυση αλγορίθμων σχεδίαση αλγορίθμων 2 ενθετική ταξινόμηση 3 ενθετική ταξινόμηση Βασική αρχή: Επιλέγει ένα-έναταστοιχείατηςμηταξινομημένης ακολουθίας

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

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

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

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

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

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

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

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

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

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

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

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

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

ΔΥΑΔΙΚΗ ΑΝΑΖΗΤΗΣΗ & ΤΑΞΙΝΟΜΗΣΗ ΜΕ ΣΥΓΧΩΝΕΥΣΗ

ΔΥΑΔΙΚΗ ΑΝΑΖΗΤΗΣΗ & ΤΑΞΙΝΟΜΗΣΗ ΜΕ ΣΥΓΧΩΝΕΥΣΗ ΔΥΑΔΙΚΗ ΑΝΑΖΗΤΗΣΗ & ΤΑΞΙΝΟΜΗΣΗ ΜΕ ΣΥΓΧΩΝΕΥΣΗ (ΑΛΓΟΡΙΘΜΟΙ, Sanjoy Dasgupta, Christos Papadimitriou, Umesh Vazirani, σελ. 55-62 ΣΧΕΔΙΑΣΜΟΣ ΑΛΓΟΡΙΘΜΩΝ, Jon Kleinberg, Eva Tardos, Κεφάλαιο 5) Δυαδική αναζήτηση

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

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

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

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

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

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

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

Κεφάλαιο 2. Βασικά στοιχεία ανάλυσης αλγορίθµων. Χρησιµοποιήθηκε υλικό από τις αγγλικές διαφάνειες του Kevin Wayne.

Κεφάλαιο 2. Βασικά στοιχεία ανάλυσης αλγορίθµων. Χρησιµοποιήθηκε υλικό από τις αγγλικές διαφάνειες του Kevin Wayne. Κεφάλαιο 2 Βασικά στοιχεία ανάλυσης αλγορίθµων Χρησιµοποιήθηκε υλικό από τις αγγλικές διαφάνειες του Kevin Wayne. 1 2.1 Υπολογιστική Επιλυσιµότητα "For me, great algorithms are the poetry of computation.

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

Δομές Δεδομένων. Δημήτρης Μιχαήλ. Γραφήματα. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο

Δομές Δεδομένων. Δημήτρης Μιχαήλ. Γραφήματα. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Δομές Δεδομένων Γραφήματα Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Γραφήματα Κατευθυνόμενο Γράφημα Ένα κατευθυνόμενο γράφημα G είναι ένα ζευγάρι (V, E) όπου V είναι ένα

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

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

Εισαγωγή στους Αλγορίθμους Ενότητα 3η Εισαγωγή στους Αλγορίθμους Ενότητα 3η Διδάσκων Χρήστος Ζαρολιάγκης Καθηγητής Τμήμα Μηχανικών Η/Υ & Πληροφορικής Πανεπιστήμιο Πατρών Email: zaro@ceid.upatras.gr Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό

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

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

Εισαγωγή στους Αλγόριθμους Εισαγωγή στους Αλγόριθμους Ενότητα 16: Δυαδική αναζήτηση και ταξινόμηση με συγχώνευση Εύη Παπαϊωάννου Σχολή Οργάνωσης και Διοίκησης Επιχειρήσεων Τμήμα Διαχείρισης Πολιτισμικού Περιβάλλοντος και Νέων Τεχνολογιών

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

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

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

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

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

Εισαγωγή στους Αλγορίθμους Εισαγωγή στους Αλγορίθμους Ενότητα 5η Διδάσκων Χρήστος Ζαρολιάγκης Καθηγητής Τμήμα Μηχανικών Η/Υ & Πληροφορικής Πανεπιστήμιο Πατρών Email: zaro@ceid.upatras.gr Η Μέθοδος «Διαίρει & Βασίλευε» Η Μέθοδος

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

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

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

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

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

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

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

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

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

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

κεφάλαιο Βασικές Έννοιες Επιστήμη των Υπολογιστών

κεφάλαιο Βασικές Έννοιες Επιστήμη των Υπολογιστών κεφάλαιο 1 Βασικές Έννοιες Επιστήμη 9 1Εισαγωγή στις Αρχές της Επιστήμης των Η/Υ Στόχοι Στόχος του κεφαλαίου είναι οι μαθητές: να γνωρίσουν βασικές έννοιες και τομείς της Επιστήμης. Λέξεις κλειδιά Επιστήμη

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

Θέματα Προγραμματισμού Η/Υ

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

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

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

Δομές Δεδομένων (Data Structures) Δομές Δεδομένων (Data Structures) 3 ο Εξάμηνο Σπουδών Εαρινό Εξάμηνο 2010/11 Διδάσκων: Χαρμανδάρης Ευάγγελος, Τμήμα Εφαρμοσμένων Μαθηματικών, Πανεπιστήμιο Κρήτης email: vagelis@tem.uoc.gr, Ιστοσελίδα Μαθήματος:

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

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

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

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

ΑΛΓΟΡΙΘΜΟΙ ΚΑΙ ΑΛΓΟΡΙΘΜΟΙ ΠΟΛΥΠΛΟΚΟΤΗΤΑ ΚΑΙ ΠΟΛΥΠΛΟΚΟΤΗΤΑ

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

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

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

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

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

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

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ Π ΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ Π ΕΡΙΒΑΛΛΟΝ ΥΠΟΥΡΓΕΙΟ ΕΘΝΙΚΗΣ ΠΑΙΔΕΙΑΣ ΚΑΙ ΘΡΗΣΚΕΥΜΑΤΩΝ ΠΑΙΔΑΓΩΓΙΚΟ ΙΝΣΤΙΤΟΥΤΟ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ Π ΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ Π ΕΡΙΒΑΛΛΟΝ Κ Υ Κ Λ Ο Υ Π Λ Η Ρ Ο Φ Ο Ρ Ι Κ Η Σ Κ Α Ι Υ Π Η Ρ Ε Σ Ι Ω Ν Τ Ε Χ Ν Ο Λ Ο Γ Ι Κ Η

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

Ορθότητα Χωρική αποδοτικότητα. Βελτιστότητα. Θεωρητική ανάλυση Εμπειρική ανάλυση. Αλγόριθμοι - Τμήμα Πληροφορικής ΑΠΘ -4ο εξάμηνο 1

Ορθότητα Χωρική αποδοτικότητα. Βελτιστότητα. Θεωρητική ανάλυση Εμπειρική ανάλυση. Αλγόριθμοι - Τμήμα Πληροφορικής ΑΠΘ -4ο εξάμηνο 1 Ανάλυση Αλγορίθμων Θέματα Θέματα: Ορθότητα Χρονική αποδοτικότητα Χωρική αποδοτικότητα Βελτιστότητα Προσεγγίσεις: Θεωρητική ανάλυση Εμπειρική ανάλυση Αλγόριθμοι - Τμήμα Πληροφορικής ΑΠΘ -4ο εξάμηνο 1 Θεωρητική

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

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

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

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

Δομές Δεδομένων. Δημήτρης Μιχαήλ. Εισαγωγή. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο

Δομές Δεδομένων. Δημήτρης Μιχαήλ. Εισαγωγή. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Δομές Δεδομένων Εισαγωγή Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Βιβλιογραφία Robert Sedgewick, Αλγόριθμοι σε C, Μέρη 1-4 (Θεμελιώδεις Έννοιες, Δομές Δεδομένων, Ταξινόμηση,

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

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

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

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

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

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

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

Μεταβατικές διατάξεις Νέου Προγράμματος Σπουδών (ΝΠΣ) για τους φοιτητές εισαγωγής 2013 και πριν Υποχρεωτικά Μαθήματα

Μεταβατικές διατάξεις Νέου Προγράμματος Σπουδών (ΝΠΣ) για τους φοιτητές εισαγωγής 2013 και πριν Υποχρεωτικά Μαθήματα Μεταβατικές διατάξεις Νέου Προγράμματος Σπουδών (ΝΠΣ) για τους φοιτητές εισαγωγής 2013 και πριν Υποχρεωτικά Μαθήματα Οι φοιτητές παλαιότερων ετών (έτος εισαγωγής από 2013 και πριν) οι οποίο χρωστούν υποχρεωτικά

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

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

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

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

Διδακτική Προγραμματισμού. Χαρίκλεια Τσαλαπάτα 20/2/2012

Διδακτική Προγραμματισμού. Χαρίκλεια Τσαλαπάτα 20/2/2012 Διδακτική Προγραμματισμού Χαρίκλεια Τσαλαπάτα 20/2/2012 Διδακτική προγραμματισμού Παλαιότερα, η διδασκαλία του προγραμματισμού ταυτιζόταν με τη διδακτική της πληροφορικής Πλέον Η διδακτική της πληροφορικής

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

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

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

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

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

Εισαγωγή στους Αλγόριθμους Εισαγωγή στους Αλγόριθμους Εύη Παπαϊωάννου Σχολή Οργάνωσης και Διοίκησης Επιχειρήσεων Τμήμα Διαχείρισης Πολιτισμικού Περιβάλλοντος και Νέων Τεχνολογιών Σκοποί ενότητας Παρουσίαση και μελέτη αλγορίθμων

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

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

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

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

ΠΛΕ075: Προηγμένη Σχεδίαση Αλγορίθμων και Δομών Δεδομένων. Λουκάς Γεωργιάδης

ΠΛΕ075: Προηγμένη Σχεδίαση Αλγορίθμων και Δομών Δεδομένων. Λουκάς Γεωργιάδης ΠΛΕ075: Προηγμένη Σχεδίαση Αλγορίθμων και Δομών Δεδομένων Λουκάς Γεωργιάδης loukas@cs.uoi.gr www.cs.uoi.gr/~loukas Βασικές έννοιες και εφαρμογές Αλγόριθμος: Μέθοδος για την επίλυση ενός προβλήματος Δομή

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

Εισαγωγή στην Επιστήμη των Υπολογιστών

Εισαγωγή στην Επιστήμη των Υπολογιστών Εισαγωγή στην Επιστήμη των Υπολογιστών Ενότητα 1: Διαδικαστικά Τμήμα: Αγροτικής Οικονομίας & Ανάπτυξης Διδάσκων: Θεόδωρος Τσιλιγκιρίδης Μαθησιακοί Στόχοι Παρουσίαση της δομής και των περιεχομένων του μαθήματος.

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

Τεχνητή Νοημοσύνη. 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η έκδοση, Β. Γκιούρδας

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

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

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

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

ΚΕΦΑΛΑΙΟ 5. Κύκλος Ζωής Εφαρμογών ΕΝΟΤΗΤΑ 2. Εφαρμογές Πληροφορικής. Διδακτικές ενότητες 5.1 Πρόβλημα και υπολογιστής 5.2 Ανάπτυξη εφαρμογών

ΚΕΦΑΛΑΙΟ 5. Κύκλος Ζωής Εφαρμογών ΕΝΟΤΗΤΑ 2. Εφαρμογές Πληροφορικής. Διδακτικές ενότητες 5.1 Πρόβλημα και υπολογιστής 5.2 Ανάπτυξη εφαρμογών 44 Διδακτικές ενότητες 5.1 Πρόβλημα και υπολογιστής 5.2 Ανάπτυξη εφαρμογών Διδακτικοί στόχοι Σκοπός του κεφαλαίου είναι οι μαθητές να κατανοήσουν τα βήματα που ακολουθούνται κατά την ανάπτυξη μιας εφαρμογής.

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

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

Εισαγωγή στους Αλγορίθμους Φροντιστήριο 8 Εισαγωγή στους Αλγορίθμους Φροντιστήριο 8 Διδάσκων Χρήστος Ζαρολιάγκης Καθηγητής Τμήμα Μηχανικών Η/Υ & Πληροφορικής Πανεπιστήμιο Πατρών Email: zaro@ceid.upatras.gr Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό

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

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

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

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

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

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

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

ΠΛΗΡΟΦΟΡΙΚΗ Ι (MATLAB) Ενότητα 1

ΠΛΗΡΟΦΟΡΙΚΗ Ι (MATLAB) Ενότητα 1 ΠΛΗΡΟΦΟΡΙΚΗ Ι (MATLAB) Ενότητα 1 Σημειώσεις βασισμένες στο βιβλίο Το MATLAB στην Υπολογιστική Επιστήμη και Τεχνολογία Μια Εισαγωγή Περιεχόμενο μαθήματος: Αλγοριθμική επίλυση προβλημάτων Προγραμματισμός

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

ΓΕ0170 -Αλγόριθμοι και Προηγμένες Προγραμματικές Τεχνικές. Εισαγωγή. Νίκος Αθανάσης.

ΓΕ0170 -Αλγόριθμοι και Προηγμένες Προγραμματικές Τεχνικές. Εισαγωγή. Νίκος Αθανάσης. ΓΕ0170 -Αλγόριθμοι και Προηγμένες Προγραμματικές Τεχνικές Εισαγωγή Νίκος Αθανάσης e-mail: athanasis@geo.aegean.gr Συνοπτικά Σκοπός του μαθήματος Στόχοι του μαθήματος Αντικείμενο του μαθήματος Κανονισμός

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

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

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

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

ο ρόλος των αλγορίθμων στις υπολογιστικές διαδικασίες Παύλος Εφραιμίδης Δομές Δεδομένων και Αλγόριθμοι

ο ρόλος των αλγορίθμων στις υπολογιστικές διαδικασίες Παύλος Εφραιμίδης Δομές Δεδομένων και Αλγόριθμοι Παύλος Εφραιμίδης 1 περιεχόμενα αλγόριθμοι τεχνολογία αλγορίθμων 2 αλγόριθμοι αλγόριθμος: οποιαδήποτε καλά ορισμένη υπολογιστική διαδικασία που δέχεται κάποια τιμή ή κάποιο σύνολο τιμών, και δίνεικάποιατιμήήκάποιοσύνολοτιμώνως

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

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

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

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

Εισαγωγή στον Προγ/μό Υπολογιστών. Διάλεξη 0

Εισαγωγή στον Προγ/μό Υπολογιστών. Διάλεξη 0 Εισαγωγή στον Προγ/μό Υπολογιστών Διάλεξη 0 Καλωσήρθατε στην «Εισαγωγή στον Καλή αρχή! Προγραμματισμό Υπολογιστών» Εισαγωγική διάλεξη 1. Πληροφορίες για το μάθημα 2. Βασικές έννοιες Πληροφορική, αλγόριθμος

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

viii 20 Δένδρα van Emde Boas 543

viii 20 Δένδρα van Emde Boas 543 Περιεχόμενα Πρόλογος xi I Θεμελιώδεις έννοιες Εισαγωγή 3 1 Ο ρόλος των αλγορίθμων στις υπολογιστικές διαδικασίες 5 1.1 Αλγόριθμοι 5 1.2 Οι αλγόριθμοι σαν τεχνολογία 12 2 Προκαταρκτικές έννοιες και παρατηρήσεις

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

ιακριτές Μέθοδοι για την Επιστήμη των Υπολογιστών

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

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

Δυναμικές Δομές Δεδομένων Λίστες Δένδρα - Γράφοι

Δυναμικές Δομές Δεδομένων Λίστες Δένδρα - Γράφοι Δυναμικές Δομές Δεδομένων Λίστες Δένδρα - Γράφοι Κ Ο Τ Ι Ν Η Ι Σ Α Β Ε Λ Λ Α Ε Κ Π Α Ι Δ Ε Υ Τ Ι Κ Ο Σ Π Λ Η Ρ Ο Φ Ο Ρ Ι Κ Η Σ Π Ε 8 6 Ν Ε Ι Ρ Ο Σ Α Ν Τ Ω ΝΙ Ο Σ Ε Κ Π Α Ι Δ Ε Υ Τ Ι Κ Ο Σ Π Λ Η Ρ Ο Φ Ο

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

Εισαγωγικά. 1 η Εβδομάδα. Κάθε Τρίτη (17:00-20:00) και Τετάρτη (13:00 15:00) στην αίθουσα Ι5. 4 ώρες Θεωρία (ΤΡ : 1η-2η ώρα, ΤΕ : 1η-2η ώρα)

Εισαγωγικά. 1 η Εβδομάδα. Κάθε Τρίτη (17:00-20:00) και Τετάρτη (13:00 15:00) στην αίθουσα Ι5. 4 ώρες Θεωρία (ΤΡ : 1η-2η ώρα, ΤΕ : 1η-2η ώρα) ΜΥΥ204 Διακριτά Μαθηματικά Μθ άι Εισαγωγικά 1 η Εβδομάδα Άνοιξη 2015 Τμήμα Μηχανικών Η/Υ & Πληροφορικής Παν. Ιωαννίνων Μερικά Οργανωτικά Θέματα ιδάσκων: ιαλέξεις: Κάθε Τρίτη (17:00-20:00) και Τετάρτη (13:00

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

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

Εισαγωγή στους Αλγορίθμους Φροντιστήριο 5 Εισαγωγή στους Αλγορίθμους Φροντιστήριο 5 Διδάσκων Χρήστος Ζαρολιάγκης Καθηγητής Τμήμα Μηχανικών Η/Υ & Πληροφορικής Πανεπιστήμιο Πατρών Email: zaro@ceid.upatras.gr Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό

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

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

ΤΕΧΝΟΛΟΓΙΚΗ ΚΑΤΕΥΘΥΝΣΗ Β ΛΥΚΕΙΟΥ ΜΑΘΗΜΑ: ΤΕΧΝΟΛΟΓΙΑ ΕΠΙΚΟΙΝΩΝΙΩΝ ΕΡΓΑΣΙΑ Α ΤΕΤΡΑΜΗΝΟΥ ΤΟΥ ΜΑΘΗΤΗ ΠΑΠΑΝΙΚΟΛΑΟΥ ΓΙΩΡΓΟΥ ΤΕΧΝΟΛΟΓΙΚΗ ΚΑΤΕΥΘΥΝΣΗ Β ΛΥΚΕΙΟΥ ΜΑΘΗΜΑ: ΤΕΧΝΟΛΟΓΙΑ ΕΠΙΚΟΙΝΩΝΙΩΝ ΕΡΓΑΣΙΑ Α ΤΕΤΡΑΜΗΝΟΥ ΤΟΥ ΜΑΘΗΤΗ ΠΑΠΑΝΙΚΟΛΑΟΥ ΓΙΩΡΓΟΥ ΘΕΜΑ: Η ΑΝΑΛΥΤΙΚΗ ΜΗΧΑΝΗ ΤΟΥ CHARLES BABBAGE ΠΡΟΤΥΠΟ ΠΕΙΡΑΜΑΤΙΚΟ ΛΥΚΕΙΟ BARBAKEIOΥ

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

ΠΛΗΡΟΦΟΡΙΚΗ: ΥΠΟΛΟΓΙΣΤΕΣ & ΤΕΧΝΟΛΟΓΙΕΣ ΔΙΑΔΙΚΤΥΟΥ

ΠΛΗΡΟΦΟΡΙΚΗ: ΥΠΟΛΟΓΙΣΤΕΣ & ΤΕΧΝΟΛΟΓΙΕΣ ΔΙΑΔΙΚΤΥΟΥ ΠΛΗΡΟΦΟΡΙΚΗ: ΥΠΟΛΟΓΙΣΤΕΣ & ΤΕΧΝΟΛΟΓΙΕΣ ΔΙΑΔΙΚΤΥΟΥ kv@hua.gr Στόχος Μαθήματος Εισαγωγή σε Βασικούς Όρους Πληροφορικής και Τηλεματικής. Εφαρμογές Τηλεματικής. Αναφορά στις κοινωνικές επιπτώσεις των Υπολογιστών.

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

Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές

Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές 1 ο Εξάμηνο Σπουδών Χειμερινό Εξάμηνο 2012/13 Τμήμα Εφαρμοσμένων Μαθηματικών, Πανεπιστήμιο Κρήτης Διδάσκων: Χαρμανδάρης Ευάγγελος, email: vagelis@tem.uoc.gr, Ιστοσελίδα

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

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

περιεχόμενα υπολογιστικό πρόβλημα αλγόριθμοι παράδειγμα ταξινόμησης ταξινόμηση αλγόριθμοι τεχνολογία αλγορίθμων Παύλος Εφραιμίδης περιεχόμενα αλγόριθμοι τεχνολογία αλγορίθμων Παύλος Εφραιμίδης 1 2 αλγόριθμοι αλγόριθμος: οποιαδήποτε καλά ορισμένη υπολογιστική διαδικασία που δέχεταικάποιατιμήήκάποιοσύνολοτιμών, και δίνει κάποια τιμή

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

Κατώτερα φράγματα Κατώτερο φράγμα: εκτίμηση της ελάχιστης εργασίας που απαιτείται για την επίλυση ενός προβλήματος. Παραδείγματα: Αριθμός συγκρίσεων π

Κατώτερα φράγματα Κατώτερο φράγμα: εκτίμηση της ελάχιστης εργασίας που απαιτείται για την επίλυση ενός προβλήματος. Παραδείγματα: Αριθμός συγκρίσεων π Περιορισμοί Αλγοριθμικής Ισχύος Κατηγοριοποίηση πολυπλοκοτήτων Κατώτερα φράγματα Κατώτερο φράγμα: εκτίμηση της ελάχιστης εργασίας που απαιτείται για την επίλυση ενός προβλήματος. Παραδείγματα: Αριθμός

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

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

Δομές Δεδομένων και Αλγόριθμοι Δομές Δεδομένων και Αλγόριθμοι Χρήστος Γκόγκος ΤΕΙ Ηπείρου Χειμερινό Εξάμηνο 2014-2015 Παρουσίαση 1 Εισαγωγή 1 / 14 Δομές Δεδομένων και Αλγόριθμοι Δομή Δεδομένων Δομή δεδομένων είναι ένα σύνολο αποθηκευμένων

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

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

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

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

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

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

Πανεπιστήμιο Δυτικής Μακεδονίας. Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών. Διακριτά Μαθηματικά. Ενότητα 4: Εισαγωγή / Σύνολα

Πανεπιστήμιο Δυτικής Μακεδονίας. Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών. Διακριτά Μαθηματικά. Ενότητα 4: Εισαγωγή / Σύνολα Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Διακριτά Μαθηματικά Ενότητα 4: Εισαγωγή / Σύνολα Αν. Καθηγητής Κ. Στεργίου e-mail: kstergiou@uowm.gr Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Άδειες

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

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

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

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

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

Δομές Δεδομένων (Data Structures) Δομές Δεδομένων (Data Structures) Γραμμικές Λίστες Βασικές Έννοιες Βασικές Έννοιες. Αναπαράσταση με τύπο και με δείκτη. Γραμμικές Λίστες. Βασικές Λειτουργίες. Δομές Δεδομένων: Βασικές Έννοιες Αντικείμενο

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

ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 8 & 9 11/10/07

ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 8 & 9 11/10/07 ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 8 & 9 11/10/07 Τμήμα θεωρίας: Α.Μ. 8, 9 Κάθε Πέμπτη, 11πμ-2μμ, ΑΜΦ23. Διδάσκων: Ντίνος Φερεντίνος Γραφείο 118 email: kpf3@cornell.edu Μάθημα: Θεωρία + προαιρετικό

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

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

ΑΝΑΛΥΤΙΚΟ ΠΡΟΓΡΑΜΜΑ ΕΞΕΤΑΣΗΣ Το αναλυτικό πρόγραμμα στο οποίο βασίζεται η εξέταση είναι το αναλυτικό πρόγραμμα του Μαθήματος Κατεύθυνσης Πληροφορική Επιστήμη Η.Υ της Γ Ενιαίου Λυκείου Γενικός Σκοπός Το μάθημα κατεύθυνσης της στη Γ'

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

ΠΕΡΙΕΧΟΜΕΝΑ 1 ΚΕΦΑΛΑΙΟ ΟΙ ΥΠΟΛΟΓΙΣΤΕΣ ΑΠΟ ΤΗΝ ΑΡΧΑΙΟΤΗΤΑ ΜΕΧΡΙ ΣΗΜΕΡΑ Ιστορική αναδρομή Υπολογιστικές μηχανές

ΠΕΡΙΕΧΟΜΕΝΑ 1 ΚΕΦΑΛΑΙΟ ΟΙ ΥΠΟΛΟΓΙΣΤΕΣ ΑΠΟ ΤΗΝ ΑΡΧΑΙΟΤΗΤΑ ΜΕΧΡΙ ΣΗΜΕΡΑ Ιστορική αναδρομή Υπολογιστικές μηχανές ΠΕΡΙΕΧΟΜΕΝΑ 1 ΚΕΦΑΛΑΙΟ 1... 11 ΟΙ ΥΠΟΛΟΓΙΣΤΕΣ ΑΠΟ ΤΗΝ ΑΡΧΑΙΟΤΗΤΑ ΜΕΧΡΙ... 11 ΣΗΜΕΡΑ... 11 1.1 Ιστορική αναδρομή... 13 1.1.1 Υπολογιστικές μηχανές στην αρχαιότητα... 13 1.1.2 17ο έως τον 19ο... 14 1.1.3

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

Σήμερα. Εργαστήρια Τεχνικών Προγραμματισμού. Διαδικαστικά 19/3/2015. ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ και Τεχνικές Προγραμματισμού

Σήμερα. Εργαστήρια Τεχνικών Προγραμματισμού. Διαδικαστικά 19/3/2015. ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ και Τεχνικές Προγραμματισμού ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ και Τεχνικές Προγραμματισμού http://eclass.di.uoa.gr/d419/ domes@di.uoa.gr Τμήμα Α - A2 Τετάρτη 11-13 και Πέμπτη 11-13 Τμήμα Β -Α2 Τετάρτη 15-17 και Πέμπτη 16-18 Παρακολουθείτε όποιο Τμήμα

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

ΠΙΝΑΚΑΣ ΠΕΡΙΕΧΟΜΕΝΩΝ

ΠΙΝΑΚΑΣ ΠΕΡΙΕΧΟΜΕΝΩΝ ΠΙΝΑΚΑΣ ΠΕΡΙΕΧΟΜΕΝΩΝ Πρόλογος... 11 Μέρος Α: Στοιχεία Αλγοριθμικής... 15 1 Επίλυση προβλημάτων με Η/Υ... 19 1.1 Εισαγωγή... 19 1.2 Αλγόριθμοι-αλγοριθμικά προβλήματα... 20 1.3 Το μαθηματικό μοντέλο... 26

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

ΠΛΗΡΟΦΟΡΙΚΗ Ι Ενότητα 1: Εισαγωγή

ΠΛΗΡΟΦΟΡΙΚΗ Ι Ενότητα 1: Εισαγωγή ΠΛΗΡΟΦΟΡΙΚΗ Ι Ενότητα 1: Εισαγωγή Μιχάλης Δρακόπουλος Σχολή Θετικών επιστημών Τμήμα Μαθηματικών ΠΛΗΡΟΦΟΡΙΚΗ Ι (MATLAB) Ενότητα 1 Σημειώσεις βασισμένες στο βιβλίο Το MATLAB στην Υπολογιστική Επιστήμη και

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

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

Πρόλογος. Πρόλογος 13. Πώς χρησιμοποείται αυτό το βιβλίο 17 Πρόλογος Πρόλογος 13 Πώς χρησιμοποείται αυτό το βιβλίο 17 1 Η λογική σκέψη 19 1.1 Τυπική λογική 20 1.1.1 Διερευνητικά προβλήματα 21 1.1.2 Σύνδεσμοι και προτάσεις 21 1.1.3 Οι πίνακες αλήθειας 23 1.1.4 Λογικές

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

Initialize each person to be free. while (some man is free and hasn't proposed to every woman) { Choose such a man m w = 1 st woman on m's list to

Initialize each person to be free. while (some man is free and hasn't proposed to every woman) { Choose such a man m w = 1 st woman on m's list to Κεφάλαιο 2 Δοµές Δεδοµένων Ι Χρησιµοποιήθηκε υλικό από τις αγγλικές διαφάνειες του Kevin Wayne. 1 Δοµές Δεδοµένων Ι Στην ενότητα αυτή θα γνωρίσουµε ορισµένες Δοµές Δεδοµένων και θα τις χρησιµοποιήσουµε

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

Τεχνολογίες Υλοποίησης Αλγορίθµων

Τεχνολογίες Υλοποίησης Αλγορίθµων Τεχνολογίες Υλοποίησης Αλγορίθµων Χρήστος Ζαρολιάγκης Καθηγητής Τµήµα Μηχ/κων Η/Υ & Πληροφορικής Πανεπιστήµιο Πατρών email: zaro@ceid.upatras.gr Ενότητα 2 1 / 26 Ενότητα 2 Τεχνολογίες Υλοποίησης Αλγορίθµων

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

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

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

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