以下是使用Java编写的二叉树的示例代码:

class TreeNode {
    int val;
    TreeNode left;
    TreeNode right;

    TreeNode(int val) {
        this.val = val;
        left = null;
        right = null;
    }
}

public class BinaryTree {
    TreeNode root;

    BinaryTree() {
        root = null;
    }

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

    TreeNode insertNode(TreeNode root, int value) {
        if (root == null) {
            root = new TreeNode(value);
            return root;
        }

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

        return root;
    }

    void inorderTraversal(TreeNode node) {
        if (node != null) {
            inorderTraversal(node.left);
            System.out.print(node.val + " ");
            inorderTraversal(node.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);

        System.out.print("Inorder traversal: ");
        tree.inorderTraversal(tree.root);
    }
}

这个示例代码中,首先定义了一个TreeNode类来表示二叉树的节点。然后定义了BinaryTree类来表示二叉树,并实现了插入节点和中序遍历的方法。insert方法通过递归的方式插入节点,inorderTraversal方法通过递归的方式进行中序遍历。

main方法中,创建了一个二叉树对象tree,并向其中插入了一些节点。最后调用inorderTraversal方法进行中序遍历,并输出结果

请用java写个二叉树

原文地址: https://www.cveoy.top/t/topic/iMhJ 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录