Rumah > Java > javaTutorial > Bagaimana untuk Mencetak Gambarajah Pokok Binari di Jawa?

Bagaimana untuk Mencetak Gambarajah Pokok Binari di Jawa?

Mary-Kate Olsen
Lepaskan: 2024-11-16 19:03:03
asal
781 orang telah melayarinya

How to Print Binary Tree Diagrams in Java?

Mencetak Gambarajah Pokok Binari di Jawa

Pengenalan:

Memvisualisasikan struktur pokok binari adalah penting untuk memudahkan pemahaman dan penyahpepijatan. Artikel ini mengkaji penyelesaian Java untuk mencetak pokok binari dalam format gambar rajah, memberikan gambaran yang jelas tentang struktur pokok itu.

Penyelesaian:

Matlamat utama penyelesaian ini adalah untuk mencetak pokok perduaan mengikut baris, serupa dengan contoh berikut:

4
/ \
2   5
Salin selepas log masuk

Untuk tujuan ini, kod yang disediakan menetapkan kelas Nod tersuai:

public class Node<A extends Comparable> {
    Node<A> left, right;
    A data;

    public Node(A data){
        this.data = data;
    }
}
Salin selepas log masuk

Mencetak mengikut Baris:

Pandangan utama penyelesaian ini ialah mencetak pepohon dengan cara atas ke bawah, baris demi barisan. Setiap anak nod dicetak pada baris berikutnya, dengan inden yang sesuai untuk menunjukkan tahap mereka dalam pokok.

Sebagai contoh, untuk menggambarkan pokok dengan struktur berikut:

        4
       / \
      2   5
    / \    /
   1   3  6
Salin selepas log masuk

Output akan menyerupai yang berikut:

4
├── 2
│   ├── 1
│   └── 3
└── 5
   └── 6
Salin selepas log masuk

Kod Pelaksanaan:

Logik teras dirangkumkan dalam kaedah cetakan kelas TreeNode:

public void print(StringBuilder buffer, String prefix, String childrenPrefix) {
    buffer.append(prefix);
    buffer.append(name);
    buffer.append('\n');
    for (Iterator<TreeNode> it = children.iterator(); it.hasNext();) {
        TreeNode next = it.next();
        if (it.hasNext()) {
            next.print(buffer, childrenPrefix + "├── ", childrenPrefix + "│   ");
        } else {
            next.print(buffer, childrenPrefix + "└── ", childrenPrefix + "    ");
        }
    }
}
Salin selepas log masuk

Kaedah ini secara rekursif melintasi pokok, mencetak baris demi baris dan perakaunan untuk inden yang sesuai untuk menggambarkan pokok itu struktur.

Nota:

Walaupun penyelesaian ini memfokuskan pada mencetak pokok sembarangan, ia boleh diubah suai dengan mudah untuk menyasarkan pokok binari secara khusus dengan mengehadkan setiap nod untuk mempunyai maksimum dua orang anak.

Atas ialah kandungan terperinci Bagaimana untuk Mencetak Gambarajah Pokok Binari di Jawa?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan