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

Πληροφορίες Μαθήματος
ΤίτλοςΔομές Δεδομένων / Data Structures
Κωδικός017
ΣχολήΠολυτεχνική
ΤμήμαΗλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών
Κύκλος / Επίπεδο1ος / Προπτυχιακό
Περίοδος ΔιδασκαλίαςΧειμερινή
Υπεύθυνος/ηΣταυρούλα Σιάχαλου
ΚοινόΝαι
ΚατάστασηΕνεργό
Course ID600000965

Πρόγραμμα Σπουδών: Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών

Εγγεγραμμένοι φοιτητές: 479
ΚατεύθυνσηΤύπος ΠαρακολούθησηςΕξάμηνοΈτοςECTS
ΚΟΡΜΟΣΥποχρεωτικό325

Πληροφορίες Τάξης
ΤίτλοςΔομές Δεδομένων
Ακαδημαϊκό Έτος2020 – 2021
Περίοδος ΤάξηςΧειμερινή
Διδάσκοντες άλλων Κατηγοριών
Class ID
600169745

Πρόγραμμα Τάξης

Κτίριο
ΌροφοςUnknown
ΑίθουσαΕξ αποστάσεως (900)
ΗμερολόγιοWednesday 11:00 to 13:00
Κτίριο
ΌροφοςUnknown
ΑίθουσαΕξ αποστάσεως (900)
ΗμερολόγιοWednesday 13:00 to 15:00
Τύπος Μαθήματος 2016-2020
  • Υποβάθρου
Τύπος Μαθήματος 2011-2015
Γενικού Υποβάθρου
Τρόπος Παράδοσης
  • Πρόσωπο με πρόσωπο
Ηλεκτρονική Διάθεση Μαθήματος
Γλώσσα Διδασκαλίας
  • Ελληνικά (Διδασκαλία, Εξέταση)
  • Αγγλικά (Εξέταση)
Προαπαιτήσεις
Γενικές Προαπαιτήσεις
Προτείνεται στους φοιτητές να έχουν περάσει τα μαθήματα Δομημένος Προγραμματισμός, Προγραμματιστικές Τεχνικές, και Αρχιτεκτονική Υπολογιστών
Μαθησιακά Αποτελέσματα
Με την ολοκλήρωση του μαθήματος, οι φοιτητές/τριες αναμένεται να μπορούν να: α. Να αναγνωρίζουν και να χρησιμοποιούν την έννοια της δομής δεδομένων ως βασικό συστατικό της ανάπτυξης κώδικα. β. Να επιλέγουν, να χρησιμοποιούν κατάλληλα, και να αναλύουν τις βασικές δομές. γ. Να χρησιμοποιούν και να αναλύουν τους βασικούς αλγόριθμους αναζήτησης, κατακερματισμού και ταξινόμησης. δ. Να γράφουν μεσαίου μεγέθους εφαρμογές σε Java.
Γενικές Ικανότητες
  • Εφαρμογή της γνώσης στην πράξη
  • Αναζήτηση, ανάλυση και σύνθεση δεδομένων και πληροφοριών, με τη χρήση και των απαραίτητων τεχνολογιών
  • Προσαρμογή σε νέες καταστάσεις
  • Λήψη αποφάσεων
  • Αυτόνομη εργασία
  • Ομαδική εργασία
  • Άσκηση κριτικής και αυτοκριτικής
  • Προαγωγή της ελεύθερης, δημιουργικής και επαγωγικής σκέψης
Περιεχόμενο Μαθήματος
Εισαγωγικό μάθημα στις Δομές Δεδομένων και σε βασικές κατηγορίες Αλγορίθμων. Το μάθημα αποτελεί συνέχεια των μαθημάτων προγραμματισμού και στοχεύει στην εμβάθυνση των φοιτητών σε τεχνικές ανάπτυξης λογισμικού και στη βελτίωση των ικανοτήτων τους στον προγραμματισμό. Τα περιεχόμενα του μαθήματος περιλαμβάνουν τα εξής: • Δεδομένα και πληροφορία. Δομή δεδομένων, αλγόριθμος και πολυπλοκότητα. • Εισαγωγή στη Java. • Πίνακες. Συνδεδεμένες και σειριακές γραμμικές λίστες. • Δένδρα: τρόποι αποθήκευσης, αναζήτησης, εισαγωγής και διαγραφής στοιχείων. Ισοζυγισμένα δένδρα. Β-Δένδρα. Εφαρμογές δένδρων. • Σωροί. • Μέθοδοι αναζήτησης. Μέθοδοι ταύτισης προτύπου σε κείμενο. • Κατακερματισμός. • Αλγόριθμοι ταξινόμησης.
Λέξεις Κλειδιά
Δομές Δεδομένων, Αλγόριθμοι, Αλγοριθμική Πολυπλοκότητα, Γλώσσα Java, Πίνακες, Λίστες, Δένδρα, Σωροί, Αναζήτηση, Κατακερματισμός, Ταξινόμηση
Τύποι Εκπαιδευτικού Υλικού
  • Σημειώσεις
  • Διαφάνειες
  • Πολυμεσικό υλικό
  • Διαδραστικές ασκήσεις
  • Βιβλίο
