每天一点数据结构之二叉树的查找
一.二叉树的查找我将它分为两类,一类是满足左子树的值小于根小于右子树,那么可以根据这个特性去查找会比较高效。
从根节点开始查找,如果当前值等于根则返回,如果小于根则沿左子树继续查找,如果大于根则沿右子树继续查找,直到找到为止,否则返回null。
BinaryTree.prototype.searchBalanceTree = function (data)
{
var current = this.root;
while (current != null)
{
if (current.data == data)
{
return current;
}
else if (current.data > data)
{
current = current.left;
}
else
{
current = current.right;
}
}
return null;
}
但是如果