Δομές Δεδομένων

Κωδικός Μαθήματος: Ν2-2040
Εβδομαδιαίες ώρες διδασκαλίας: 6 (2Θ + 2ΑΠ + 2Ε)
Πιστωτικές μονάδες: 7
Τυπικό εξάμηνο διδασκαλίας: 2ο
Κατηγορία μαθήματος: Μάθημα Γενικής Υποδομής
Προαπαιτούμενα: Αλγοριθμική, Προγραμματισμός Υοπλογιστών

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

Πρόκειται για ένα από τα σπουδαιότερα μαθήματα γενικής υποδομής του τμήματος. Οι γνώσεις και δεξιότητες που αποκτούνται από το μάθημα αυτό είναι απαραίτητες για την παρακολούθηση πολλών άλλων μαθημάτων του τμήματος Πληροφορικής, κυρίως όμως για τις Βάσεις Δεδομένων, Αλγόριθμοι και Πολυπλοκότητα, Πληροφοριακά Συστήματα. Για το λόγο αυτό δεν συνιστάται η παρακολούθηση των μαθημάτων αυτών, πριν από την επιτυχή κατάληξη του μαθήματος Δομές Δεδομένων.

Προαπαιτούμενα είναι τα μαθήματα Αλγοριθμική και Προγραμματισμός Ι.

Συγκεκριμένα, ο/η σπουδαστής/τρια που ολοκληρώνει επιτυχημένα το μάθημα:

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

Περιεχόμενο μαθήματος

Εισαγωγή. Πληροφορίες και Δεδομένα. Αλγόριθμοι.

Μέρος Α’. Δομές Δεδομένων κύριας μνήμης. Πίνακες. Αναζήτηση σε πίνακα. Ταξινόμηση-συγχώνευση. Συμβολοσειρές. Στοίβες. Ουρές. Δεσμικές λίστες. Δένδρα. Γράφοι.

Μέρος Β’. Δομές δεδομένων βοηθητικής μνήμης. Αρχεία δεδομένων. Οργανώσεις αρχείων (διαδοχική, άμεσα, σειριακή με δείκτες, μη σειριακή με δείκτες, με μετασχηματισμό κλειδιού, Β-δένδρα). Οργάνωση αρχείων με δευτερεύοντα κλειδιά. Ταξινόμηση αρχείων.

Σύγκριση αρχείων και κριτήρια επιλογής.

Βιβλιογραφία
  1. Χρ. Κοίλιας, Δομές Δεδομένων και Οργανώσεις Αρχείων, Εκδόσεις Νέων Τεχνολογιών, Αθήνα, 2004.
  2. Thomas A. Standish, Data Structures, Algorithms, and Software Principles in C, Addison-Wesley, 1994.
  3. Ellis Horowitz, Sartaj Sahni, Susan Anderson-Freed, Fundamentals of Data Structures in C: 2nd Edition, Silicon Press, 2008.

Internationalisation I18n