Πρόγραμμα

Ημερ. Δ/Φ Περιγραφή Βιβλιογραφία
Υλικό
22/01/2013 Δ Περιγραφή Συμβολαίου, Δομές Δεδομένων και Αλγόριθμοι
Αλγόριθμοι και Πολυπλοκότητα, Οργάνωση Δεδομένων και Δομές Δεδομένων
Chapter 1, M. Weiss. Data Structure and Algorithm Analysis in Java, Pearson, 2012.
23/01/2013 Φ Το φροντιστήριο δεν θα γίνει    
25/01/2013 Δ Αντικειμενοστρεφής Προγραμματισμός με την JAVA
Επισκόπηση της JAVA και εισαγωγικές έννοιες σε αντικειμενοστρεφή προγραμματισμό
Chapter 1, M. Weiss. Data Structure and Algorithm Analysis in Java, Pearson, 2012.
29/01/2013 Δ Πολυπλοκότητα Αλγορίθμων Ι
Πρόβλημα, Στιγμιότυπο, Αλγόριθμος, Εμπειρική - Θεωρητική Ανάλυση Αλγορίθμων, Επανάληψη Χρήσιμων Μαθηματικών Ορισμών, Μαθηματική Επαγωγή
Chapter 2, M. Weiss. Data Structure and Algorithm Analysis in Java, Pearson, 2012.
30/01/2013 Φ Φροντιστήριο 1: Ανάλυση Πολυπλοκότητας Αλγορίθμων Εκφώνηση Λύσεις
01/02/2013 Δ Πολυπλοκότητα Αλγορίθμων ΙΙ
Εργαλεία εκτίμησης πολυπλοκότητας: οι τάξεις Ο(n), Ω(n), Θ(n), Παραδείγματα Ανάλυσης Πολυπλοκότητας, H Μέθοδος της Αντικατάστασης, Master Theorem
Chapter 2, M. Weiss. Data Structure and Algorithm Analysis in Java, Pearson, 2012.
05/02/2013 Δ Αφηρημένοι Τύποι Δεδομένων (Στοίβες, Ουρά, Κυκλική Ουρά)
Αφηρημένοι Τύποι Δεδομένων (ΑΤΔ), Οι ΑΤΔ Στοίβα και Ουρά, Υλοποίηση των ΑΤΔ Στοίβα και Ουρά
Chapter 3, M. Weiss. Data Structure and Algorithm Analysis in Java, Pearson, 2012.
06/02/2013 Φ Φροντιστήριο 2: Ανάλυση Πολυπλοκότητας Βρόγχων και Αναδρομικών Συναρτήσεων Εκφώνηση Λύσεις
08/02/2013 Δ Στοίβες & Ουρές: Υλοποίηση (με Συνδεδεμένες Λίστες) & Εφαρμογές
Υλοποίηση Στοιβών με Δυναμική Δέσμευση Μνήμης, Εφαρμογή Στοιβών 1: Αναδρομικές συναρτήσεις, Εφαρμογή Στοιβών 2: Ισοζυγισμός Παρενθέσεων, Εφαρμογή Στοιβών 3: Αντίστροφος Πολωνικός Συμβολ., Εφαρμογή Ουρών 1: Διερεύνηση κατά Πλάτος
Chapter 3, M. Weiss. Data Structure and Algorithm Analysis in Java, Pearson, 2012.
12/02/2013 Δ

Λίστες Ι: Υλοποίηση & Εφαρμογές
Ευθύγραμμες Απλά Συνδεδεμένες Λίστες (εισαγωγή, εύρεση, διαγραφή), Ευθύγραμμες Διπλά Συνδεδεμένες Λίστες, Σύγκριση Συνδεδεμένων Λιστών με Πίνακες

