java 二叉树
时间: 2023-10-14 13:11:16 浏览: 116
二叉树是一种树形结构,在二叉树中,每个节点最多有两个子节点,通常称为左子节点和右子节点。以下是一个Java实现的简单二叉树示例:
```java
public class BinaryTree {
Node root;
// 节点类
class Node {
int data;
Node left, right;
public Node(int data) {
this.data = data;
left = right = null;
}
}
// 构造函数
public BinaryTree() {
root = null;
}
// 插入节点
public void insert(int data) {
root = insertRec(root, data);
}
// 递归插入节点
public Node insertRec(Node root, int data) {
if (root == null) {
root = new Node(data);
return root;
}
if (data < root.data)
root.left = insertRec(root.left, data);
else if (data > root.data)
root.right = insertRec(root.right, data);
return root;
}
// 中序遍历二叉树
public void inorderTraversal(Node root) {
if (root != null) {
inorderTraversal(root.left);
System.out.print(root.data + " ");
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);
}
}
```
输出结果为:20 30 40 50 60 70 80
以上代码演示了如何创建一个二叉树,并插入节点及中序遍历二叉树。
阅读全文