一、二叉查找树
二叉查找树也叫二叉搜索树,支持动态数据集合的快速插入,删除,查找操作。要求在树中的任意一个节点,其左子树中的每个节点的值,都要小于这个节点的值,而右子树节点的值都大于这个节点的值
平衡二叉树的插入、删除、查找操作时间复杂度是O(logn)
二、查找操作:
在二叉树中查找一个节点,我们先取根节点,如果他等于我们要找的数据,就返回;如果要查找的数据比根节点小,在左子树递归查找;如果比根节点大,右子树递归查找
public class BinarySearchTree {
private Node tree;
public Node find(int data) {
Node p = tree;
while (p != null) {
if (data < p.data) p = p.left;
else if (data > p.dat