Δομές Δεδομένων (ΜΑΕ681)

Από Wiki Τμήματος Μαθηματικών
Αναθεώρηση ως προς 10:06, 15 Ιουνίου 2023 από τον Mathwikiadmin (συζήτηση | συνεισφορές)
(διαφορά) ← Παλαιότερη αναθεώρηση | Τελευταία αναθεώρηση (διαφορά) | Νεότερη αναθεώρηση → (διαφορά)

Γενικά

Σχολή Σχολή Θετικών Επιστημών
Τμήμα Τμήμα Μαθηματικών
Επίπεδο Σπουδών Προπτυχιακό
Κωδικός Μαθήματος MAE681
Εξάμηνο 6
Τίτλος Μαθήματος ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ
Αυτοτελείς Διδακτικές Δραστηριότητες Διαλέξεις και Εργαστηριακές Ασκήσεις (Εβδομαδιαίες Ώρες Διδασκαλίας: 3, Πιστωτικές Μονάδες: 6)
Τύπος Μαθήματος Ειδίκευσης
Προαπαιτούμενα Μαθήματα
Γλώσσα Διδασκαλίας και Εξετάσεων Ελληνική
Το Μάθημα Προσφέρεται σε Φοιτητές Erasmus Ναι (στην Αγγλική γλώσσα)
Ηλεκτρονική Σελίδα Μαθήματος (URL) Δείτε το eCourse, την Πλατφόρμα Ασύγχρονης Εκπαίδευσης του Πανεπιστημίου Ιωαννίνων.

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

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

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

  • Στοιχεία Πολυπλοκότητας Αλγορίθμων
  • Αφηρημένοι Τύποι Δεδομένων
  • Πίνακες
  • Αλυσίδες
  • Αλγόριθμοι Αναζήτησης, Ταξινόμησης, Επιλογής
  • Λίστες (Απλά Συνδεδεμένες Λίστες, Διπλά Συνδεδεμένες Λίστες, Κυκλικές Λίστες, Γενικευμένες Λίστες
  • Στοίβες
  • Ουρές, Διπλοουρές, Ουρές Προτεραιότητας
  • Δένδρα (Γενικά Δένδρα, Δυαδικά Δένδρα, Δυαδικά Δένδρα Αναζήτησης, Οπισθοσυνδεδεμένα Δένδρα)
  • Σωροί
  • AVL-Δένδρα, 2-3 Δένδρα, 2-3-4 Δένδρα, Β-Δένδρα
  • Κατευθυνόμενοι Γράφοι
  • Μη Κατευθυνόμενοι Γράφοι
  • Χειρισμός Συνόλων
  • Κατακερματισμός
  • Δυναμική Διαχείριση Μνήμης

Διδακτικές και Μαθησιακές Μέθοδοι - Αξιολόγηση

Τρόπος Παράδοσης Πρόσωπο με πρόσωπο
Χρήση Τεχνολογιών Πληροφορίας και Επικοινωνιών Ναι
Οργάνωση Διδασκαλίας
Δραστηριότητα Φόρτος Εργασίας Εξαμήνου
Διαλέξεις (13Χ3) 39
Αυτοτελής Μελέτη 78
Επίλυση Ασκήσεων - εργασίες 33
Σύνολο Μαθήματος 150
Αξιολόγηση Φοιτητών Γραπτή τελική εξέταση (70%) που περιλαμβάνει:
  • ερωτήσεις σχετικές με την θεωρία των δομών δεδομένων
  • Ερωτήσεις κρίσεως υπό την μορφή ασκήσεων που απαιτούν την χρήση δομών δεδομένων
  • Ερωτήσεις υλοποίησης δομών δεδομένων

Εργαστηριακές ασκήσεις/Πρόοδος(30%)

Συνιστώμενη Βιβλιογραφία

Δείτε την υπηρεσία Εύδοξος ή το τοπικό αποθετήριο του Τμήματος Μαθηματικών για τα παρεχόμενα συγγράμματα ανά ακαδημαϊκό έτος. Συγγράμματα και άλλες πηγές εκτός της υπηρεσίας Εύδοξος:

  • Data structures, algorithms and applications using c ++, Sahnii Sartaj, Publicer A. Tziola (Greek translation)
  • Algorithms in C ++, parts 1-4: fundamental concepts, data structures, sorting, searching, Robert Sedgewick, Prentice Hall (Greek translation)
  • Algorithms in C, parts 1-4: fundamental concepts, data structures, sorting, searching, Robert Sedgewick, Prentice Hall (Greek translation)
  • Data Structures with C, Nicholas Misirlis (Greek)
  • Data Structures, Bozanis Panagiotis, Publicer A. Tziola (Greek)
  • Michael T. Goodrich, Roberto Tamassia, and David M. Mount, Data Structures and Algorithms in C ++, John Wiley & Sons
  • Michael Goodrich, Roberto Tamassia, Data Structures and Algorithms in Java, Publicer DIAYLOS
  • Cormen, Leiserson and Rivest, Introduction to Algorithms, MIT Press, 1990. (there is also a translation from the University of Crete)
  • Mark Allen Weiss, Data Structures & Algorithm Analysis in Java, Addison-Wesley
  • Clifford A. Shaffer, Data Structures and Algorithm Analysis, ebook, http://people.cs.vt.edu/shaffer/Book/
  • http://opendatastructures.org/