/ / / Η επανάληψη είναι τι; Αναδρομή στον προγραμματισμό (παραδείγματα)

Η επανάληψη είναι τι; Αναδρομή στον προγραμματισμό (παραδείγματα)

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

Τι είναι "επανάληψη" γενικά;

επανάληψη είναι
Η λέξη "recursion" έχει μια ολόκληρη σειρά από σημασίες,που εξαρτώνται από την περιοχή στην οποία εφαρμόζεται. Η γενική σημειογραφία είναι αυτή: οι αναδρομές είναι ορισμοί, εικόνες, περιγραφές αντικειμένων ή διαδικασιών στα ίδια τα αντικείμενα. Είναι δυνατή μόνο στις περιπτώσεις που το αντικείμενο είναι μέρος του εαυτού του. Με τον δικό τους τρόπο, τα μαθηματικά, η φυσική, ο προγραμματισμός και ένας αριθμός άλλων επιστημονικών κλάδων ορίζουν την επανάληψη. Πρακτική εφαρμογή, που βρέθηκε στο έργο των συστημάτων πληροφοριών και των φυσικών πειραμάτων.

Τι εννοείτε με την επανάληψη του προγραμματισμού;

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

Η αναδρομή μπορεί να είναι πεπερασμένη ή άπειρη. Για να σταματήσουν οι ίδιοι η κλήση, πρέπει επίσης να υπάρχουν προϋποθέσεις τερματισμού. Αυτό μπορεί να είναι μια μείωση στην τιμή της μεταβλητής, και όταν επιτευχθεί μια ορισμένη τιμή, σταματήστε την κλήση και τερματισμό προγράμματος / μετάβαση στον επόμενο κώδικα, ανάλογα με τις ανάγκες για επίτευξη συγκεκριμένων στόχων. Με άπειρη αναδρομή, εννοείται ότι θα καλείται ενώ τρέχει ο υπολογιστής ή το πρόγραμμα στο οποίο εκτελείται.

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

Εάν ο αναγνώστης διαβάζει το πρόγραμμακύκλους, πιθανότατα έχει ήδη παρατηρήσει την ομοιότητα μεταξύ τους και την επανάληψη. Γενικά, μπορούν να εκτελούν παρόμοιες ή πανομοιότυπες εργασίες. Με τη βοήθεια της υποτροπής είναι βολικό να κάνετε μια απομίμηση του έργου του κύκλου. Αυτό είναι ιδιαίτερα χρήσιμο όταν οι ίδιοι οι κύκλοι δεν είναι πολύ βολικοί. Το σχήμα υλοποίησης του λογισμικού δεν διαφέρει πολύ από τις διάφορες γλώσσες προγραμματισμού υψηλού επιπέδου. Αλλά η επανάληψη στο "Pascal" και η επανάληψη στο C ή σε άλλη γλώσσα έχει τις δικές του ιδιαιτερότητες. Μπορεί να εφαρμοστεί με επιτυχία σε γλώσσες χαμηλού επιπέδου όπως το Assembler, αλλά αυτό είναι πιο προβληματικό και χρονοβόρο.

Δέντρα αναδρομής

επανάληψη του προγραμματισμού
Τι είναι το "δέντρο" στον προγραμματισμό; Πρόκειται για ένα πεπερασμένο σετ αποτελούμενο από τουλάχιστον έναν κόμβο που:

  1. Έχει έναν αρχικό ειδικό κόμβο, ο οποίος ονομάζεται ρίζα ολόκληρου του δέντρου.
  2. Οι υπόλοιποι κόμβοι βρίσκονται σε ποσότητα διαφορετική από μηδέν, ζευγαρώς αποσυνδεδεμένα υποσύνολα και είναι επίσης ένα δέντρο. Όλες αυτές οι μορφές οργάνωσης ονομάζονται υποκείμενα του κύριου δέντρου.

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

Γιατί χρησιμοποιείται στον προγραμματισμό;

λειτουργία αναδρομής
Η χρήση της αναδρομής στον προγραμματισμό έχει βρειστην επίλυση πολλών σύνθετων προβλημάτων. Εάν χρειάζεται μόνο να πραγματοποιήσετε μια κλήση, τότε είναι ευκολότερο να χρησιμοποιήσετε έναν κύκλο ενσωμάτωσης, αλλά με δύο ή περισσότερες επαναλήψεις, για να αποφύγετε την οικοδόμηση μιας αλυσίδας και να την εκτελέσετε ως δέντρο και να εφαρμόσετε αναδρομικές καταστάσεις. Για μια ευρεία κατηγορία προβλημάτων, η οργάνωση της υπολογιστικής διαδικασίας με αυτόν τον τρόπο είναι η πλέον βέλτιστη από την άποψη της κατανάλωσης πόρων. Έτσι, μια επανάληψη στο Pascal ή σε οποιαδήποτε άλλη γλώσσα προγραμματισμού υψηλού επιπέδου είναι μια κλήση λειτουργίας ή διαδικασίας πριν από την εκπλήρωση των όρων, ανεξάρτητα από τον αριθμό των εξωτερικών κλήσεων. Με άλλα λόγια, μπορεί να υπάρχει μόνο μία πρόσβαση στην υπορουτίνα του προγράμματος, αλλά θα συμβεί μέχρι κάποια στιγμή εκ των προτέρων. Κατά κάποιο τρόπο, αυτό είναι ένα ανάλογο του κύκλου με τη δική του ειδική χρήση.

Οι διαφορές επανάληψης σε διαφορετικές γλώσσες προγραμματισμού

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

Η αναδρομή είναι εύκολη. Πώς να θυμάστε ακριβώς το περιεχόμενο του άρθρου;

παραδείγματα αναδρομής
Για αρχάριους να το καταλάβουν, ίσως στην αρχήΕίναι επομένως δύσκολο, επομένως, χρειαζόμαστε παραδείγματα αναδρομής ή τουλάχιστον ένα. Επομένως, πρέπει να δώσουμε ένα μικρό παράδειγμα από την καθημερινή ζωή, το οποίο θα βοηθήσει στην κατανόηση της ίδιας της ουσίας αυτού του μηχανισμού επίτευξης των στόχων στον προγραμματισμό. Πάρτε δύο ή περισσότερους καθρέφτες, ορίστε τις έτσι ώστε όλες οι άλλες να εμφανίζονται σε ένα. Μπορείτε να δείτε ότι οι καθρέφτες εμφανίζονται επανειλημμένα, δημιουργώντας ένα αποτέλεσμα του άπειρου. Εδώ οι αναδρομές είναι, μιλώντας απεικονιστικά, σκέψεις (θα υπάρξουν πολλοί από αυτούς). Όπως μπορείτε να δείτε, είναι εύκολο να καταλάβετε, θα υπήρχε μια επιθυμία. Και με τη μελέτη υλικών προγραμματισμού, μπορείτε να καταλάβετε ότι η αναδρομή είναι επίσης ένα πολύ εύκολο έργο.

Διαβάστε περισσότερα: