Επιλογή Σελίδας

Σε ποιες περιπτώσεις ένας αλγόριθμος Α χαρακτηρίζεται αποδοτικότερος από ένα αλγόριθμο Β; Να θεωρήσετε ότι η σύγκριση γίνεται κάτω από τις ίδιες ακριβώς συνθήκες (ίδια δεδομένα, ίδιος υπολογιστής, ίδια γλώσσα προγραμματισμού).

Μονάδες 6

Απάντηση

από την παράγραφο 5.1.4 Αποδοτικότητα αλγορίθμων 

«Αν η επίλυση ενός προβλήματος επιτυγχάνεται με τη χρήση δύο ή περισσοτέρων αλγορίθμων, χρειάζεται να γίνει η επιλογή του καταλληλότερου με βάση την αποδοτικότητά τους. Έτσι, αν ο αλγόριθμος Β έχει το ίδιο αποτέλεσμα με τον αλγόριθμο Α, αλλά δίνει τα αποτελέσματα σε λιγότερο χρόνο, τότε είναι αποδοτικότερος του Α. Με παρόμοιο τρόπο όταν ο αλγόριθμος Β έχει το ίδιο αποτέλεσμα με έναν αλγόριθμο Α, αλλά έχει τα αποτελέσματα με χρήση λιγότερης μνήμης, τότε είναι αποδοτικότερος του Α. Βέβαια όταν συγκρίνονται δύο αλγόριθμοι, θα πρέπει να συγκρίνονται με χρήση των ίδιων δεδομένων και κάτω από τις ίδιες συνθήκες. Γενικά, ο χρόνος εκτέλεσης κάθε αλγορίθμου εξαρτάται από ένα σύνολο παραγόντων που μπορούν να συνοψισθούν στους εξής:
Τύπος ηλεκτρονικού υπολογιστή που θα εκτελέσει το πρόγραμμα του αλγορίθμου,
Γλώσσα προγραμματισμού που θα χρησιμοποιηθεί,
Δομή προγράμματος και δομές δεδομένων που χρησιμοποιούνται,
Χρόνος για πρόσβαση στο δίσκο και στις ενέργειες εισόδου-εξόδου,
Είδος συστήματος, ενός χρήστη ή πολλών χρηστών.
Επομένως, για να έχει έννοια κάθε σύγκριση μεταξύ δύο προγραμμάτων αλγορίθμων, θα πρέπει να ικανοποιούνται οι παρακάτω προϋποθέσεις:
και τα δύο προγράμματα να έχουν συνταχθεί στην ίδια γλώσσα προγραμματισμού,
να έχει χρησιμοποιηθεί ο ίδιος μεταφραστής της γλώσσας προγραμματισμού,
να χρησιμοποιείται η ίδια υπολογιστική πλατφόρμα,
ακριβώς τα ίδια δεδομένα να αποτελούν είσοδο κατά τον έλεγχο των δύο αλγορίθμων.”

Share This