Μέθοδος Conway

Είναι μια στατιστική μέθοδος που χρησιμοποιείται στον προγραμματισμό που σας επιτρέπει να αξιολογήσετε την πολυπλοκότητα ενός αλγορίθμου για την επίλυση ενός προβλήματος, χρησιμοποιώντας μια ανάλυση της πιθανής αποτελεσματικότητάς του και την ευκολία κατανόησης για τον τελικό χρήστη. Η μέθοδος αναπτύχθηκε από τον συγγραφέα στα μέσα του 20ου αιώνα, James MacMillan Conway. Ο Conway απέδειξε δύο σημαντικά αποτελέσματα: πρώτον, ότι για ορισμένες κατηγορίες προβλημάτων υπάρχουν πολλαπλά μοντέλα υπολογιστικής πολυπλοκότητας, έτσι ώστε για ένα δεδομένο πρόβλημα μπορεί να μην είναι προφανές σε ποια άλλη κατηγορία μπορεί να αντιστοιχιστεί μια υποκλάση. Δεύτερον, έδειξε πώς να ταξινομούνται οι αλγόριθμοι με βάση την υπολογιστική τους πολυπλοκότητα, μετρώντας τον αριθμό των επαναλήψεων που απαιτούνται για την επιλογή οποιουδήποτε στοιχείου στην έξοδο μέχρι να συμπεριληφθεί το επιθυμητό. Εν ολίγοις, ο αλγόριθμος βαθμολογείται με το πόσες φορές πρέπει να δοκιμάσει τις επιλογές με την ελπίδα να μαντέψει τη σωστή απάντηση για να τη βρει. Ωστόσο, με αυτή τη μέθοδο εκτίμησης της πολυπλοκότητας ενός αλγορίθμου, τίθεται το ερώτημα εάν η βαθμολογία του αλγορίθμου είναι η μέγιστη τιμή που υπολογίζεται ή είναι η αναμενόμενη/μέση τιμή, καθώς μπορεί να υπάρχει περίπτωση η αναμενόμενη βαθμολογία να είναι πολύ χαμηλότερη από τη μέγιστη υπολογίζεται. Αυτό το ζήτημα έχει επιλυθεί εν μέρει σε μια τροποποιημένη εκτίμηση της πολυπλοκότητας του αλγορίθμου, της πολυπλοκότητας ανάπτυξης, η οποία παρέχει ένα ανώτερο όριο στον αναμενόμενο χρόνο εκτέλεσης.