Πίνακας περιεχομένων:
- Προμήθειες
- Βήμα 1: Ρυθμίστε την κύρια μέθοδό σας
- Βήμα 2: Δημιουργήστε την κεφαλίδα της αναδρομικής μεθόδου
- Βήμα 3: Δημιουργήστε το Kicker/Case σας
- Βήμα 4: Το αναδρομικό βήμα
- Βήμα 5: Συντομεύστε το πρόβλημα
- Βήμα 6: Δημιουργήστε τον πίνακα ακεραίων
- Βήμα 7: Καλέστε τη μέθοδο με τις συστοιχίες σας
- Βήμα 8: Εκτυπώστε τα αποτελέσματα
- Βήμα 9: Συγχαρητήρια
Βίντεο: Αναδρομική σύνοψη ενός πίνακα σε Java: 9 βήματα
2024 Συγγραφέας: John Day | [email protected]. Τελευταία τροποποίηση: 2024-01-30 08:33
Η αναδρομή είναι μια πολύ χρήσιμη και αποδοτική από άποψη χρόνου διαδικασία που μπορεί να λύσει γρήγορα ένα πρόβλημα με πολύ λίγο κώδικα. Η αναδρομή περιλαμβάνει τη μέθοδο που δημιουργείτε καλώντας τον εαυτό του συντομεύοντας το αρχικό πρόβλημα.
Για αυτό το παράδειγμα, θα αθροίσουμε έναν πίνακα 10 ακέραιων, αλλά το μέγεθος θα μπορούσε να είναι οποιουδήποτε μήκους.
Προμήθειες
Θα πρέπει να γνωρίζετε τη βασική σύνταξη java και να έχετε το IDE ή έναν επεξεργαστή κειμένου για να γράψετε τον κώδικά σας για αυτήν την εργασία.
Βήμα 1: Ρυθμίστε την κύρια μέθοδό σας
Για να ξεκινήσετε, ρυθμίστε την κύρια μέθοδό σας σε μια νέα τάξη. Έχω ονομάσει την τάξη μου RecursiveSum. Εδώ θα δημιουργήσετε μια σειρά από ακέραιους αριθμούς και θα καλέσετε την αναδρομική σας μέθοδο.
Βήμα 2: Δημιουργήστε την κεφαλίδα της αναδρομικής μεθόδου
Εκτός της κύριας μεθόδου, δημιουργήστε την κεφαλίδα της μεθόδου για την αναδρομική μέθοδο.
Η μέθοδος είναι στατική, καθώς δεν θα απαιτήσει κάποιο αντικείμενο για χρήση της.
Ο τύπος επιστροφής είναι int, καθώς ο πίνακας που θα χρησιμοποιήσουμε θα είναι πλήρης σε ακέραιους αριθμούς. Ωστόσο, αυτό μπορεί να αλλάξει σε οποιονδήποτε αριθμό αριθμού περιέχει ο πίνακας.
Έχω ονομάσει τη μέθοδο μου recursiveSum που θα λάβει δύο παραμέτρους. μια σειρά από ακέραιους αριθμούς και το ευρετήριο που θα προσθέσουμε στο άθροισμα. Έχω καλέσει αυτές τις παραμέτρους αριθμούς και ευρετήριο αντίστοιχα.
Θα δείτε λάθη αυτή τη στιγμή και αυτό είναι εντάξει. Θα διορθωθούν αργότερα.
Βήμα 3: Δημιουργήστε το Kicker/Case σας
Μια αναδρομική μέθοδος χρειάζεται ένα κέικ/βάση θήκης. Αυτή είναι η συνθήκη που θα σταματήσει τη μέθοδό σας να αυτοαποκαλείται απεριόριστα. Αυτή η βασική περίπτωση μπορεί να θεωρηθεί ως η πιο απλή περίπτωση που θα συναντήσουμε. Σε αυτήν την περίπτωση, η βασική περίπτωση θα είναι όταν βρισκόμαστε στο τέλος του πίνακα μας. Εάν ο τρέχων δείκτης ισούται με το μήκος του πίνακα (μείον 1 επειδή οι πίνακες αρχίζουν να μετρούν από 0 και όχι 1), βρισκόμαστε στο τέλος και απλώς επιστρέφουμε αυτό το στοιχείο σε αυτόν τον δείκτη.
Βήμα 4: Το αναδρομικό βήμα
Μόλις έχουμε τη βασική μας υπόθεση, το επόμενο βήμα είναι το αναδρομικό μας βήμα. Εδώ συμβαίνει η μαγεία. Έχουμε χειριστεί την περίπτωση όταν ο δείκτης μας ισούται με το τελευταίο στοιχείο στον πίνακα μας. Τι γίνεται αν δεν είμαστε στο τελευταίο στοιχείο της συστοιχίας μας; Τι θα γινόταν αν μπορούσαμε απλά να του πούμε να προσθέσει το τρέχον στοιχείο μας συν το επόμενο; Τελικά θα φτάσουμε στο τέλος της συστοιχίας μας και η βασική μας υπόθεση θα επηρεάσει.
Για να το πετύχουμε αυτό, απλώς επιστρέφουμε τον τρέχοντα δείκτη μας και "προσθέτουμε το υπόλοιπο" του πίνακα.
Βήμα 5: Συντομεύστε το πρόβλημα
Πώς απλά "προσθέτουμε τα υπόλοιπα"; Έχουμε ήδη μια μέθοδο που θα προσθέσει ένα συγκεκριμένο στοιχείο. η μέθοδος μας recursiveSum ()! Μπορούμε να το καλέσουμε ξανά αλλά να αλλάξουμε ποιο δείκτη αθροίζουμε.
Περνάμε στον ίδιο πίνακα που επεξεργαζόμαστε, αλλά περνάμε στον επόμενο δείκτη από τον τρέχοντα δείκτη μας. Το κάνουμε αυτό προσθέτοντας απλώς ένα στο τρέχον δείκτη μας όπως φαίνεται.
Βήμα 6: Δημιουργήστε τον πίνακα ακεραίων
Τώρα που ολοκληρώθηκε η αναδρομική μέθοδος αθροίσεων, μπορούμε να δημιουργήσουμε τον πίνακα που θα επεξεργαστούμε. Αυτός ο πίνακας θα βρίσκεται στο κύριο μπλοκ μεθόδων.
Μπορείτε να κάνετε το μέγεθος του πίνακα όσο θέλετε. Έχω δημιουργήσει μερικές διαφορετικές συστοιχίες με διαφορετικά μεγέθη και τιμές για να δείξω ότι λειτουργεί όχι μόνο σε ένα μόνο μέγεθος.
Βήμα 7: Καλέστε τη μέθοδο με τις συστοιχίες σας
Τώρα μπορείτε να καλέσετε την αναδρομική σας μέθοδο και να τις περάσετε σε αυτήν. Τώρα μπορείτε να εκτελέσετε το πρόγραμμά σας.
Βήμα 8: Εκτυπώστε τα αποτελέσματα
Δεν έγινε τίποτα. Γιατί; Το αναδρομικό άθροισμα επιστρέφει έναν ακέραιο αλλά δεν έχουμε κάνει τίποτα με αυτόν τον ακέραιο. Έκανε τη δουλειά του αλλά δεν μπορούμε να δούμε το αποτέλεσμα. Για να δείτε το αποτέλεσμα, απλά το εκτυπώνουμε έτσι. Μετά την εκτέλεση αυτού, θα πρέπει να δείτε τα αποτελέσματα για κάθε πίνακα σας.
Βήμα 9: Συγχαρητήρια
Ολοκληρώσατε μια αναδρομική συνάρτηση. Μη διστάσετε να αλλάξετε το μέγεθος των συστοιχιών σας. Εάν το δοκιμάσετε, θα παρατηρήσετε ότι καταρρέει όταν έχετε έναν κενό πίνακα. Δεν το έχουμε λάβει υπόψη, αλλά αυτός είναι ένας πολύ καλός τρόπος για να βελτιώσετε την αναδρομική σας μέθοδο.
Συνιστάται:
Ultimate Arcade - μια αναδρομική κατασκευή: 10 βήματα (με εικόνες)
Ultimate Arcade - μια αναδρομική κατασκευή: Η εμπειρία και η οπτική γωνία είναι υπέροχα πράγματα. Τις προάλλες, βγήκα στο υπόστεγο κοιτάζοντας την πλέον αποτυχημένη δημιουργία που είχα κάνει πριν από περίπου 10-12 χρόνια. Είχα αρχίσει να το χτίζω όταν η κόρη μου ήταν μόλις 10 ή 11 και ήταν πιθανώς 12 όταν ολοκληρώθηκε
Πώς να δημιουργήσετε και να εισαγάγετε έναν πίνακα και να προσθέσετε επιπλέον στήλες και/ή σειρές σε αυτόν τον πίνακα στο Microsoft Office Word 2007: 11 βήματα
Πώς να δημιουργήσετε και να εισαγάγετε έναν πίνακα και να προσθέσετε επιπλέον στήλες και/ή σειρές σε αυτόν τον πίνακα στο Microsoft Office Word 2007: Είχατε ποτέ πολλά δεδομένα με τα οποία εργάζεστε και σκεφτήκατε τον εαυτό σας … " πώς μπορώ να κάνω όλα αυτά τα δεδομένα φαίνονται καλύτερα και είναι πιο εύκολα κατανοητά; " Αν ναι, τότε η απάντησή σας μπορεί να είναι ένας πίνακας στο Microsoft Office Word 2007
Σχεδιασμός ενός πίνακα ανάπτυξης μικροελεγκτών: 14 βήματα (με εικόνες)
Σχεδιασμός ενός πίνακα ανάπτυξης μικροελεγκτών: Είστε κατασκευαστής, χομπίστας ή χάκερ που ενδιαφέρεστε να προχωρήσετε από έργα υπερφορτών, DIP IC και οικιακά PCB σε πολυεπίπεδα PCB που κατασκευάζονται από σπιτάκια και συσκευασίες SMD έτοιμες για μαζική παραγωγή; Τότε αυτό το διδακτικό είναι για σένα! Αυτό το gui
Πώς να προγραμματίσετε έναν πίνακα AVR χρησιμοποιώντας έναν πίνακα Arduino: 6 βήματα
Πώς να προγραμματίσετε έναν πίνακα AVR χρησιμοποιώντας έναν πίνακα Arduino: Έχετε μια πλακέτα μικροελεγκτή AVR τοποθετημένη γύρω; Είναι δύσκολο να το προγραμματίσεις; Λοιπόν, βρίσκεστε στο σωστό μέρος. Εδώ, θα σας δείξω πώς να προγραμματίσετε μια πλακέτα μικροελεγκτή Atmega8a χρησιμοποιώντας έναν πίνακα Arduino Uno ως προγραμματιστή. Χωρίς λοιπόν
Συναρμολόγηση ενός πίνακα Niftymitter V0.24 - πομπός FM μικρής εμβέλειας: 6 βήματα
Συναρμολόγηση ενός πίνακα Niftymitter V0.24 - ένας πομπός FM μικρής εμβέλειας: Αυτό το Instructable θα σας καθοδηγήσει στη συναρμολόγηση του κυκλώματος για το Niftymitter, έναν μίνι πομπό ανοιχτού κώδικα FM. Το κύκλωμα χρησιμοποιεί έναν ταλαντωτή ελεύθερης λειτουργίας και βασίζεται στον πιο απλό πομπό FM του Tetsuo Kogawa. Το έργο βρίσκεται στη διεύθυνση www.op