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

Διασχίστε μέσω μιας συνδεδεμένης λίστας χρησιμοποιώντας την αναδρομή - Java: 12 βήματα
Διασχίστε μέσω μιας συνδεδεμένης λίστας χρησιμοποιώντας την αναδρομή - Java: 12 βήματα

Βίντεο: Διασχίστε μέσω μιας συνδεδεμένης λίστας χρησιμοποιώντας την αναδρομή - Java: 12 βήματα

Βίντεο: Διασχίστε μέσω μιας συνδεδεμένης λίστας χρησιμοποιώντας την αναδρομή - Java: 12 βήματα
Βίντεο: BMW ΕΡΓΑΛΕΙΟ ΑΥΤΟΚΙΝΗΤΩΝ - Πώς γίνεται η σειρά ΣΥΝΑΡΜΟΛΟΓΗΣΗΣ 2024, Νοέμβριος
Anonim
Διαδρομή μέσω συνδεδεμένης λίστας με χρήση Recursion - Java
Διαδρομή μέσω συνδεδεμένης λίστας με χρήση Recursion - Java

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

Συνολικά, αυτή η διαδικασία 12 βημάτων δεν πρέπει να διαρκέσει περισσότερο από 15 λεπτά. Το μόνο βήμα που μπορεί να διαρκέσει περισσότερο από ένα λεπτό είναι το βήμα 4, το οποίο ζητά από τον χρήστη να δημιουργήσει ένα δείγμα δοκιμής για να το εκτελέσει. Ο χρόνος που θα χρησιμοποιηθεί εξαρτάται από τον χρήστη, αλλά θα εκτιμούσα ότι δεν θα χρειαζόταν περισσότερο από 3 λεπτά.

Τι θα χρειαστείτε στον υπολογιστή σας: Το αρχείο δοκιμών μου (στο οποίο θα προσθέσουμε κώδικα). Οποιοδήποτε java IDE της επιλογής σας (θα χρησιμοποιήσουμε drjava για αυτό).

Βήμα 1: Βήμα πρώτο: Ανοίξτε το Java IDE της επιλογής σας

Βήμα πρώτο: Ανοίξτε το Java IDE της επιλογής σας
Βήμα πρώτο: Ανοίξτε το Java IDE της επιλογής σας

Για αυτό το σύνολο οδηγιών, χρησιμοποιείται drjava. Απλώς ανοίξτε ένα νέο νέο αρχείο.

Βήμα 2: Βήμα δεύτερο: Λήψη και άνοιγμα του αρχείου.txt μου

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

Βήμα 3: Βήμα τρίτο: Αντιγραφή και επικόλληση από αρχείο.txt σε IDE

Βήμα τρίτο: Αντιγραφή και επικόλληση από αρχείο.txt σε IDE
Βήμα τρίτο: Αντιγραφή και επικόλληση από αρχείο.txt σε IDE

Αντιγράψτε το κείμενο από το αρχείο μου και επικολλήστε το στο java IDE που έχετε ανοίξει.

Βήμα 4: Βήμα Τέταρτο: Δημιουργήστε ένα τεστ

Βήμα τέταρτο: Δημιουργήστε ένα τεστ
Βήμα τέταρτο: Δημιουργήστε ένα τεστ

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

Βήμα 5: Βήμα πέμπτο: Δημιουργία αναδρομικής συνάρτησης

Βήμα πέμπτο: Δημιουργία αναδρομικής συνάρτησης
Βήμα πέμπτο: Δημιουργία αναδρομικής συνάρτησης

Όπου σας ζητηθεί, πληκτρολογήστε τα ακόλουθα:

public int size () {}

Βήμα 6: Βήμα έκτο: Δημιουργία συνάρτησης αναδρομικής βοήθειας

Βήμα Έκτο: Δημιουργήστε μια αναδρομική συνάρτηση βοηθού
Βήμα Έκτο: Δημιουργήστε μια αναδρομική συνάρτηση βοηθού

Όπου σας ζητηθεί, πληκτρολογήστε τα ακόλουθα:

δημόσιο στατικό int μέγεθοςH (Κόμβος x) {}

Βήμα 7: Βήμα Έβδομο: Λειτουργία βοηθού κλήσης στην κύρια αναδρομική λειτουργία

Βήμα έβδομο: Λειτουργία βοηθού κλήσης στην κύρια αναδρομική λειτουργία
Βήμα έβδομο: Λειτουργία βοηθού κλήσης στην κύρια αναδρομική λειτουργία

Αυτό θα κάνει τη λειτουργία μας να διασχίσει τη συνδεδεμένη λίστα από την αρχή.

Στην πρώτη από τις συναρτήσεις που γράψαμε, πληκτρολογήστε τα εξής:

μέγεθος επιστροφήςH (πρώτο).

Βήμα 8: Βήμα όγδοο: Δημιουργία θήκης βάσης για λειτουργία βοηθού

Βήμα όγδοο: Δημιουργία θήκης βάσης για λειτουργία βοηθού
Βήμα όγδοο: Δημιουργία θήκης βάσης για λειτουργία βοηθού

Κάθε αναδρομική συνάρτηση πρέπει να έχει έναν τρόπο να την τερματίσει. Η "βασική υπόθεση" θα μας δώσει να σταματήσουμε να διασχίζουμε μόλις φτάσουμε στο τέλος της λίστας.

Στη συνάρτηση "βοηθός", πληκτρολογήστε τα εξής:

εάν (x == null) επιστρέφει 0;

Βήμα 9: Βήμα εννέα: Προσθέστε το "+1" και καλέστε ξανά τη λειτουργία βοηθού

Βήμα εννέα: Προσθέστε το "+1" και καλέστε ξανά τη λειτουργία βοηθού
Βήμα εννέα: Προσθέστε το "+1" και καλέστε ξανά τη λειτουργία βοηθού

Προσθέτουμε έναν για κάθε κόμβο που επισκέπτεται η αναδρομική συνάρτηση.

Στη συνάρτηση "βοηθός", πληκτρολογήστε τα εξής:

επιστροφή 1 + μέγεθοςΗ (x.επόμενο)?

Βήμα 10: Βήμα δέκα: Μεταγλώττιση / Αποθήκευση του κωδικού σας

Ο κώδικας πρέπει να καταρτιστεί πριν μπορέσουμε να εκτελέσουμε το πρόγραμμα.

Βήμα 11: Βήμα έντεκα: Εκτέλεση του προγράμματος

Εκτελέστε το πρόγραμμά σας! Τι ήταν η έξοδος; Αν κάτι πήγε στραβά, κοιτάξτε πίσω και δείτε αν εισαγάγατε τον κωδικό ακριβώς και στο σωστό σημείο.

Βήμα 12: Βήμα Δώδεκα: Συγχαρητήρια

Βήμα Δώδεκα: Συγχαρητήρια!
Βήμα Δώδεκα: Συγχαρητήρια!

Εάν αυτή είναι η τελική έξοδός σας, έχετε γράψει επίσημα μια αναδρομική συνάρτηση που επαναλαμβάνεται μέσω μιας συνδεδεμένης λίστας.

Συνιστάται: