中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

java二叉樹怎么實現

小億
86
2024-08-05 18:02:14
欄目: 編程語言

在Java中,可以通過創建一個節點類來實現二叉樹。節點類包含一個值字段,一個左子節點字段和一個右子節點字段。然后,可以創建一個二叉樹類,其中包含一個根節點字段和一些操作方法來對二叉樹進行操作。

以下是一個簡單的Java代碼示例來實現二叉樹:

public class Node {
    int value;
    Node left;
    Node right;

    public Node(int value) {
        this.value = value;
        this.left = null;
        this.right = null;
    }
}

public class BinaryTree {
    Node root;

    public BinaryTree() {
        root = null;
    }

    public void insert(int value) {
        root = insertRec(root, value);
    }

    private Node insertRec(Node root, int value) {
        if (root == null) {
            root = new Node(value);
            return root;
        }

        if (value < root.value) {
            root.left = insertRec(root.left, value);
        } else if (value > root.value) {
            root.right = insertRec(root.right, value);
        }

        return root;
    }

    public void inorderTraversal(Node root) {
        if (root != null) {
            inorderTraversal(root.left);
            System.out.print(root.value + " ");
            inorderTraversal(root.right);
        }
    }

    public static void main(String[] args) {
        BinaryTree tree = new BinaryTree();

        tree.insert(50);
        tree.insert(30);
        tree.insert(20);
        tree.insert(40);
        tree.insert(70);
        tree.insert(60);
        tree.insert(80);

        tree.inorderTraversal(tree.root);
    }
}

在上面的示例中,我們定義了一個節點類(Node)和一個二叉樹類(BinaryTree),并實現了插入節點和中序遍歷二叉樹的方法。在main方法中,我們創建了一個二叉樹對象,并插入了一些節點,然后進行中序遍歷輸出節點的值。

0
蒙城县| 鄱阳县| 扶绥县| 丹东市| 山东省| 吉安市| 白沙| 东平县| 贡山| 凤庆县| 普陀区| 长寿区| 花莲县| 鄂州市| 平远县| 龙陵县| 喜德县| 彰化市| 子长县| 安西县| 锡林郭勒盟| 汕尾市| 富锦市| 虹口区| 加查县| 达孜县| 上蔡县| 宁津县| 焉耆| 盐亭县| 江安县| 界首市| 涿州市| 双柏县| 肥城市| 阿克陶县| 水城县| 繁峙县| 洱源县| 天气| 桓台县|