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

Ακαδημαϊκό Έτος 2013 - 2014, Χειμερινό Εξάμηνο



Διδάσκων: Παύλος Εφραιμίδης, Επίκ. καθηγητής

Γραφείο 4, Κτίριο Α, Πανεπιστημιούπολη
pefraimi <at> ee.duth.gr
τηλ/fax: 25410 79756

Ώρες γραφείου: Τετάρτη 09:00 - 12:00

Συνεπικουρούν: Σωτήριος Γυφτόπουλος, Ρέμους-Άρης Κουτισαμάνης, Υποψήφιοι Διδάκτορες


Πρόχειρη Bαθμολογία Ιουνίου 2014.

Μπορείτε να δείτε τα γραπτά σας την Παρασκευή 14/02/2014, 11:00 - 13:00, στο γραφείο μου.

Στη συνέχεια θα κατατεθεί η οριστική βαθμολογία στη Γραμματεία.


Διαλέξεις

 
Ημερομηνία
     
  Παρασκευή, 4/10/2013, 09:00-12:00 Διδασκαλία ΑΡΓΙΑ της Ξάνθης  
  Παρασκευή, 11/10/2013, 09:00-12:00 Διδασκαλία Πρόβλημα Ευσταθούς Ταιριάσματος (Stable Marriage)

Το μάθημα

Ευσταθές Ταίριασμα

  Παρασκευή, 18/10/2013, 09:00-12:00 Διδασκαλία Αλγόριθμος Gale and Shapley
  Δευτέρα, 21/10/2013, 12:00-14:00, Α1 Φροντιστήριο Eclipse, Java Introduction, Stack  
  Παρασκευή, 25/10/2013, 09:00-12:00 Διδασκαλία

Πέντε αντιπροσωπευτικά προβλήματα

Πέντε προβλήματα

  Δευτέρα, 28/10/2013   ΑΡΓΙΑ  
  Παρασκευή, 01/11/2013 Διδασκαλία

Τύποι Δεδομένων και Απλές Δομές Δεδομένων

Αλγόριθμος Gale and Shapley (υπολογιστική πολυπλοκότητα)

Τύποι Δεδομένων και Απλές Δομές Δεδομένων

Υλοποίηση GS

  Δευτέρα, 04/11/2013, 12:00-14:00, Α1 Φροντιστήριο Facility Game  
  Παρασκευή, 08/11/2013 Διδασκαλία

Αναζήτηση

Ταξινόμηση

DSAlg02 searching

DSAlg02 sorting

  Παρασκευή, 15/11/2013 Διδασκαλία Ανάλυση Αλγορίθμων DSAlg03 analysis
  Παρασκευή, 22/11/2013 Διδασκαλία Heap και Heapsort DSAlg02 heap
  Παρασκευή, 29/11/2013 Διδασκαλία

Γραφήματα (εισαγωγή)

  • Ορολογία
  • Κύκλος Euler
DSAlg03 graphs
  Παρασκευή, 06/12/2013   ΔΕΝ θα γίνει μάθημα  
  Δευτέρα, 09/12/2013 Διδασκαλία/Φροντιστήριο

Γραφήματα

  • Αναζήτηση πρώτα σε πλάτος
  • Αναζήτηση πρώτα σε βάθος
  • Minimum Spanning Tree
DSAlg03 graphs (συνέχεια)
  Παρασκευή, 13/12/2013 Διδασκαλία    
  Δευτέρα 16/12/2013 Διδασκαλία/Φροντιστήριο

Φροντιστήριο Εργασία 2 (Moodle), 12:00 - 14:00

Φροντιστήριο Εργασία 3 (GraphSearch), 14:00 - 16:00

 
  Παρασκευή 10/01/2014 Διδασκαλία

Αλγόριθμος Dijkstra

NP-Completeness

DSAlg04 Dijkstra

DSAlg08 NP

  Δευτέρα 13/01/2014 Διδασκαλία/Φροντιστήριο Ύλη και οδηγίες για την εξέταση DSAlg10 Final Lecture

Φροντιστήρια

Φροντιστήριο 1
  • Μια σύντομη εισαγωγή στη γλώσσα Java
    • Διαφάνειες e-Class: DSAlg Java01-Intro.pdf, DSAlg Java02-Java Basics.pdf, DSAlg Java03-HelloWorld.pdf, DSAlg Java03-Java Language.pdf
    • Το παράδειγμα Hello world.
  • Το περιβάλλον Eclipse
    • δημιουργία και εκτέλεση του Hello world,
    • δημιουργία μιας μεταβλητής,
    • δημιουργία μιας επανάληψης for,
    • χρήση του μηχανισμού debug
    • εισαγωγή (import) και εκτέλεση ενός project (του DSAlg01.zip) στο Eclipse
  • Η δομή δεδομένων στοίβα
 
Φροντιστήριο 2
  • To FacilityGame
  • Απαιτήσεις για να περάσει κανείς με ετιτυχία την εργασία 1
  • Απαιτήσεις για να διεκδικήσει κανείς bonus
Φροντιστήριο 2 - FacilityGame
Φροντιστήριο 3
  • Εργασία 2 - Moodle
στο eClass
Φροντιστήριο 4
  • Εργασία 3 - GraphSearch
στο eClass

 

Διαφάνειες Java

  γνωριμία με τη Java

intro

basics

  το πρόγραμμα HelloWorld
HelloWorld
  το πρόγραμμα HelloApplet
HelloApplet
  συνοπτική ματιά στη γλώσσα Java
java language
 

αντικείμενα στη Java

κλάσεις στη Java

objects

classes

  κληρονομικότητα και ιεραρχίες κλάσεων

inheritance

polymorphism

  χειρισμός εξαιρέσεων

exceptions

 

διεπαφές

γενικευμένες κλάσεις

interfaces

generics

 


Εργασίες

Εργασία 1: Εκφώνηση (v1.1)

Εργασία 2: Εργασία με online ασκήσεις αλγορίθμων/προγραμματισμού σε περιβάλλον Moodle

Εργασία 3: Εκφώνηση v1.0

 


Υλικό

 


Σύνδεσμοι