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

Από DUTh EECE Wiki
Μετάβαση σε: πλοήγηση, αναζήτηση
Δομές Δεδομένων
Εξάμηνο5ο
ΚωδικόςΛ08Υ
ECTS4
Διδακτικές Μονάδες4
Ώρες Θεωρίας2
Ώρες Ασκήσεων1
Ώρες Εργαστηρίου2
ΤομέαςΛογισμικού και Ανάπτυξης Εφαρμογών
ΔιδάσκοντεςΕφραιμίδης Παύλος

Συζήτηση
ΕνεργειακόςΥ
ΗλεκτρονικόςΥ
ΤηλεπικοινωνιακόςΥ

Πίνακας περιεχομένων

Περιγραφή

Ανάπτυξη λογισμικού. Βασικές έννοιες αλγορίθμων. Δομές δεδομένων. Ταξινόμηση και αναζήτηση. Υπολογιστικά μοντέλα. Η μηχανή Turing και η Random Access Machine. Πολυπλοκότητα αλγορίθμων. Τεχνικές σχεδιασμού αλγορίθμων. Διαίρει και βασίλευε. Αναδρομή και απαλοιφή αναδρομής. Δυναμικός προγραμματισμός. Απληστία. Αλγόριθμοι γραφημάτωων και δέντρων. Αλγόριθμοι με χρήση τυχαιότητας. Κλάσεις πολυπλοκότητας. Οι κλάσεις P και NP. Προβλήματα πλήρη για την κλάση NP. Αναγωγές. Αναφορά σε ευρετικές τεχνικές και αλγόριθμους προσέγγισης.

Απαιτούμενες Γνώσεις

Expand.png Αυτή η ενότητα μπορεί να επεκταθεί ή να βελτιωθεί.
Πληροφορίες: Χρήσιμες ή απαραίτητες γνώσεις για το μάθημα. Γνώσεις που αναμένεται να αποκτηθούν. Αναφορά σε άλλα σχετικά μαθήματα.

Εργαστήρια

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

Εργασίες

Expand.png Αυτή η ενότητα μπορεί να επεκταθεί ή να βελτιωθεί.
Πληροφορίες: Εργασίες που δίνονται στη διάρκεια του μαθήματος. Περιγραφή, σκοπιμότητα και ύλη που καλύπτει η καθεμιά. Επιρροή στην τελική βαθμολογία.

Πρόοδοι

Δεν πραγματοποιούνται πρόοδοι σε αυτό το μάθημα.

Εξετάσεις και Βαθμολογία

Εξετάσεις και τελική βαθμολογία. Τρόπος διεξαγωγής εξετάσεων και υπολογισμού τελικής βαθμολογίας. Ενδιάμεση αξιολόγηση.

Συγγράμματα

Υποστήριξη Μαθήματος

eClass: Το μάθημα βρίσκεται στο eClass με κωδικό ΤΜΑ392.

Σελίδα μαθήματος : http://pericles.ee.duth.gr/courses/2011-12/DS/index.html

Επιπρόσθετο Υλικό

Εκπαιδευτικό υλικό για τη γλώσσα Java που καλύπτει τις ανάγκες του μαθήματος δίνεται στα:

  • The Java Tutorial, από τη Sun. Μια κλασική, ενημερωμένη πηγή με εκπαιδευτικό υλικό για τη γλώσσα Java.
  • Thinking in Java, Bruce Eckel, 3rd Edition (Book Site)

Βιβλιογραφία:

  • Αλγόριθμοι, Π. Μποζάνης, Εκδ. ΤΖΙΟΛΑ, 2005
  • Data Structures & Algorithms in Java (Second Edition), R. Lafore, SAMS Publishing, 2003 (Ελληνική Έκδοση: Μ. Γκιούρδας).
  • Δομές Δεδομένων, Π.Μποζάνης, Εκδ. ΤΖΙΟΛΑ, 2005
  • Αλγόριθμοι - Εισαγωγικά θέματα και παραδείγματα, Θ. Παπαθεοδώρου, Καθ. Τμ. Μηχανικών Η/Υ & Πληροφορικής, Εκδόσεις Πανεπιστημίου Πατρών
  • Δομές Δεδομένων, Αλγόριθμοι και Εφαρμογές στη C++, S. Sahni, (Μετάφραση: Γ. Θεοδωρίδης και Γ. Μανωλόπουλος για τις Εκδ. ΤΖΙΟΛΑ)
  • Προγραμματισμός με Java, Ι. Κάβουρα, Εκδ. Κλειδάριθος, 2003
  • Αντικειμενοστραφής προγραμματισμός JAVA, Κλεάνθης Θραμπουλίδης, Τόμος Β', 2η Έκδοση, Εκδόσεις Τζιόλα
  • Πλήρες Εγχειρίδιο της Java 2, R. Cadenhead και L. Lemay (Μετάφραση: Εκδ. Κλειδάριθμος)
  • Εισαγωγή στην JAVA, Γιώργος Λιακέας, Εκδ. Κλειδάριθμος
  • JAVA, ο εύκολος τρόπος, Peter McBride (Μετάφραση: Εκδόσεις ΔΙΑΥΛΟΣ)
  • Οδηγός της Java 2, Steven Haines (Μετάφραση: Εκδοτική Β. Γκιούρδας)
  • Εισαγωγή στον Προγραμματισμό με C#, M. Michaelis και P. Spokas, (Μετάφραση: Εκδ. Μ. Γκιούρδας, 2001)
  • From Java to C# - A Developer's Guide, Heng Ngee Mok, Addisson-Wesley, 2003
  • C# for Java Developers, A. Jones and A. Freeman, Microsoft Press, 2003
Προσωπικά εργαλεία
Περιοχές ονομάτων

Παραλλαγές
Ενέργειες
Πλοήγηση
Εξάμηνα
Εργαλεία
Εκτύπωση/εξαγωγή