Μάθημα : Αλγοριθμική & Δομές Δεδομένων (Εργαστήριο)
Κωδικός : EL845113
EL845113 - ΔΗΜΗΤΡΙΟΣ ΤΖΗΜΑΣ
Η πλατφόρμα σάς ανακατεύθυνε αυτόματα στην αρχική σελίδα για να συνδεθείτε προτού προχωρήσετε σε άλλες ενέργειες. Πιθανόν, να έληξε η σύνοδός σας.
Περιγραφή Μαθήματος
3. ΜΑΘΗΜΑ: ΑΛΓΟΡΙΘΜΟΙ & ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ
ΩΡΕΣ ΔΙΔΑΣΚΑΛΙΑΣ: 70/εξάμηνο, 5/εβδομάδα
ΕΙΔΟΣ ΜΑΘΗΜΑΤΟΣ: Μικτό (2Θ + 3Ε)
Γενικός σκοπός του μαθήματος είναι να γνωρίσει ο καταρτιζόμενος τις βασικές έννοιες της ανάλυσης και της σύνθεσης ενός προβλήματος, τους κωδικοποιημένους τρόπους παρουσίασης μιας λύσης και τις βασικές αλγοριθμικές δομές.
Επίσης να εξοικειωθεί στο σωστό σχεδιασμό αλγορίθμων χρησιμοποιώντας τις κατάλληλες δομές δεδομένων με βασικότερο στόχο την εισαγωγή του καταρτιζόμενου στον αλγοριθμικό τρόπο επίλυσης προβλημάτων με τον οποίο άλλωστε πρέπει να είναι εξοικειωμένος όποιος ασχολείται επαγγελματικά σε οποιονδήποτε κλάδο της πληροφορικής.
Θα πρέπει ως εποπτικό μέσο μεταξύ άλλων να χρησιμοποιείται και μια γλώσσα προγραμματισμού με σκοπό την καλύτερη κατανόηση των παραπάνω αλγοριθμικών εννοιών από τους καταρτιζόμενους και όχι το να γίνουν προγραμματιστές.
ENOTHTA 1: Ανάλυση – Σύνθεση προβλήματος
Διάρκεια: 2 διδακτικές ώρες (2 θεωρία)
Στόχοι: Ο καταρτιζόμενος πρέπει να κατανοήσει την έννοια του προβλήματος και να αναπτύξει αναλυτικές και συνθετικές ικανότητες ώστε να μπορεί να αποκωδικοποιεί και να λύνει απλά προβλήματα.
Περιεχόμενα :
-
Η έννοια πρόβλημα
-
Ανάλυση και σύνθεση προβλήματος
-
Καθορισμός απαιτήσεων
ΕΝΟΤΗΤΑ 2: Βασικές έννοιες αλγορίθμων
Διάρκεια: 2 διδακτικές ώρες (2 θεωρία)
Στόχοι: Ο καταρτιζόμενος να μπορεί :
-
να γνωρίζει τις βασικές αρχές που πρέπει να χαρακτηρίζουν έναν αλγόριθμο
-
να κατανοεί έννοιες όπως σταθερά, μεταβλητή, τύπος δεδομένων, εντολή
-
να χρησιμοποιεί με άνεση τους γνωστούς τρόπους παρουσίασης ενός αλγόριθμου
-
να γνωρίζει τις βασικές έννοιες των λογικών διαγραμμάτων.
Περιεχόμενα :
• αλγόριθμοι: βασικές έννοιες – χαρακτηριστικά
• τρόποι παρουσίασης αλγορίθμου
o ελεύθερο κείμενο
o φυσική γλώσσα
o έννοιες σταθερών/ μεταβλητών – βασικοί τύποι
o έννοιες εντολών ανάγνωσης, εμφάνισης, εκχώρησης
o ψευδοκώδικας – αρχική προσέγγιση
• διαγράμματα ροής
ΕΝΟΤΗΤΑ 3: Βασικές αλγοριθμικές δομές Ε
Διάρκεια: 12 διδακτικές ώρες (8 θεωρία + 4 εργαστήριο)
Στόχοι: Ο καταρτιζόμενος πρέπει να εξοικειωθεί με τις βασικές αλγοριθμικές δομές της διαδοχής, της επανάληψης και της επιλογής και να είναι σε θέση να χρησιμοποιεί την/τις κατάλληλη/ες κατά περίπτωση.
Περιεχόμενα :
• Διαδοχή
• Επιλογή
o απλή επιλογή
o πεπερασμένη επιλογή
o πολλαπλή επιλογή
o φωλιασμένη επιλογή
• Επανάληψη
o κατά συνθήκη επανάληψη
o πεπερασμένη επανάληψη
ΕΝΟΤΗΤΑ 4: Σχεδίαση αλγορίθμων
Διάρκεια: 9 διδακτικές ώρες (6 θεωρία + 3 εργαστήριο)
Στόχοι: Ο καταρτιζόμενος πρέπει να είναι σε θέση να σχεδιάζει σωστούς αλγορίθμους υπό τη μορφή διαγραμμάτων ροής και ψευδοκώδικα και να τους κωδικοποιεί με τη βοήθεια ενός προγραμματιστικού εργαλείου (προτείνεται η Pascal).
Περιεχόμενα :
-
Συνδυασμός βασικών αλγοριθμικών δομών
-
Λογικές πράξεις /συνθήκες
-
Υποαλγόριθμοι: διαδικασίες /συναρτήσεις
-
Γλώσσες προγραμματισμού / Υλοποίηση απλών αλγορίθμων
ΕΝΟΤΗΤΑ 5: Πίνακες – εγγραφές
Διάρκεια: 6 διδακτικές ώρες (4 θεωρία + 2 εργαστήριο)
Στόχοι: Να εξοικειωθεί με τη δομή του πίνακα και των διαφόρων τεχνικών αναζήτησης στοιχείου, ταξινόμησης πίνακα. Επίσης, να γνωρίζει την έννοια της εγγραφής και να είναι σε θέση να συνδυάζει αυτές τις γνώσεις με τις γνώσεις που απέκτησε για τους πίνακες, ώστε να χρησιμοποιεί τους πίνακες εγγραφών για να αντιμετωπίζει αντίστοιχα προβλήματα. Θα πρέπει να επισημανθεί πως και σε αυτή την ενότητα είναι αναγκαία η χρήση ενός προγραμματιστικού εργαλείου.
Περιεχόμενα :
• πίνακας: απλός, δυσδιάστατος, ν-διάστατος
o αναζήτηση στοιχείων πίνακα
o σειριακή αναζήτηση
o δυαδική αναζήτηση
o ταξινόμηση στοιχείων πίνακα
o με επιλογή (selection sort)
o φυσαλίδας(bubblesort)
o shellsort
o γρήγορη ταξινόμηση
• εγγραφή
• πίνακες εγγραφών
ΕΝΟΤΗΤΑ 6: Δυναμικές δομές δεδομένων
Διάρκεια: 6 διδακτικές ώρες (4 θεωρία + 2 εργαστήριο)
Στόχοι: Ο καταρτιζόμενος πρέπει να κατανοεί τις βασικές έννοιες των δυναμικών δομών όπως: δείκτης, χρήση δείκτη σε εγγραφές, λίστες – με ιδιαίτερη έμφαση στις δυναμικές λίστες – ουρές, δένδρα, γραφήματα κλπ. Επίσης, να εξοικειωθεί με την τεχνική της αναδρομής. Είναι επιθυμητό και σε αυτήν την ενότητα να γίνει χρήση προγραμματιστικού εργαλείου με σκοπό την εμβάθυνση στις προαναφερθείσες έννοιες.
Περιεχόμενα :
-
δείκτες – βασικές έννοιες
-
δείκτες σε εγγραφές
-
λίστες
-
στοίβα
-
ουρές
-
δένδρα
-
γραφήματα
-
αναδρομή
ΕΝΟΤΗΤΑ 7: Τεχνικές σχεδίασης
Διάρκεια: 3 διδακτικές ώρες (2 θεωρία + 1 εργαστήριο)
Στόχοι: Ο καταρτιζόμενος πρέπει να γνωρίζει τις διάφορες τεχνικές σχεδίασης αλγορίθμων και να επιλέγει κατά περίπτωση την ενδεδειγμένη.
Τέλος να είναι σε θέση να χρησιμοποιεί τις γνώσεις και τις δεξιότητες που απέκτησε στις προηγούμενες ενότητες, ώστε να μπορεί να επιλύει ανάλογα προβλήματα.
Περιεχόμενα :
• κλασσική ανάπτυξη
• δομημένη ανάπτυξη
o βασικές αρχές: αφαίρεση, διαίρεση, τυπικότητα, ιεράρχηση
o τμηματοποίηση
o ιεραρχική σχεδίαση
• αντικειμενοστραφής σχεδίαση
ΕΝΟΤΗΤΑ 8: Πρόοδος
Διάρκεια: 2 διδακτικές ώρες (2 εργαστήριo)
Ημερολόγιο
Ανακοινώσεις
Όλες...- - Δεν υπάρχουν ανακοινώσεις -