Πότε πρέπει να χρησιμοποιήσω την αναδρομή; Η αναδρομή είναι για την επίλυση προβλημάτων που μπορούν να αναλυθούν σε μικρότερα, επαναλαμβανόμενα προβλήματα. Είναι ιδιαίτερα καλό για να εργάζεστε σε πράγματα που έχουν πολλούς πιθανούς κλάδους και είναι πολύ περίπλοκα για μια επαναληπτική προσέγγιση. Ένα καλό παράδειγμα αυτού θα ήταν η αναζήτηση μέσω ενός συστήματος αρχείων.
Είναι καλό πράγμα η αναδρομή;
Η
Η αναδρομή είναι μια χρήσιμη τεχνική για να κάνετε τον κώδικα συνοπτικό και κατανοητό. Ωστόσο, έχει μικρότερη απόδοση και δημιουργεί εξαιρέσεις υπερχείλισης στοίβας σε μη βελτιστοποιημένες γλώσσες ουράς. Εξετάστε προσεκτικά την περίπτωση χρήσης όταν επιλέγετε μεταξύ αναδρομικών και επαναληπτικών συναρτήσεων.
Ποια είναι τα οφέλη της αναδρομής;
- Η αναδρομή μπορεί να μειώσει τη χρονική πολυπλοκότητα. …
- Η αναδρομή προσθέτει σαφήνεια και μειώνει τον χρόνο που απαιτείται για την εγγραφή και τον εντοπισμό σφαλμάτων κώδικα. …
- Η αναδρομή είναι καλύτερη στη διάσχιση δέντρου. …
- Η αναδρομή μπορεί να είναι αργή. …
- Επανάληψη: Μια συνάρτηση επαναλαμβάνει μια καθορισμένη διαδικασία μέχρι να αποτύχει μια συνθήκη.
Πότε πρέπει να αποφύγουμε την επανάληψη;
Ως εκ τούτου, η επανάληψη θα πρέπει να αποφεύγεται γενικά και να χρησιμοποιείται μόνο με τη δέουσα σκέψη και προσοχή όταν είναι απολύτως απαραίτητο. Αυτός ο κανόνας ελέγχει για άμεση αναδρομή (όταν μια συνάρτηση καλεί τον εαυτό της).
Πότε πρέπει να χρησιμοποιούμε επαναληπτικό και πότε αναδρομικό;
Εάν η χρονική πολυπλοκότητα είναι το σημείο εστίασης και ο αριθμός των αναδρομικών κλήσεων θα ήταν μεγάλος, είναι καλύτερο να χρησιμοποιήσετεεπανάληψη. Ωστόσο, εάν η χρονική πολυπλοκότητα δεν αποτελεί πρόβλημα και η σύντομη κώδικας είναι, η αναδρομή θα ήταν ο καλύτερος τρόπος.