Εισαγωγή στους Αλγόριθμους
Εύη Παπαϊωάννου
Ένας αλγόριθμος είναι μια ακριβής "συνταγή" που καθορίζει την ακολουθία βημάτων που απαιτούνται για να λυθεί ένα πρόβλημα. Στόχος του μαθήματος είναι η εξοικείωση με βασικά χαρακτηριστικά (που δεν είναι εξαιρετικά δύσκολα ή πολύπλοκα) μεθόδων επίλυσης προβλημάτων καθώς και η κατανόηση θεμελιωδών και πρακτικά χρήσιμων σχετικών εννοιών.
- Αναζητώντας κάποια πληροφορία στον Παγκόσμιο Ιστό, έχει τύχει να καταλήξετε από εκατομμύρια έγγραφα σε 2 ή 3 που είναι σχετικότερα με αυτό που ψάχνετε;
- Έχετε αποθηκεύσει ή μεταδώσει μεγάλες ποσότητες πληροφορίας χωρίς ούτε ένα λαθάκι ? παρά τις ηλεκτρομαγνητικές παρεμβολές που επηρεάζουν όλες τις ηλεκτρονικές συσκευές;
- Έχετε ολοκληρώσει επιτυχώς μια ηλεκτρονική τραπεζική συναλλαγή, ακόμα κι αν χιλιάδες άλλοι πελάτες χρησιμοποιούν ταυτόχρονα τον ίδιο εξυπηρετητή (server);
- Έχετε στείλει κάποια απόρρητη πληροφορία (για παράδειγμα, τον αριθμό της πιστωτικής σας κάρτας) ασφαλώς πάνω από καλώδια που είναι σε «κοινή θέα» πολλών άλλων υπολογιστών;
- Έχετε χρησιμοποιήσει συμπίεση για να μικρύνετε το μέγεθος μιας εικόνας προκειμένου να την επισυνάψετε και να την στείλετε με e-mail;
- Ή ? χωρίς ίσως καν να το σκεφτείτε ? έχετε χρησιμοποιήσει τεχνητή νοημοσύνη σε κάποια φορητή συσκευή (π.χ., κινητό τηλέφωνο) που διορθώνει από μόνη της το κείμενο που πληκτρολογείτε στο μικροσκοπικό της πληκτρολόγιο;
Πίσω από αυτές τις - δεδομένες πλέον - καθημερινές δραστηριότητες του σύγχρονου πολιτισμού υπάρχουν απλές, εντυπωσιακές ιδέες δηλ. "αλγόριθμοι"...
Αντικείμενο του μαθήματος είναι (1) η περιγραφή και ανάλυση τέτοιων θεμελιωδών τεχνικών (δηλ., αλγορίθμων) που τις συναντάμε ? σχεδόν χωρίς να το αντιλαμβανόμαστε ? καθημερινά στη ζωή και τις δραστηριότητές μας και (2) η εισαγωγή στην ανάλυση αλγορίθμων για μελέτη ζητημάτων ορθότητας και απόδοσης, δηλ., για να διαπιστώνουμε αν οι αλγόριθμοι που σχεδιάζουμε λειτουργούν σωστά και με τι κόστος σε χρόνο, χώρο και λοιπούς πόρους.
ΛιγότεραΈνας αλγόριθμος είναι μια ακριβής "συνταγή" που καθορίζει την ακολουθία βημάτων που απαιτούνται για να λυθεί ένα πρόβλημα. Στόχος του μαθήματος είναι η εξοικείωση με βασικά χαρακτηριστικά (που δεν είναι εξαιρετικά δύσκολα ή πολύπλοκα) μεθόδων επίλυσης προβλημάτων καθώς και η κατανόηση θεμελιωδών και πρακτικά χρήσιμων σχετικών εννοιών.
- Αναζητώντας κάποια πληροφορία στον Παγκόσμιο Ιστό, έχει τύχει να καταλήξετε από εκατομμύρια έγγραφα σε 2 ή 3 που είναι σχετικότερα με αυτό που ψάχνετε;
- Έχετε αποθηκεύσει ή μεταδώσει μεγάλες ποσότητες πληροφορίας χωρίς ούτε ένα λαθάκι ? παρά τις ηλεκτρομαγνητικές παρεμβολές που επηρεάζουν όλες τις ηλεκτρονικές συσκευές;
- Έχετε ολοκληρώσει επιτυχώς μια ηλεκτρονική τραπεζική συναλλαγή, ακόμα κι αν χιλιάδες άλλοι πελάτες χρησιμοποιούν ταυτόχρονα τον ίδιο εξυπηρετητή (server);
- Έχετε στείλει κάποια απόρρητη πληροφορία (για παράδειγμα, τον αριθμό της πιστωτικής σας κάρτας) ασφαλώς πάνω από καλώδια που είναι σε «κοινή θέα» πολλών άλλων υπολογιστών;
- Έχετε
Ένας αλγόριθμος είναι μια ακριβής "συνταγή" που καθορίζει την ακολουθία βημάτων που απαιτούνται για να λυθεί ένα πρόβλημα. Στόχος του μαθήματος είναι η εξοικείωση με βασικά χαρακτηριστικά (που δεν είναι εξαιρετικά δύσκολα ή πολύπλοκα) μεθόδων επίλυσης προβλημάτων καθώς και η κατανόηση θεμελιωδών και πρακτικά χρήσιμων σχετικών εννοιών.
- Αναζητώντας κάποια πληροφορία στον Παγκόσμιο Ιστό, έχει τύχει να καταλήξετε από εκατομμύρια έγγραφα σε 2 ή 3 που είναι σχετικότερα με αυτό που ψάχνετε;
- Έχετε αποθηκεύσει ή μεταδώσει μεγάλες ποσότητες πληροφορίας χωρίς ούτε ένα λαθάκι ? παρά τις ηλεκτρομαγνητικές παρεμβολές που επηρεάζουν όλες τις ηλεκτρονικές συσκευές;
- Έχετε ολοκληρώσει επιτυχώς μια ηλεκτρονική τραπεζική συναλλαγή, ακόμα κι αν χιλιάδες άλλοι πελάτες χρησιμοποιούν ταυτόχρονα τον ίδιο εξυπηρετητή (server);
- Έχετε στείλει κάποια απόρρητη πληροφορία (για παράδειγμα, τον αριθμό της πιστωτικής σας κάρτας) ασφαλώς πάνω από καλώδια που είναι σε «κοινή θέα» πολλών άλλων υπολογιστών;
- Έχετε
Αλγόριθμοι...; Γιατί να ασχοληθούμε...;
Εισαγωγή
Κώδικες Διόρθωσης Σφαλμάτων(Error-Correcting Codes): σφάλματα που αυτο-διορθώνονται?
Αναγνώριση Προτύπων(Pattern Recognition): μαθαίνοντας από την εμπειρία?
Βάσεις Δεδομένων(Databases): αναζητώντας τη συνέπεια?
Όρια υπολογισμού
Πρόσθεση και Πολλαπλασιασμός
Διάσχιση γραφημάτων
Εύρεση ελάχιστων μονοπατιών σε γραφήματα
Εύρεση μέγιστου κοινού διαιρέτη
Δυαδική αναζήτηση και ταξινόμηση με συγχώνευση
Ανοικτό Ακαδ. Μάθημα
Αρ. Επισκέψεων : 1513
Αρ. Προβολών : 17241