ΚΕΦΑΛΑΙΟ ΑΛΓΟΡΙΘΜΟΙ
2.2.1 Αλγόριθμος Η έννοια του αλγορίθμου δεν συνδέεται αποκλειστικά και μόνο με προβλήματα της Πληροφορικής. Πχ συνταγή μαγειρικής - Δέσιμο γραβάτας
Ο αλγόριθμος περιγράφεται σε ως εξής: 1 Βάλε στο z τον διαιρέτη. 2 Αν z = 0, τότε ΜΚΔ είναι ο x. 3 Αν z ≠ 0 τότε διαίρεσε το x με το y και έστω z το υπόλοιπο Βάλε την τιμή του y στο x Βάλε την τιμή του z στο y 4 Πήγαινε στη γραμμή 2
χyz υπόλοιπο
Λύση στον υπολογιστή mod : βρίσκει το υπόλοιπο της ακέραιας διαίρεσης
2.2.2 Χαρακτηριστικά αλγορίθμου πρέπει να τα ικανοποιεί κάθε αλγόριθμος: Είσοδος: Κάθε αλγόριθμος χρειάζεται να δέχεται ένα σύνολο μεταβλητών εισόδου (που μπορεί να είναι και το κενό σύνολο), οι οποίες αποτελούν τα δεδομένα του αλγορίθμου. Έξοδος: Ο αλγόριθμος πρέπει να δημιουργεί τουλάχιστον ένα αποτέλεσμα προς τον χρήστη ή προς ένα άλλο αλγόριθμο. Καθοριστικότητα: Κάθε εντολή πρέπει να καθορίζεται χωρίς αμφιβολία για τον τρόπο εκτέλεσής της. Πχ μία εντολή z χ / ψ πρέπει να λαμβάνει υπ’ όψιν της το γεγονός ότι μπορεί το ψ να είναι μηδέν. Περατότητα: Ο αλγόριθμος πρέπει να τελειώνει μετά από πεπερασμένα βήματα. Αν δεν τελειώνει μετά από ένα συγκεκριμένο αριθμό βημάτων δεν είναι αλγόριθμος αλλά υπολογιστική διαδικασία. Αποτελεσματικότητα: Κάθε εντολή ενός αλγορίθμου πρέπει να είναι απλή και εκτελέσιμη (δεν αρκεί να έχει οριστεί).
2.2.3 Ανάλυση Αλγορίθμων, Θεωρία Υπολογισμού, Πολυπλοκότητα Αλγορίθμων, Υπολογισιμότητα Αλγορίθμων Εκτός ύλης
2.2.4 Βασικοί τύποι αλγορίθμου
ΣειριακάΠαράλληλα
Φυσική γλώσσα Ψευδοκώδικα ή ψευδογλώσσα Γλώσσα προγραμματισμού –Οπτικές –Κειμενικές Διαγραμματική αναπαράσταση (διαγράμματα ροής) Αναπαράσταση αλγορίθμου
2.2.6 Δεδομένα και αναπαράστασή τους
ΠΙΝΑΚΑΣΣΤΟΙΒΑ LIFO ΟΥΡΑ FIFO ΓΡΑΦΟΣΛΙΣΤΑΔΕΝΤΡΟ
ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ Στατικές – Δυναμικές Γραμμικές - Μη γραμμικές Κύρια μνήμη-Βοηθητική μνήμη Δεδομένα και αναπαράστασή τους Αρχεία Δεδομένων