用java二叉排序树的实现
时间: 2024-12-19 21:14:43 浏览: 9
Java中的二叉排序树(Binary Search Tree,BST)是一种自平衡的数据结构,其中每个节点的值大于其左子树中所有节点的值,小于其右子树中所有节点的值。这种特性使得查找、插入和删除操作的时间复杂度通常为O(log n)。
以下是简单的二叉搜索树的Java实现:
```java
class Node {
int key;
Node left, right;
public Node(int item) {
key = item;
left = right = null;
}
}
class BinarySearchTree {
Node root;
// 插入一个新节点到BST中
void insert(int key) {
root = insertRec(root, key);
}
// 递归插入函数
Node insertRec(Node root, int key) {
if (root == null) {
root = new Node(key);
return root;
}
if (key < root.key)
root.left = insertRec(root.left, key);
else if (key > root.key)
root.right = insertRec(root.right, key);
return root;
}
// 其他常用方法如查找、删除等省略了...
}
```
阅读全文