Logo el.boatexistence.com

Είναι οι αναδρομικές συναρτήσεις πιο γρήγορες από την επανάληψη;

Πίνακας περιεχομένων:

Είναι οι αναδρομικές συναρτήσεις πιο γρήγορες από την επανάληψη;
Είναι οι αναδρομικές συναρτήσεις πιο γρήγορες από την επανάληψη;

Βίντεο: Είναι οι αναδρομικές συναρτήσεις πιο γρήγορες από την επανάληψη;

Βίντεο: Είναι οι αναδρομικές συναρτήσεις πιο γρήγορες από την επανάληψη;
Βίντεο: Gregory Chaitin: Complexity, Metabiology, Gödel, Cold Fusion 2024, Ενδέχεται
Anonim

Η αναδρομική συνάρτηση εκτελείται πολύ πιο γρήγορα από την επαναληπτική Ο λόγος είναι επειδή στην τελευταία, για κάθε στοιχείο, απαιτείται μια ΚΛΗΣΗ στη συνάρτηση st_push και μετά μια άλλη στο st_pop. Στην πρώτη, έχετε μόνο την αναδρομική ΚΛΗΣΗ για κάθε κόμβο. Επιπλέον, η πρόσβαση στις μεταβλητές στη στοίβα κλήσεων είναι απίστευτα γρήγορη.

Είναι αναδρομικό ή επαναληπτικό πιο γρήγορο;

Η απομνημόνευση κάνει την αναδρομή εύγευστη, αλλά φαίνεται ότι η επανάληψη είναι πάντα ταχύτερη Αν και οι αναδρομικές μέθοδοι τρέχουν πιο αργά, μερικές φορές χρησιμοποιούν λιγότερες γραμμές κώδικα από την επανάληψη και για πολλούς είναι πιο κατανοητές. Οι αναδρομικές μέθοδοι είναι χρήσιμες και για ορισμένες συγκεκριμένες εργασίες, όπως η διέλευση δομών δέντρων.

Είναι οι επαναληπτικές λύσεις πιο γρήγορες από τις αναδρομικές;

Ωστόσο, οι επαναληπτικές λύσεις είναι συνήθως πιο γρήγορες από τις αναδρομικές λύσεις όσον αφορά την ταχύτητα. … Σε μια τυπική γλώσσα προγραμματισμού, όπου ο μεταγλωττιστής δεν έχει αναδρομική βελτιστοποίηση ουράς, οι αναδρομικές κλήσεις είναι συνήθως πιο αργές από την επανάληψη.

Είναι η αναδρομή ευκολότερη από την επανάληψη;

Το γεγονός είναι ότι η αναδρομή είναι σπάνια η πιο αποτελεσματική προσέγγιση για την επίλυση ενός προβλήματος και η η επανάληψη είναι σχεδόν πάντα πιο αποτελεσματική Αυτό συμβαίνει επειδή συνήθως υπάρχει μεγαλύτερο κόστος που σχετίζεται με τη δημιουργία αναδρομικών κλήσεις λόγω του γεγονότος ότι η στοίβα κλήσεων χρησιμοποιείται τόσο πολύ κατά τη διάρκεια της αναδρομής.

Ποια είναι τα μειονεκτήματα της αναδρομής;

Μειονεκτήματα της αναδρομής

  • Οι αναδρομικές συναρτήσεις είναι γενικά πιο αργές από τις μη αναδρομικές συναρτήσεις.
  • Μπορεί να απαιτεί πολύ χώρο στη μνήμη για τη διατήρηση των ενδιάμεσων αποτελεσμάτων στις στοίβες του συστήματος.
  • Δύσκολο να αναλυθεί ή να κατανοηθεί ο κώδικας.
  • Δεν είναι πιο αποτελεσματικό όσον αφορά την πολυπλοκότητα του χώρου και του χρόνου.

Συνιστάται: