Στόχοι
Σκοπός του μαθήματος είναι η παρουσίαση τεχνικών, ιδιοτήτων, υλοποιήσεων και εφαρμογών βασικών αλλά και προηγμένων αλγορίθμων και δομών δεδομένων. Θα συζητηθούν επίσης: (α) ζητήματα δημιουργίας περιβαλλόντων και βιβλιοθηκών λογισμικού που επιτρέπουν την εύκολη υλοποίηση και πειραματική αξιολόγηση αλγορίθμων, και (β) ζητήματα μεθοδολογίας σε ότι αφορά την πειραματική έρευνα αλγορίθμων και δομών δεδομένων, καθώς και σε ότι αφορά τη διαδικασία μετατροπής των απαιτήσεων του χρήστη σε αποδοτικές αλγοριθμικές λύσεις και υλοποιήσεις. Σαν πραγματικό περιβάλλον υλοποίησης, χρησιμοποιείται η γλώσσα C++ μαζί με τις βιβλιοθήκες LEDA, STL και BOOST.
Διδασκαλία και Εργαστήριο
- Διαλέξεις (ακαδ. έτος 2024-2025): Τετάρτη, 11:00 - 13:00 Δ1 [Έναρξη: 26.02.2025]
- Εργαστήριο/Φροντιστήριο (ακαδ. έτος 2024-2025): Τρίτη, 11:00 - 13:00 Δ1 και ΥΚ
Βιβλιογραφία
Βασικά Συγγράμματα
- Τεχνολογίες Υλοποίησης Αλγορίθμων
- K. Mehlhorn and S. Naeher, LEDA: A platform for combinatorial and geometric computing, Cambridge University Press, 1999.
- M. Mueller-Hannemanni and S. Schirra, Algorithm Engineering - Bridging the Gap between Algorithm Theory and Practice, Springer 2010.
- C.C. McGeoch, A Guide to Experimental Algorithmics, Cambridge University Press, 2012.
- Υλοποίηση Αλγορίθμων και Δομών Δεδομένων
- J. Siek, L.Q. Lee, and A. Lumsdaine, The Boost Graph Library, Addison-Wesley, 2002.
- A.Alexandrescu, Modern C++ design: Programming and Design Patterns Applied, Addison-Wesley, 2001.
- M.A. Weiss, Data structures and problem solving with C++, 2nd Edition, Addison-Wesley, 2000.
- H Γλώσσα C++
- A.Koenig and B.Moo, Accelerated C++, Addison-Wesley, 2000.
- S.B. Lippman and J. Lajoie, C++ Primer, 3rd Edition, Addison-Wesley, 1998.
Βοηθητικές Αναφορές
- Υλοποίηση Αλγορίθμων και Δομών Δεδομένων
- T. Budd, Data structures in C++ using the standard template library, Addison-Wesley, 1998.
- F. Carrano, P. Helman, and R. Veroff, Data abstraction and problem solving with C++, 2nd Edition, Addison-Wesley, 1998.
- N.Jossutis, The C++ standard library: a tutorial and a reference, Addison Wesley, 1999.
- E. Horowitz, S. Sahni, and D. Mehta, Fundamentals of data structures in C++, Computer Science Press, 1995.
- S. Sahni, Data structures, algorithms and applications in C++, WCB/McGraw-Hill, 1998.
- C++ και Αντικειμενοστρεφής Προγραμματισμός
- T. Budd, An Introduction to Object-Oriented Programming, 2nd Edition, Addison-Wesley, 1997.
- H.M. Deitel and P.J. Deitel, C++ : How to Program, 2nd Edition, Prentice-Hall, 1998.
- E. Gamma, R. Helms, R. Johnson, and J. Vlissides, Design Patterns: Elements of Reusable Object-Oriented Software, Addison-Wesley, 1995.
- S. Meyers, Effective C++, 2nd Edition, Addison-Wesley, 1997.
- B. Stroustrup, The C++ Programming Language, 3rd Edition, Addison-Wesley, 1997.
Ηλεκτρονική Τάξη - eclass
Στον σύνδεσμο Τεχνολογίες Υλοποίησης Αλγορίθμων 2024-2025 (ΝE5078), της πλατφόρμας eclass του Πανεπιστημίου Πατρών, έχει δημιουργηθεί η η-τάξη του μαθήματος. Εκει θα βρείτε περισσότερες πληροφορίες για το μάθημα, την ύλη, το υλικό των διαλέξεων, καθώς και των φροντιστηριακών και εργαστηριακών ασκήσεων.
Όλη η επικοινωνία που αφορά στο μάθημα, τα διαδικαστικά διεξαγωγής του, καθώς και τις εξετάσεις θα πραγματοποιείται μέσω της η-τάξης του μαθήματος. Για το λόγο αυτό, απαιτείται εγγραφή στο χώρο της η-τάξης του μαθήματος το συντομότερο.