Chapter 3, M. Weiss. Data Structure and Algorithm Analysis in Java, Pearson, 2012.
13/02/2013 Φ Φροντιστήριο 3: Ουρές και Στοίβες Εκφώνηση Λύσεις
15/02/2013 Δ Λίστες ΙΙ – Κυκλικές Λίστες
Κυκλικές Απλά Συνδεδεμένες Λίστες, Κυκλικές Διπλά Συνδεδεμένες Λίστες, Τεχνικές Μείωσης Χώρου
Chapter 3, M. Weiss. Data Structure and Algorithm Analysis in Java, Pearson, 2012.
19/02/2013 Δ Αλγόριθμοι Ταξινόμησης Ι (SelectionSort, InsertionSort, Mergesort) Οι αλγόριθμοι ταξινόμησης: SelectionSort, InsertionSort, MergeSort, Ανάλυση Πολυπλοκότητας, Σύγκριση Chapter 7, M. Weiss. Data Structure and Algorithm Analysis in Java, Pearson, 2012.
20/02/2013 Φ Φροντιστήριο 4: Tαξινόμηση Εκφώνηση Λύσεις
22/02/2013 Δ Αλγόριθμοι Ταξινόμησης ΙΙ (QuickSort, BucketSort)
Οι αλγόριθμοι ταξινόμησης: QuickSort, BucketSort, Ανάλυση Πολυπλοκότητας, Σύγκριση, Έμμεση Ταξινόμηση, Εξωτερική Ταξινόμηση
Chapter 7, M. Weiss. Data Structure and Algorithm Analysis in Java, Pearson, 2012.
26/02/2013 Δ Δέντρα I - Εισαγωγή σε Δενδρικές Δομές Δεδομένων
Εισαγωγή σε δενδρικές δομές δεδομένων, Ορισμοί και πράξεις, Αναπαράσταση δενδρικών δομών δεδομένων στη μνήμη, Διάσχιση Δέντρων.
Chapter 4, M. Weiss. Data Structure and Algorithm Analysis in Java, Pearson, 2012.
27/02/2013 Φ Φροντιστήριο 5: Δέντρα Ι Εκφώνηση Λύσεις
01/03/2013 Δ Δέντρα II - Δυαδικά Δέντρα & Δυαδικά Δέντρα Αναζήτησης
Δυαδικά Δένδρα, Δυαδικά Δένδρα Αναζήτησης, Πράξεις Εισαγωγής, Εύρεσης Στοιχείου, Διαγραφής Μικρότερου Στοιχείου
Chapter 4, M. Weiss. Data Structure and Algorithm Analysis in Java, Pearson, 2012.
05/03/2013 Δ Δέντρα III - Ισοζυγισμένα Δέντρα & AVL Δέντρα
Ισοζυγισμένα Δέντρα, Υλοποίηση AVL-δέντρων, Εισαγωγή Κόμβων και Περιστροφές σε AVL δέντρα
Chapter 4, M. Weiss. Data Structure and Algorithm Analysis in Java, Pearson, 2012.
06/03/2013 Φ Φροντιστήριο 6: Δέντρα ΙΙ Εκφώνηση Λύσεις
08/03/2013 Δ Δέντρα IV - B-Δένδρα
Δένδρα, 2-3 Δένδρα, Εισαγωγή και άλλες πράξεις, Β-δένδρα, R-δένδρα
Chapter 4, M. Weiss. Data Structure and Algorithm Analysis in Java, Pearson, 2012.
12/03/2013 Δ Επανάληψη για Ενδιάμεση Εξέταση Όλο το υλικό το οποίο έχει διδαχθεί μέχρι στιγμής
13/03/2013 Φ Φροντιστήριο 7:Δέντρα ΙΙΙ Εκφώνηση Λύσεις
15/03/2013   ΕΝΔΙΑΜΕΣΗ ΕΞΕΤΑΣΗ
Αίθουσα ΘΕΕ01-202, Ώρα: 10:00-12:30
   
