Ν! = Ν·(Ν-1)! για Ν ≥ 1
0! = 1
Αλγόριθμοι
Στόχοι του κεφαλαίου αυτού είναι να μπορούν οι μαθητές:
- να περιγράφουν την έννοια του αλγορίθμου και να διακρίνουν την ύπαρξη συγκεκριμένων χαρακτηριστικών που χρειάζεται να έχει ένας αλγόριθμος
- να αναγνωρίζουν βασικές έννοιες στην Ανάλυση Αλγορίθμων
- να αναγνωρίζουν τις διάφοΣχεσιακοί τελεστέςρες μορφές αναπαράστασης αλγορίθμου
- να αναφέρουν τους βασικούς τύπους και δομές δεδομένων
- να διακρίνουν τις βασικές εντολές και δομές που χρησιμοποιούνται σε έναν αλγόριθμο
- να προσδιορίζουν τον τρόπο λειτουργίας των δομών δεδομένων
- να εκπονούν απλούς αλγορίθμους
- να εντοπίζουν και να διορθώνουν τα λογικά λάθη ενός αλγορίθμου
- να εξηγούν την ανάγκη δημιουργίας της κατάλληλης τεκμηρίωσης.
2.2.1 Ορισμός αλγορίθμου
Η λέξη αλγόριθμος (algorithm) προέρχεται από μια μελέτη του Πέρση μαθηματικού Μοχάμεντ Ιμπν Μουσά Αλ Χουαρίζμι (Muhammad ibn Mūsā al-Khwārizmī), που έζησε περί το 825 μ.Χ. (Εικόνα 2.8). Παρόλα αυτά, η ύπαρξη και η ηλικία μερικών αλγορίθμων αριθμεί χιλιάδες χρόνια. Σήμερα, το πεδίο της μελέτης των αλγορίθμων (το οποίο καλείται θεωρία αλγορίθμων) είναι ένα ιδιαίτερα ευρύ πεδίο έρευνας. Γενικά,
Αλγόριθμος είναι μια πεπερασμένη σειρά ενεργειών, αυστηρά καθορισμένων και εκτελέσιμων σε πεπερασμένο χρόνο, που στοχεύουν στην επίλυση ενός προβλήματος.
Η έννοια του αλγορίθμου δεν συνδέεται αποκλειστικά και μόνο με προβλήματα της Πληροφορικής. Για παράδειγμα, το δέσιμο της γραβάτας αποτελεί ένα πρόβλημα, για την επίλυση του οποίου χρειάζεται να εκτελεστεί μια πεπερασμένη σειρά ενεργειών (Εικόνα 2.9.). Η αλληλουχία των ενεργειών οδηγεί στο επιθυμητό αποτέλεσμα. Η αλληλουχία δεν είναι απαραίτητα μοναδική για την επίτευξη αυτού του, αφού, υπάρχουν και άλλοι τρόποι για το δέσιμο της γραβάτας.