Χρήση Τεχνολογιών Πληροφορίας και Επικοινωνιών
Χρήση Τ.Π.Ε.
  • Χρήση Τ.Π.Ε. στη Διδασκαλία
  • Χρήση Τ.Π.Ε. στην Εργαστηριακή Εκπαίδευση
  • Χρήση Τ.Π.Ε. στην Επικοινωνία με τους φοιτητές
  • Χρήση Τ.Π.Ε. στην Αξιολόγηση των Φοιτητών
Περιγραφή
Το μάθημα διδάσκει τους φοιτητές τεχνικές ανάπτυξης λογισμικού. Προφανώς οι ΤΠΕ χρησιμοποιούνται διαρκώς και σε όλα τα επίπεδα.
Οργάνωση Μαθήματος
ΔραστηριότητεςΦόρτος ΕργασίαςECTSΑτομικάΟμαδικάErasmus
Διαλέξεις481,6
Εργαστηριακή Άσκηση180,6
Φροντιστήριο240,8
Εκπόνηση μελέτης (project)361,2
Εξετάσεις240,8
Σύνολο1505
Αξιολόγηση Φοιτητών
Περιγραφή
Γραπτή ή Ηλεκτρονική Τελική Εξέταση 80% Εργασία σε ομάδες των δύο ατόμων 20% Οι φοιτητές, μέσα από τις εργασίες, καλούνται να αναπτύξουν λογισμικό σε java για ένα ηλεκτρονικό παιχνίδι και να διαγωνιστούν μεταξύ τους σε ένα τουρνουά με τη λήξη του μαθήματος. Οι νικητές ανταμείβονται με πρόσθετες μονάδες στην τελική βαθμολογία. Οι φοιτητές προτρέπονται να εκπονήσουν την εργασία, καθώς είναι ο καταλληλότερος τρόπος να κατανοήσουν τις έννοιες των Δομών Δεδομένων και να αποκτήσουν ευχέρεια στον προγραμματισμό σε Java.
Μέθοδοι Αξιολόγησης Φοιτητών
  • Γραπτή Εξέταση με Ερωτήσεις Πολλαπλής Επιλογής (Διαμορφωτική, Συμπερασματική)
  • Γραπτή Εξέταση με Ερωτήσεις Σύντομης Απάντησης (Διαμορφωτική, Συμπερασματική)
  • Γραπτή Εξέταση με Ερωτήσεις Εκτεταμένης Απάντησης (Διαμορφωτική, Συμπερασματική)
  • Γραπτή Εργασία (Διαμορφωτική, Συμπερασματική)
  • Γραπτή Εξέταση με Επίλυση Προβλημάτων (Διαμορφωτική, Συμπερασματική)
  • Έκθεση / Αναφορά (Συμπερασματική)
  • Εργαστηριακή Εργασία (Διαμορφωτική, Συμπερασματική)
Βιβλιογραφία
Βιβλιογραφία μαθήματος (Εύδοξος)
1. Δομές Δεδομένων & Αλγόριθμοι στη Java, 2η έκδοση, Robert Lafore, Εκδόσεις Γκιούρδας, 2005. ISBN: 960-512-452-1, ΚΩΔ.ΕΥΔ.: 12279 (ελληνική μετάφραση) 2. Δομές Δεδομένων, Π. Μποζάνης, 1η έκδοση, Εκδόσεις Τζιόλας, 2006. ISBN : 960-418-084-3, ΚΩΔ.ΕΥΔ.: 9322 3. Δομές Δεδομένων: Έννοιες, Τεχνικές, Αλγόριθμοι, Γ.Φ. Γεωργακόπουλος, Πανεπιστημ. Εκδόσεις Κρήτης, 2011. ISBN : 978-960-524-125-4, ΚΩΔ.ΕΥΔ.: 260
Επιπρόσθετη βιβλιογραφία για μελέτη
Υπάρχει πληθώρα τίτλων στην αγγλική (Data Structures and Algorithms).
Τελευταία Επικαιροποίηση
15-01-2021