Δομές δεδομένων
Παπαδόπουλος Απόστολος
Ο βασικός στόχος του μαθήματος είναι η μελέτη των βασικών δομών δεδομένων και αλγορίθμων. Η μελέτη περιλαμβάνει τη θεωρητική ανάλυσή τους καθώς επίσης και τις εφαρμογές της κάθε δομής. Πιο συγκεκριμένα, μελετώνται: πίνακες, λίστες, στοίβες, ουρές προτεραιότητας, δένδρα αναζήτησης, κατακερματισμός, γραφήματα, αναζήτηση, ταξινόμηση, επίλυση προβλημάτων και βασικοί αλγόριθμοι.
Λιγότερα
Ο βασικός στόχος του μαθήματος είναι η μελέτη των βασικών δομών δεδομένων και αλγορίθμων. Η μελέτη περιλαμβάνει τη θεωρητική ανάλυσή τους καθώς επίσης και τις εφαρμογές της κάθε δομής. Πιο συγκεκριμένα, μελετώνται: πίνακες, λίστες, στοίβες, ουρές προτεραιότητας, δένδρα αναζήτησης, κατακερματισμός, γραφήματα, αναζήτηση, ταξινόμηση, επίλυση προβλημάτων και βασικοί αλγόριθμοι.
Ο βασικός στόχος του μαθήματος είναι η μελέτη των βασικών δομών δεδομένων και αλγορίθμων. Η μελέτη περιλαμβάνει τη θεωρητική ανάλυσή τους καθώς επίσης και τις εφαρμογές της κάθε δομής. Πιο συγκεκριμένα, μελετώνται: πίνακες, λίστες, στοίβες, ουρές προτεραιότητας, δένδρα αναζήτησης, κατακερματισμός, γραφήματα, αναζήτηση, ταξινόμηση, επίλυση προβλημάτων και βασικοί αλγόριθμοι.
Περίγραμμα
Διδάσκοντες
Διδάσκων: Απόστολος Παπαδόπουλος, επίκουρος καθηγητής
http://delab.csd.auth.gr/~apostol/
Συνεργάτης ανάπτυξης περιεχομένου: Απόστολος Μαυρίδης
Μαθησιακοί στόχοι
Σκοπός του μαθήματος είναι οι φοιτητές να μάθουν τις βασικές δομές δεδομένων κύριας μνήμης και πως αυτές χρησιμοποιούνται σε αλγορίθμους για την αποδοτική επίλυση προβλημάτων. Επίσης, οι φοιτητές εκπονούν εργασία σε γλώσσα C++ η οποία περιέχει την υλοποίηση δομών και αλγορίθμων για την επίλυση συγκεκριμένων προβλημάτων.
Προαπαιτούμενα
Βασικές γνώσεις προγραμματισμού με C++
Βιβλιογραφία
- S. Sahni, Μετάφραση Ι. Μανωλόπουλος και Ι. Θεοδωρίδης, Δομές Δεδομένων, Αλγόριθμοι και Εφαρμογές στη C++, Εκδόσεις Τζιόλα, 2004. Στην ιστοσελίδα του μαθήματος δίνονται επίσης επιπλέον σημειώσεις και σύνδεσμοι για συγκεκριμένα θέματα, για την καλύτερη κατανόηση των εννοιών.
- Π. Μποζάνης. Αλγόριθμοι: Σχεδιασμός και Ανάλυση. Εκδόσεις Τζιόλα, Θεσσαλονίκη, 2003.
- Γ.Φ. Γεωργακόπουλος. Δομές Δεδομένων, Έννοιες, Τεχνικές και Αλγόριθμοι. Πανεπιστημιακές Εκδόσεις Κρήτης
Επιπλέον συνιστώμενη βιβλιογραφία:
T.H. Cormen, C.E. Leiserson, R.L. Rivest, C. Stein. Introduction to Algorithms (2nd Edition). The MIT Press, 2003. K. Mehlhorn. Data Structures and Algorithms. Springer Verlag, EATCS Monographs, 1984.
Διδάσκων: Απόστολος Παπαδόπουλος, επίκουρος καθηγητής
http://delab.csd.auth.gr/~apostol/
Συνεργάτης ανάπτυξης περιεχομένου: Απόστολος Μαυρίδης
Σκοπός του μαθήματος είναι οι φοιτητές να μάθουν τις βασικές δομές δεδομένων κύριας μνήμης και πως αυτές χρησιμοποιούνται σε αλγορίθμους για την αποδοτική επίλυση προβλημάτων. Επίσης, οι φοιτητές εκπονούν εργασία σε γλώσσα C++ η οποία περιέχει την υλοποίηση δομών και αλγορίθμων για την επίλυση συγκεκριμένων προβλημάτων.
Βασικές γνώσεις προγραμματισμού με C++
- S. Sahni, Μετάφραση Ι. Μανωλόπουλος και Ι. Θεοδωρίδης, Δομές Δεδομένων, Αλγόριθμοι και Εφαρμογές στη C++, Εκδόσεις Τζιόλα, 2004. Στην ιστοσελίδα του μαθήματος δίνονται επίσης επιπλέον σημειώσεις και σύνδεσμοι για συγκεκριμένα θέματα, για την καλύτερη κατανόηση των εννοιών.
- Π. Μποζάνης. Αλγόριθμοι: Σχεδιασμός και Ανάλυση. Εκδόσεις Τζιόλα, Θεσσαλονίκη, 2003.
- Γ.Φ. Γεωργακόπουλος. Δομές Δεδομένων, Έννοιες, Τεχνικές και Αλγόριθμοι. Πανεπιστημιακές Εκδόσεις Κρήτης
Επιπλέον συνιστώμενη βιβλιογραφία:
T.H. Cormen, C.E. Leiserson, R.L. Rivest, C. Stein. Introduction to Algorithms (2nd Edition). The MIT Press, 2003. K. Mehlhorn. Data Structures and Algorithms. Springer Verlag, EATCS Monographs, 1984.
Εισαγωγή στις δομές δεδομένων
Λέξεις κλειδιά: Εισαγωγικά Θέματα, Δομές Δεδομένων, Hardware
Θέματα απόδοσης αλγορίθμων: ασυμπτωτική ανάλυση, συμβολισμοί Ο,Ω,Θ, χειρότερη, μέση και καλύτερη περίπτωση.
Λέξεις κλειδιά: Απόδοση Αλγορίθμων, Μέτρηση Απόδοσης, Ασυμπτωτική Ανάλυση, Ρυθμός Αύξησης, Συμβολισμός Ο, Συμβολισμός Ω, Συμβολισμός Θ, Χειρότερη Περίπτωση, Μέση Περίπτωση, Καλύτερη Περίπτωση.
Στοίβες: Λειτουργία της στοίβας, επιτρεπτές πράξεις και μορφές οργάνωσης (με πίνακες, με δυναμική δέσμευση μνήμης). Εφαρμογές: μετατροπή infix σε postfix, εύρεση μονοπατιού σε λαβύρινθο.
Λέξεις κλειδιά: Στοίβες (Stacks), Προτεραιότητες Τελεστών, Εφαρμογή Στοίβας, Infix, Postfix.
Ουρές: Ουρές προτεραιότητας, λειτουργίες και εφαρμογές.
Λέξεις κλειδιά:Ουρές (Queues), Ουρές Προτεραιότητας (Priority Queues)
Δυαδικά δένδρα: δυαδικά δένδρα αναζήτησης, εισαγωγή και διαγραφή, λειτουργίες και εφαρμογές, ισοζυγισμένα δυαδικά δένδρα αναζήτησης AVL και δένδρα αναζήτησης πολλών δρόμων.
Λέξεις κλειδιά:Δυαδικά Δένδρα (Binary Trees), Δυαδικά Δένδρα Αναζήτησης (Binary Search Trees), Ισοζυγισμένα Δυαδικά Δένδρα (Balanced Binary Trees), Δένδρα Αναζήτησης m-δρόμων, Πολυδιάστατα Δένδρα (Multidimensional Trees)
Γραφήματα: Αναζήτηση πρώτα σε βάθος (DFS) σε κατευθυνόμενο γράφημα, ελάχιστα ζευγνύοντα δένδρα, τοπολογική ταξινόμηση.
Λέξεις κλειδιά: DFS, Κατευθυνόμενος Γράφο, Ελάχιστα Μονοπάτια, Τοπολογική Ταξινόμηση, Ελάχιστα Ζευγνύοντα Δένδρα
Ανοικτό Ακαδ. Μάθημα
Αρ. Επισκέψεων : 3745
Αρ. Προβολών : 21399