使用java写一个二叉树
时间: 2023-04-11 07:01:58 浏览: 117
用java实现二叉树的创建和遍历.doc
好的,以下是一个简单的二叉树的 Java 实现:
```
class Node {
int value;
Node left;
Node right;
public Node(int value) {
this.value = value;
this.left = null;
this.right = null;
}
}
class BinaryTree {
Node root;
public BinaryTree() {
this.root = null;
}
public void insert(int value) {
Node newNode = new Node(value);
if (root == null) {
root = newNode;
return;
}
Node current = root;
Node parent = null;
while (true) {
parent = current;
if (value < current.value) {
current = current.left;
if (current == null) {
parent.left = newNode;
return;
}
} else {
current = current.right;
if (current == null) {
parent.right = newNode;
return;
}
}
}
}
public void inorderTraversal(Node node) {
if (node != null) {
inorderTraversal(node.left);
System.out.print(node.value + " ");
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);
tree.inorderTraversal(tree.root);
}
}
```
这个实现包括了二叉树的插入和中序遍历方法。在 `main` 方法中,我们创建了一个二叉树并插入了一些节点,然后进行了中序遍历,输出结果为:20 30 40 50 60 70 80。
阅读全文