Για την επίλυση ενός υπολογιστικού προβλήματος Π έχουμε να επιλέξουμε μεταξύ τριών διαφορετικών αλγορίθμων «διαίρει και βασίλευε». Ο αλγόριθμος Α1 διασπά το αρχικό πρόβλημα μεγέθους n σε 16 υποπροβλήματα μεγέθους n/4, τα επιλύει και στη συνέχεια συνθέτει τις λύσεις τους σε χρόνο n3/2. Ο αλγόριθμος Α2 διασπά το αρχικό πρόβλημα μεγέθους n σε 8 υποπροβλήματα μεγέθους n/8, τα επιλύει και στη συνέχεια συνθέτει τις λύσεις τους σε χρόνο 2n. Τέλος, ο αλγόριθμος Α3διασπά το αρχικό πρόβλημα μεγέθους n σε 2 υποπροβλήματα μεγέθους n/7 και σε άλλα 2 υποπροβλήματα μεγέθους 2n/7, τα επιλύει και στη συνέχεια συνθέτει τις λύσεις τους σε χρόνο n.
A) Να γράψετε τις αναδρομικές εξισώσεις που δίνουν τον χρόνο εκτέλεσης των αλγορίθμων Α1και A2 και στη συνέχεια να τις επιλύσετε με χρήση του θεωρήματος της Κυριαρχίας.
B) Επαληθεύστε την απάντηση του υποερωτήματος (Α) για τον χρόνο εκτέλεσης T2(n) του αλγορίθμου Α2 με τη μέθοδο της αντικατάστασης, προσδιορίζοντας επακριβώς τη σταθερά n0 και εκείνες (c1, c2) του ασυμπτωτικού συμβολισμού. Ως αρχική συνθήκη, ισχύει ότι
Γ) Να γράψετε την αναδρομική εξίσωση που δίνει τον χρόνο εκτέλεσης του αλγορίθμου Α3 και στη συνέχεια να την επιλύσετε με το δέντρο της αναδρομής.
Δ) Ποιος αλγόριθμος επιλύει χρονικά πιο αποδοτικά το υπολογιστικό πρόβλημα Π και γιατί;

0 Σχόλια