Παρουσίαση/Προβολή
Δομές Δεδομένων
(352) - Γιάννης Λιβιεράτος
Περιγραφή Μαθήματος
Στόχος του μαθήματος είναι η εξοικείωση των φοιτητ(ρι)ών με τις βασικότερες δομές δεδομένων που χρησιμοποιούνται στον σχεδιασμό αλγορίθμων, καθώς και η ανάλυση του τρόπου λειτουργίας τους σε βασικούς αλγορίθμους. Το μάθημα θα γίνει με χρήση απλής ψευδογλώσσας, και θα υπάρξουν κάποιες υλοποιήσεις αλγορίθμων στις γλώσσες προγραμματισμού python και C.
E-mail επικοινωνίας: jlivier89 [AT] di.uoa.gr
Μέρες και ώρες μαθήματος:
Γραφειο 306:
Ημερομηνία δημιουργίας
Τετάρτη 25 Σεπτεμβρίου 2019
-
Προαπαιτούμενα
Παρ’ ότι το μάθημα είναι αυτοτελές και οι έννοιες θα ορίζονται και αναλύονται εκ του μηδενός, θα είναι χρήσιμη η εμπειρία από προγραμματισμό, είτε με ψευδογλώσσα είτε με οποιαδήποτε γλώσσα προγραμματισμού. Χρήσιμες θα είναι επίσης βασικές γνώσεις Διακριτών Μαθηματικών, Θεωρίας Γραφημάτων και Σχεδιασμού Αλγορίθμων. Δεν είναι απαραίτητη η γνώση συγκεκριμένης γλώσσας προγραμματισμού για την παρακολούθηση και την επιτυχή εξέταση του μαθήματος.
Περιεχόμενο μαθήματος
- Πίνακες: μονοδιάστατοι και πολυδιάστατοι πίνακες, αναζήτηση σε πίνακες, συνδεδεμένες
λίστες, στοίβες και ουρές. - Γραφήματα: Αναπαράσταση και αναζήτηση σε γραφήματα, δέντρα, δυαδικά δέντρα,
σωροί, δέντρα AVL, κοκκινόμαυρα δέντρα, Ελάχιστο Επικαλύπτον Δέντρο, αλγόριθμοι
Kruskal, Prim. - Αλγόριθμοι Ταξινόμησης: ταξινόμηση παρεμβολής, φυσαλίδας και επιλογής, ταξινόμηση
σωρού, ταξινόμηση συγχώνευσης, γρήγορη ταξινόμηση.
Προτεινόμενα συγγράμματα
- Γεώργιος Φρ. Γεωργακόπουλος: Δομές Δεδομένων Έννοιες, Τεχνικές και Αλγόριθμοι, Πανεπιστημιακές Εκδόσεις Κρήτης
- Παναγιώτης Δ. Μποζάνης: Δομές Δεδομένων, Εκδόσεις Τζιόλα
- Λουκάκης Μανόλης: Δομές Δεδομένων, Αλγόριθμοι, Εκδόσεις Σοφία
Βιβλιογραφία
- Νικόλαος Μισυρλής: Δομές δεδομένων με C
- Αθανάσιος Κ. Τσακαλίδης Δομές Δεδομένων
- Δ. Ζώρος (Πρόχειρες) σημειώσεις στις ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ
- Πίνακες: μονοδιάστατοι και πολυδιάστατοι πίνακες, αναζήτηση σε πίνακες, συνδεδεμένες