Μάθημα Κωδικός  Εξάμηνο Τύπος Ώρες Εργαστήριο /
Φροντιστήριο
ECTS Διδάσκοντες
Δομές Δεδομένων ΗΥ120  Β Κορμού  4
6
Σιούτας Σ.

Μαθησιακά Αποτελέσματα

Το μάθημα εισάγει τους φοιτητές στις βασικές έννοιες των δομών δεδομένων, ενώ τους εξοικειώνει με τις βασικές αλγοριθμικές τεχνικές διαχείρισης δεδομένων σε κύρια και δευτερεύουσα μνήμη.

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

Περιγραφή Μαθήματος

  1. Εισαγωγή.
  2. Ανάλυση Απόδοσης βάσει μεθόδων υπολογισμού πολυπλοκότητας.
  3. Δυναμική Διαχείριση Μνήμης.
  4. Στοίβα (LIFO) και Ουρά (FIFO).
  5. Σωρός (Heap).
  6. Ταξινόμηση (bubble-sort, merge-sort, insertion-sort, selection-sort, quick-sort, heap-sort).
  7. Δέντρα.
  8. Δυαδικά Δέντρα Αναζήτησης (ΔΔΑ).
  9. Πίνακες Κατακερματισμού (Hashing).
  10. Γράφοι (Minimum Spanning Tree, Shortest Path Tree).

Υλικό Μαθήματος

Opencourses

Προτεινόμενη Βιβλιογραφία

  1. “Δομές δεδομένων, αλγόριθμοι και εφαρμογές C++”, Sahnii Sartaj, Εκδόσεις ΤΖΙΟΛΑ, ISBN 978-960-418-030-1, 2004
  2. “ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ”, ΓΕΩΡΓΑΚΟΠΟΥΛΟΣ Γ.Φ., Εκδόσεις ΙΤΕ-ΠΑΝΕΠΙΣΤΗΜΙΑΚΕΣ ΕΚΔΟΣΕΙΣ ΚΡΗΤΗΣ, ISBN 978-960-524-125-4, 2008