Home: Πρόγραμμα/Σημειώσεις |
Week | Διάλεξη | Ημερομηνία | Περιγραφή | |
1 |
|
Δευτέρα 5/9 |
Δομές
Δεδομένων και Αλγόριθμοι - Εισαγωγή
Αλγόριθμοι και Πολυπλοκότητα,
Οργάνωση Δεδομένων και Δομές Δεδομένων
|
|
Διάλεξη 2 | Πέμπτη 8/9 |
Βασικές Αρχές
Προγραμματισμού
- Δείκτες & Πίνακες
Αριθμητική Δεικτών,
Δείκτες και Πίνακες,
Παραδείγματα
|
|
|
2 |
|
Δευτέρα 12/9 |
Βασικές Αρχές
Προγραμματισμού
- Δείκτες (Συνέχεια)
Πολυδιάστατοι πίνακες
Πέρασμα παραμέτρων σε
προγράμματα C
|
6x 1x |
Εργαστήριο |
Δευτέρα
12/9 14:00-15:30 |
Διευθέτηση Λογαριασμών - Επανάληψη της γλώσσας C (εισαγωγικές
έννοιες)
Συναρτήσεις, Εξωτερικές μεταβλητές, Κανόνες εμβέλειας, Διάρκεια &
Αρχικοποίηση
μεταβλη.
|
6x 1x | |
|
Τετάρτη 14/9 |
Ολοκλήρωση Διαφανειών Εργαστηρίου & Διαλέξεων Άσκηση Εργαστηρίου (Θα εξεταστεί στο επόμενο εργαστήριο 19/9 από τον βοηθό εργαστηρίου Μάριο Κυριακού) |
lab1.pdf | |
|
Πέμπτη 15/9 |
Βασικές Αρχές
Προγραμματισμού - Απλές δομές δεδομένων
Δομές,
φωλιασμένες δομές, τρόποι δήλωσης δομών, δομές ως παράμετροι σε
συναρτήσεις, δείκτες σε δομές, χρήση ενώσεων.
|
6x 1x | |
3 |
Διάλεξη 5 |
Δευτέρα 19/9 |
Βασικές Αρχές
Προγραμματισμού -
Διαχείριση Μνήμης
Δυναμικές Δομές Δεδομένων,
Δυναμική Δέσμευση/Αποδέσμευση
Μνήμης
Δομή τύπου
structure
– Αυτοαναφορικές δομές,
Η δήλωση
typedef
στη
C
|
6x 1x |
Εργαστήριο |
Δευτέρα
19/9 14:00-15:30 |
Βοηθητικές
Ασκήσεις σε Pointers, Tables, Structures (simple), Memory
Allocation Ανάθεση Προγραμματιστικής Άσκησης 1 - Γλώσσα C (Παράδοση 26/9) Οδηγίες Προγραμματιστικών Ασκήσεων |
prog1.pdf | |
Φροντιστήριο Διάλεξη 6 |
Τετάρτη 21/9 |
Βασικές Αρχές
Προγραμματισμού
- Ολοκλήρωση Διαχείρισης Μνήμης & Αναδρομή
(Recursion)
Η
έννοια της αναδρομής, Μη-αναδρομικός / Αναδρομικός Ορισμός Συναρτήσεων
Αφαίρεση της Αναδρομής
|
6x 1x | |
Διάλεξη 7 |
Πέμπτη 22/9 |
Βασικές Δομές
Δεδομένων (Στοίβες/Λίστες)
Αφηρημένοι Τύποι Δεδομένων (ΑΤΔ),
Οι ΑΤΔ Στοίβα
και
Ουρά, Υλοποίηση των ΑΤΔ Στοίβα και Ουρά με Στατική Δέσμευση Μνήμης
|
6x 1x | |
4 |
Διάλεξη |
Δευτέρα 26/9 | Επίλυση αποριών σχετικά με την Άσκηση 1. / Στοίβες συνέχεια | |
Εργαστήριο | Δευτέρα 26/9 | Παράδοση / Εξέταση Άσκησης 1. | ||
Φροντιστήριο |
Τετάρτη 28/9 |
Μελέτη
παραδείγματος Στοίβας με Δυναμική Δέσμευση Μνήμης
Ανάθεση Θεωρητικής Άσκησης 1 - Αναδρομή & Στοίβες (Παράδοση 5/10) |
stack.c | |
Διάλεξη 8 |
Πέμπτη 29/9 |
Στοίβες: Υλοποίηση &
Εφαρμογές (με Δυναμική Δέσμευση), Ολοκλήρωση Διαφανειών διάλεξης 7,
Επεξήγηση Θεωρητικής Άσκησης 1
Υλοποίηση Στοιβών με Δυναμική Δέσμευση Μνήμης
Εφαρμογή
Στοιβών 1:
Αναδρομικές συναρτήσεις
Εφαρμογή
Στοιβών 2:
Ισοζυγισμός Παρενθέσεων
|
6x 1x | |
5 |
Διάλεξη 9 |
Δευτέρα 3/10 |
Υλοποίηση
Λιστών
Ευθύγραμμες Απλά Συνδεδεμένες Λίστες
Ευθύγραμμες Διπλά Συνδεδεμένες Λίστες
|
6x 1x |
Εργαστήριο | Δευτέρα 3/10 | Ανάθεση Προγραμματιστικής Άσκησης 2 - Στοίβες & Λίστες (Παράδοση 12/10) | prog2.pdf | |
Φροντιστήριο |
Τετάρτη 5/10 | Υλοποίηση Λιστών συνέχειa (Διάλεξη 9)/ Μελέτη παραδείγματος Ουράς / Λύση Θεωρητικής Άσκησης 1 | queue.c | |
Διάλεξη 10 |
Πέμπτη 6/10 |
a)
Πολυπλοκότητα Αλγορίθμων /
b) Μαθηματικοί
Ορισμοί
Πρόβλημα, Στιγμιότυπο, Αλγόριθμος , Εμπειρική – Θεωρητική Ανάλυση
Αλγορίθμων
Εργαλεία εκτίμησης πολυπλοκότητας: οι τάξεις Ο(n),
Ω(n),
Θ( n)
Παραδείγματα Ανάλυσης Πολυπλοκότητας, Χρήσιμοι μαθηματικοί ορισμοί,
Μαθηματική Επαγωγή
|
6x 1x | |
6 |
Διάλεξη 11 |
Δευτέρα 10/10 |
Πολυπλοκότητα
Αλγορίθμων
- Παραδείγματα
Παραδείγματα Ανάλυσης Πολυπλοκότητας
Γραμμική και Δυαδική Αναζήτηση
Ανάθεση Θεωρητικής Άσκησης 2 - Πολυπλοκότητα Αλγορίθμων (Παράδοση 17/10) |
6x 1x |
Εργαστήριο | Δευτέρα 10/10 | Επίλυση αποριών πάνω στην Προγραμματιστική Άσκηση 2 | ||
Φροντιστήριο |
Τετάρτη 12/10 |
Επίλυση αποριών & θεωρητικής Άσκησης 1 Παράδοση Προγραμματιστικής Άσκησης 2 |
||
Διάλεξη 12 |
Πέμπτη 13/10 |
Αλγόριθμοι
Ταξινόμησης
(SelectionSort, InsertionSort)
Οι
αλγόριθμοι ταξινόμησης:
SelectionSort, InsertionSort,
|
6x 1x | |
7 |
Διάλεξη 13 |
Δευτέρα 17/10 |
Αλγόριθμοι
Ταξινόμησης
(Mergesort, BucketSort) Οι αλγόριθμοι ταξινόμησης: MergeSort, BucketSort |
6x 1x |
Εργαστήριο | Δευτέρα 17/10 | Επίλυση Εργαστηριακής Άσκησης 2 / Επίλυση Αποριών | ΛΥΣΗ Prog2a | |
Φροντιστήριο |
Τετάρτη 19/10 | Ολοκλήρωση Αλγόριθμου BucketSort / Λύση Άσκησης 2 | ΛΥΣΗ Theory2 | |
Διάλεξη 14 |
Πέμπτη 20/10 |
Αλγόριθμοι
Ταξινόμησης (QuickSort)
Ο
αλγόριθμος
QuickSort,
Έμμεση
Ταξινόμηση,
Εξωτερική Ταξινόμηση
|
6x 1x | |
8 |
Ενδιάμεση Εξέταση |
Δευτέρα 24/10 | Ενδιάμεση Εξέταση (μέχρι Αλγόριθμους Ταξινόμησης) | |
Εργαστήριο | Δευτέρα 24/10 | Ανάθεση Προγραμματιστικής Άσκησης 3 - Αλγόριθμοι Ταξινόμησης (Παράδοση 2/11) | prog3.pdf | |
Φροντιστήριο |
Τετάρτη 26/10 | Λύση Ενδιάμεσης Εξέτασης | ΛΥΣΗ Midterm | |
Διάλεξη 15 |
Πέμπτη 27/10 |
Εισαγωγή σε Δενδρικές Δομές Δεδομένων
Εισαγωγή σε δενδρικές δομές δεδομένων, Ορισμοί και πράξεις,
Αναπαράσταση δενδρικών δομών δεδομένων στη μνήμη,
Διάσχιση Δέντρων
|
6x 1x | |
9 |
Διάλεξη 16 |
Δευτέρα 31/10 |
Δυαδικά Δέντρα & Δυαδικά
Δέντρα Αναζήτησης
Δυαδικά Δένδρα,
Δυαδικά Δένδρα Αναζήτησης,
Πράξεις Εισαγωγής, Εύρεσης Στοιχείου, Διαγραφής Μικρότερου Στοιχείου
|
6x 1x |
Εργαστήριο | Δευτέρα 31/10 |
Επίλυση Αποριών - Προγραμματιστικής Άσκησης 3 Μπορείτε να κατεβάσετε το αρχείο εισόδου "data.txt" |
data.txt | |
Φροντιστήριο |
Τετάρτη 2/11 |
Δυαδικά Δένδρα Αναζήτησης (συνέχεια) Επίλυση Αναδρομικών Ασκήσεων Ανάθεση Θεωρητικής Άσκησης 3 (Παράδοση 10/11) |
theory3.pdf | |
Διάλεξη 17 |
Πέμπτη 3/11 |
Β-δέντρα
Εισαγωγή & Ισοζυγισμένα Δένδρα,
2-3
Δένδρα, Περιγραφή Πράξεων της Εισαγωγής και αναφορά σε άλλες πράξεις,
Β-δένδρα
Παράδοση Εργαστηριακής Άσκησης 3. |
6x 1x | |
10 |
Διάλεξη 18 |
Δευτέρα 7/11 |
Εισαγωγή σε Γράφους Ορισμοί & Υλοποίηση, Μέθοδοι διάσχισης Γράφων |
6x 1x |
Εργαστήριο | Δευτέρα 7/11 | Η βιβλιοθήκη <string.h> και παραδείγματα | ΛΥΣΗ Prog3 | |
Φροντιστήριο |
Τετάρτη 9/11 | Βοηθητικές αναδρομικές ασκήσεις σε Δένδρα | trees | |
Διάλεξη 19 |
Πέμπτη 10/11 |
Γράφοι (συνέχεια) Τοπολογική Ταξινόμηση: DAGs, Αλγόριθμοι, Εφαρμογές Παράδοση Θεωρητικής Άσκησης 3 Ανάθεση Προγραμματιστικής Άσκησης 4 - Κωδικοί Huffman (Δέντρα) - Παράδοση 28/11 |
6x
1x >> prog4.pdf << |
|
11 |
Διάλεξη 20 |
Δευτέρα 14/11 |
Ελάχιστα Γεννητορικά Δένδρα
σε Γράφους Εφαρμογές, Ο αλγόριθμος του Prim |
6x 1x |
Εργαστήριο | Δευτέρα 14/11 | Επεξήγηση Εργαστηριακής Άσκησης 4 | sample.txt | |
Φροντιστήριο |
Τετάρτη 16/11 | Βοηθητικές Ασκήσεις σε Γράφους I | graphs | |
Διάλεξη 21 |
Πέμπτη 17/11 |
Ελάχιστα Γεννητορικά Δένδρα
σε Γράφους (συνέχεια) Ο αλγόριθμος του Kruskal. |
6x 1x | |
12 |
Διάλεξη 22 |
Δευτέρα 21/11 |
Βραχύτερα Μονοπάτια σε Γράφους Ο αλγόριθμος του Dijkstra. |
6x 1x |
Εργαστήριο | Τετάρτη 21/11 | Ερωτήσεις/Απαντήσεις Εργαστηριακής Άσκησης 4 | ||
Φροντιστήριο |
Τετάρτη 23/11 | Βοηθητικές Ασκήσεις σε Γράφους II | graphs2 | |
Διάλεξη 23 |
Πέμπτη 24/11 |
Κατακερματισμός
(Hashing)
Ανασκόπηση Προβλήματος και Προκαταρκτικών Λύσεων,
Bit-Διανύσματα,
Τεχνικές Κατακερματισμού & Συναρτήσεις Κατακερματισμού,
Διαχείριση Συγκρούσεων με Αλυσίδωση
|
6x 1x | |
13 |
Διάλεξη 24 |
Δευτέρα 28/11 |
Κατακερματισμός
(Hashing)
Διαχείριση
Συγκρούσεων με Ανοικτή Διεύθυνση
a) Linear Probing, b) Quadratic Probing
c)
Double Hashing
|
6x 1x |
Εργαστήριο | Δευτέρα 28/11 | Ερωτήσεις/Απαντήσεις Εργαστηριακής Άσκησης 4 | ||
Φροντιστήριο |
Τετάρτη 30/11 |
Βοηθητικές Ασκήσεις σε
Κατακερματισμό Θεωρητική Άσκηση 4 |
hashing | |
Διάλεξη 25 |
Πέμπτη 1/12 |
Ολοκλήρωση διαφανειών
Κατακερματισμού Ασκήσεις σε
Κατακερματισμό
Διατεταγμένος Κατακερματισμός
(Ordered Hashing),
Συμπαγής Κατάλογοι (Bloom
Filters),
Επανακατακερματισμός
(Rehashing),
Εφαρμογές
Κατακερματισμού\
|
ΛΥΣΗ Theory4 | |
Παράδοση Εργαστηριακής Άσκησης 4 Να αποσταλεί ταχυδρομικά στο mkyriakou@gmail.com μεχρι την Παρασκευή 2/12 και να παραδοθεί ενα hardcopy στο γραφείο μου Β118) 2/12 - Λήξη Μαθημάτων 7-22 / 12 - Εβδομάδα Τελικών Εξετάσεων |
||||
Τελική Εξέταση |
Σάββατο 17/10 |
Ώρα: 16:30-19:30 Τοποθεσία: Πανεπιστημιούπολη ΧΩΔ01 #101 Παρακαλώ να ενημερωθείτε για τις τελευταίες αλλαγές στο επίσημο site http://www.ucy.ac.cy/fmweb/announcements/exams/exetaseis.htm |
||
Οι σημειώσεις του μαθήματος βασίζονται κατά το
μεγαλύτερο μέρος τους σε υλικό που δόθηκε από τη
Αναπληρώτρια Καθηγήτρια Α. Φιλίππου
|
||||