Γενικά

K08 - Εαρινό εξάμηνο 2019-2020 - Τμήμα περιττών ΑΜ

Καθηγητής

Διαλέξεις
  • Δευτέρα: 15:00-17:00
  • Τετάρτη: 15:00-17:00
  • Ζωντανή μετάδοση και καταγραφή μέσω YouTube
  • Οι διαλέξεις στο αμφιθέατρο υπάρχουν στο delos
Βαθμολογία
  • Εργαστήριο & Εργασίες: 50%
    • Κοινή εξέταση για εργαστήριο & εργασίες στο τέλος
    • Οι βαθμοί σε εργαστήριο και εργασίες ισχύουν για την εξεταστική του Σεπτεμβρίου της ίδιας χρονιάς, αλλά όχι για τις επόμενες χρονίες.
  • Τελική εξέταση: 50%
    • Ο βαθμός της τελικής εξέτασης πρέπει να είναι πάνω από 5.
Εργαστήρια
  • Πρόγραμμα. Γραφτείτε στην ομάδα που σας βολεύει (πριν συμπληρωθεί).
  • Μεγαλύτερα έτη: οι παρουσίες είναι προαιρετικές, αλλά προσοχή, οι ασκήσεις κάθε εργαστηρίου θα πρέπει να υποβάλλονται μέσω github στο τέλος των 2 εβδομάδων που διαρκεί το εργαστήριο (ακριβείς ημερομηνίες στις εκφωνήσεις των εργαστηρίων).
Φροντιστήρια
  • Θα ανακοινωθούν
Forum για συζητήσεις και ανακοινώσεις (piazza)
  • Υποχρεωτική εγγραφή (με το @di.uoa.gr email σας αυστηρά)
  • Ολες οι ανακοινώσεις θα γίνονται στο piazza!
  • Είσοδος

Διαλέξεις

Εισαγωγή & τεχνικές αποδοτικού προγραμματισμού
Εισαγωγήhtml  pdf  4up  delos  [2]
Modules, Makefiles, Editors, Githtml  pdf  4up  delos  [2]
Recap: memory allocation, pointers, structs, typedefshtml  pdf  4up  delos  [2]  [3]
Code style, Naming convensions, Testshtml  pdf  4up  delos  [2]
Αφηρημένοι Τύποι Δεδομένων και εφαρμογές
Εισαγωγή στους Αφηρημένους Τύπους Δεδομένωνhtml  pdf  4up  delos
Vectors, Λίστες, Στοίβες, Ουρέςhtml  pdf  4up  delos  [2]  [3]
Ουρές προτεραιότητας, Maps, Σύνολαhtml  pdf  4up  delos  [2]
Φροντιστήριο Εργασίας 1youtube
Δομές δεδομένων
Εισαγωγή την υλοποίηση ΑΤΔ, Συνδεδεμένες λίστεςyoutube  [2]
Ανάλυση αλγορίθμων, πολυπλοκότηταhtml  pdf  4up  youtube  [2]
Δυναμικοί Πίνακεςhtml  pdf  4up  youtube
Εξαρτημένες Δομέςyoutube
Δέντρα, σωροίhtml  pdf  4up  youtube  [2]
Δυαδικά δέντρα αναζήτησηςhtml  pdf  4up  youtube  [2]
Διευκρινήσεις για την Εργασία 2youtube
AVL δέντραhtml  pdf  4up  youtube
Δέντρα αναζήτησης m δρόμων, δέντρα 2-3, δέντρα 2-3-4html  pdf  4up  youtube
Δέντρα (a,b), B-δέντραhtml  pdf  4up  youtube
Κατακερματισμόςhtml  pdf  4up  youtube  [2]  [3]
Γράφοιhtml  pdf  4up  youtube  [2]  [3]
Γράφοι με βάρηhtml  pdf  4up  youtube

Visualizations

  • Οσα υπάρχουν στις διαφάνειες μπορείτε να τα εκτελείτε βήμα-βήμα πατώντας space
  • Interactive εκδόσεις υπάρχουν εδώ (και για πολλές ακόμα δομές)

Εργασίες

Διαβάσετε προσεκτικά τις οδηγίες (κοινές για όλες τις εργασίες).

Κώδικας

Οδηγίες

Sample Project

Παράδειγμα δομής ενός C project. Επιδεικνύει τη χρήση modules, Makefiles και tests.

https://github.com/chatziko-k08/sample-project

Κώδικας διαλέξεων

Ο βασικός κώδικας που χρησιμοποιείται στις διαλέξεις του μαθήματος. Περιέχει υλοποιήσεις από όλους τους ADTs που διδάσκονται στο μάθημα

https://github.com/chatziko-k08/lecture-code

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

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

Βασικά συγγράμματα

  • Robert Sedgewick: Αλγόριθμοι σε C, Εκδόσεις Κλειδάριθμος, 2006. [Εύδοξος]

  • Thomas A. Standish: Data Structures, Algorithms and Software Principles in C, Addison-Wesley. 1995.

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

  • Robert Sedgewick: Αλγόριθμοι σε C, Εκδόσεις Κλειδάριθμος, 2006. [Εύδοξος] (προτεινόμενο)

  • Michael T. Goodrich, Roberto Tamassia: Δομές Δεδομένων & Αλγόριθμοι σε JAVA, Εκδόσεις Δίαυλος, 2013. [Εύδοξος]

  • Bruno R. Preiss: Δομές Δεδομένων και Αλγόριθμοι με Αντικειμενοστρεφή Σχεδιαστικά Μορφήματα στη C++, Εκδόσεις Πεδίο, 2016. [Εύδοξος]

  • Ν. Μισυρλής: Δομές Δεδομένων με C. [Εύδοξος]

Άλλα βιβλία διαθέσιμα online

  • Kyle Loudon, Mastering Algorithms with C, O'Reilly, 1999. [pdf]

  • Clifford A. Shaffer: Data Structures and Algorithm Analysis, Dover, 2013. [pdf]

Team

Καθηγητής

Υπεύθυνος εργαστηρίων

  • Σαράντης Πασκαλής (paskalis@di….)

Μεταπτυχιακοί συνεργάτες

  • Γιώργος Καραπάτσας
  • Ελένη Μαντζάνα
  • Δημήτρης Σιδέρης

Προπτυχιακοί συνεργάτες

  • Νίκος Γαλάνης
  • Βαγγέλης Δανιάς
  • Βαγγέλης Δημητριάδης
  • Γιάννης Ζερβάκης
  • Χάρης Μαραζιάρης
  • Βησσαρίων Μουτάφης
  • Αγγελική Παναγοπούλου
  • Γιούλη Παύλου
  • Μαρία-Δέσποινα Σιάμπου
  • Γιώργος Σίττας
  • Σοφοκλής Στρόμπολας
  • Σπύρος Χαλκιάς