| Home  | Υλικό υπολογιστών  | Δικτύωση  | Προγραμματισμός  | λογισμικό  | ερώτηση  | συστήματα  |  
Προγραμματισμός  
  • C /C + + Προγραμματισμός

  • Προγραμματισμός Υπολογιστών Γλώσσες

  • Δελφοί Προγραμματισμός

  • Προγραμματισμός Java

  • JavaScript Προγραμματισμός

  • PHP /MySQL Προγραμματισμός

  • Perl Προγραμματισμός

  • Python Προγραμματισμός

  • ρουμπίνι Προγραμματισμός

  • Visual Βασικά Προγραμματισμός
  •  
    Γνώση Υπολογιστών >> Προγραμματισμός >> Προγραμματισμός Java >> Content
    Πώς να Traverse δυαδικά δένδρα σε Java
    δυαδικά δέντρα είναι πολύπλοκες δομές δεδομένων που χρησιμοποιούνται σε προγράμματα υπολογιστή για την αποθήκευση των δεδομένων στη μνήμη χρησιμοποιώντας ένα κοινό αλγόριθμο αποθήκευσης . Με τη χρήση αυτού του τύπου του αλγορίθμου , τα δεδομένα μπορούν να αποθηκευτούν σε ένα σταθερό πρότυπο, καθιστώντας την ανάκτηση και την αναζήτηση μέσω δεδομένων ευκολότερη . Java προγραμματιστές , οι οποίοι σχεδιάζουν δυαδικά δένδρα είναι περισσότερο από πιθανό , επίσης, το σχεδιασμό αλγορίθμων για να διασχίσει αυτές τις δομές δεδομένων . Υπάρχουν τρεις τρόποι για να διασχίσει δυαδικά δένδρα : κατά σειρά , προ-παραγγελία , και μετά την παραγγελία . Τα πράγματα που θα χρειαστείτε
    Java Development Kit ( JDK )
    επεξεργαστή κειμένου
    Η Εμφάνιση Περισσότερες οδηγίες
    Η 1

    Ωθήστε την δυαδικό δέντρο χρησιμοποιώντας σε σειρά διάσχισης . Υποθέτοντας ότι η κατηγορία " BT " αντιπροσωπεύει ένα δυαδικό δέντρο , ο κώδικας που ακολουθεί δείχνει πώς μπορείτε να εκτυπώσετε το δέντρο τάξης. Κάθε κόμβος έχει ένα αριστερό και το δεξί δείκτη που δείχνει προς τα αριστερά και δεξιά κόμβους του τρέχοντος κόμβου , μαζί με ένα στοιχείο δεδομένων που αντιπροσωπεύει την αξία του. Η διάσχιση στην παραγγελία θα διασχίσει το αριστερό κόμβο πρώτο μέχρι το χτύπημα null , και η εκτύπωση της μητρικής κόμβο πριν από την διάσχιση του δεξιού και ξεκινώντας πάνω . Τα μέσα που κάθε κόμβος θα εκτυπώσει μόνο αν το σύνολο των κόμβων του παιδιού αριστερή πλευρά έχουν εκτυπωθεί πρώτη :

    δημόσια τάξη BT {

    δημόσια άκυρη Inorder ( Κόμβος x ) {
    < p > αν ( x == null) { επιστροφή ? //σταματά αναδρομή όταν δεν υπάρχει κόμβου }

    inorder ( x.left ) ? //πάντα διασχίζουν αριστερά x.data firstprint ? //εκτύπωση των δεδομένων μετά το αριστερό returnsinOrder κόμβο ( x.right ) ? //τραβέρσα δεξιά } 2

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

    προπαραγγελία public void ( Κόμβος x ) {

    if ( x == null) { επιστροφή? //Σταματά όταν αναδρομή δεν υπάρχει κόμβου }

    x.data εκτύπωσης? //printinOrder ( x.left ) ? //τραβέρσα leftinOrder ( x.right ) ? //τραβέρσα δεξιά }
    εικόνων 3

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

    postOrder public void ( Κόμβος x ) {

    αν ( x == null) { επιστροφή? //σταματά αναδρομή όταν δεν υπάρχει κόμβου }

    inorder ( x.left ) ? //τραβέρσα leftinOrder ( x.right ) ? //διασχίζουν rightprint x.data ? //print }
    Η
    εικόνων

    Previous :

    next :
      Σχετικά Άρθρα
    ·Πώς να δημιουργήσετε μια προσαρμοσμένη Εξαί…
    ·Πώς να πάρει την Java για να εκτυπώσετε Διαδοχ…
    ·Πώς να βρείτε τον αριθμό Διπλασιασμός σε ένα…
    ·Java Tutorial για Split Strings 
    ·Ορισμός της Java και Javascript 
    ·Πώς να κάνει ένα εικονίδιο Animation σε JTable 
    ·Πώς να χτίσει ένα App Περίπου το ένα Java Applet 
    ·Πώς να δημιουργήσετε ένα παιχνίδι Κρεμάλα μ…
    ·Πώς να αφαιρέσει Null Records Από Array σε Java 
    ·Πώς να κάνω μια φωτογραφία σε μια ακουαρέλα …
      Προτεινόμενα άρθρα
    ·Πώς να Χρώμα ένα Anchor Σύνδεση 
    ·Πώς να αλλάξετε τον κωδικό Javascript για μια Aptiva…
    ·Πώς να κατεβάσετε 
    ·Android App Ανάπτυξης Tutorial 
    ·Πώς να εγκαταστήσετε τα αρχεία MySQL σε PHP 
    ·Πώς να βρείτε αν ένα Char είναι ένας ακέραιος γ…
    ·Visual Basic Vs . Fortran 
    ·MySQL Java Tutorial 
    ·Πώς να Επεξεργασία Προϊόντα σε πλαίσιο λίστ…
    ·Πώς να αφαιρέσει το Java 3D Timer on Killer Java Game Προγρ…
    Copyright © Γνώση Υπολογιστών http://el.wingwit.com