19/03/2013 Δ Αναδρομή
Η έννοια της αναδρομής, Μη-αναδρομικός / Αναδρομικός Ορισμός Συναρτήσεων, Παραδείγματα Ανάδρομης, Αφαίρεση της Αναδρομής
Chapter 1, 10, 4, 5, 6, 7, 9, M. Weiss. Data Structure and Algorithm Analysis in Java, Pearson, 2012.
20/03/2013 Φ Φροντιστήριο 8: Λύσεις Ενδιάμεσης Εξέτασης
22/03/2013 Δ Σωροί
Ουρές Προτεραιότητας, Ο ΑΤΔ Σωρός, Υλοποίηση και πράξεις
Chapter 6, M. Weiss. Data Structure and Algorithm Analysis in Java, Pearson, 2012.
26/03/2013 Δ O Αλγόριθμος Ταξινόμησης HeapSort
Η διαδικασία PercolateDown, Δημιουργία Σωρού, O Αλγόριθμος Ταξινόμησης HeapSort, Υλοποίηση, Παραδείγματα
Chapter 7, M. Weiss. Data Structure and Algorithm Analysis in Java, Pearson, 2012.
27/03/2013 Φ Το φροντιστήριο δεν θα γίνει
29/03/2013 Δ Γράφοι I
Γράφοι - ορισμοί και υλοποίηση, Διάσχιση Γράφων
Chapter 9, M. Weiss. Data Structure and Algorithm Analysis in Java, Pearson, 2012.
02/04/2013 Δ Γράφοι II
Τοπολογική Ταξινόμηση: DAGs, Αλγόριθμοι, Εφαρμογές
Chapter 9, M. Weiss. Data Structure and Algorithm Analysis in Java, Pearson, 2012.
03/04/2013 Φ Φροντιστήριο 10: Γράφοι Ι Εκφώνηση Λύσεις
05/04/2013 Δ Γράφοι ΙΙΙ - Ελάχιστα Γεννητορικά Δένδρα σε Γράφους
Εφαρμογές, Ο αλγόριθμος του Prim
Chapter 9, M. Weiss. Data Structure and Algorithm Analysis in Java, Pearson, 2012.
09/04/2013 Δ Γράφοι ΙΙΙ - Ελάχιστα Γεννητορικά Δένδρα σε Γράφους
Εφαρμογές, Ο αλγόριθμος του Kruskal
Chapter 9, M. Weiss. Data Structure and Algorithm Analysis in Java, Pearson, 2012.
10/04/2013 Φ Φροντιστήριο 11: Γράφοι ΙΙ Εκφώνηση Λύσεις
12/04/2013 Δ Γράφοι IV - Βραχύτερα Μονοπάτια σε Γράφους
Ο αλγόριθμος του Dijkstra.
Chapter 9, M. Weiss. Data Structure and Algorithm Analysis in Java, Pearson, 2012.
16/04/2013 Δ Κατακερματισμός (Hashing) I
Ανασκόπηση Προβλήματος και Προκαταρκτικών Λύσεων, Bit-Διανύσματα, Τεχνικές Κατακερματισμού & Συναρτήσεις Κατακερματισμού, Διαχείριση Συγκρούσεων με Αλυσίδωση
Chapter 5, M. Weiss. Data Structure and Algorithm Analysis in Java, Pearson, 2012.
17/04/2013 Φ Φροντιστήριο 12:Γράφοι & Κατακερματισμός Εκφώνηση Λύσεις
19/04/2013 Δ Κατακερματισμός (Hashing) II
Διαχείριση Συγκρούσεων με Ανοικτή Διεύθυνση (a) Linear Probing, b) Quadratic Probing c) Double Hashing, Διατεταγμένος Κατακερματισμός (Ordered Hashing), Επανακατακερματισμός (Rehashing)   - Εφαρμογές Κατακερματισμού
Chapter 5, M. Weiss. Data Structure and Algorithm Analysis in Java, Pearson, 2012.
22/05/2013 Φ ΕΠΙΠΡΟΣΘΕΤΟ ΦΟΝΤΙΣΤΗΡΙΟ ΓΙΑ ΤΕΛΙΚΗ ΕΞΕΤΑΣΗ
Αίθουσα:tbd, Ώρα:tbd
   
25/05/2013   ΤΕΛΙΚΗ ΕΞΕΤΑΣΗ
Αίθουσα:ΧΩΔ02-009, Ώρα:16:30-19:30
   
* Ένα μέρος των διαφανειών του μαθήματος παραχωρήθηκε από τις/τους καθηγήτριες/ητές Άννα Φιλίππου, Γιώργο Πάλλη και Δημήτρη Ζειναλιπούρ.