接着上一章,对二叉树查找通常有三种类型:
1.查找最小值。
2.查找最大值。
3.查找给定值。
最小值
较小的值总是在左子节点上,在BT上查找最小值,只需要遍历左子树,直到找到最后一个节点。
function getMin() { var current = this.root; while (!(current.left == null)) { current = current.left; } return current.data; }
最大值
同理,查找最大值,只要遍历右子树
function getMax() { var current = this.root; while (!(current.right == null)) { current = current.right; } return current.data; }
查找给定值
在BT 上查找给定值,需要比较该值和当前节点上的值的大小。通过比较,就能确定如果给定值不在当前节点时,该向左遍历还是向右遍历。
function find(data) { var current = this.root; while (current != null) { if (current.data == data) { return current; } else if (data < current.data) { current = current.left; } else { current = current.right; } } return null; }
本文深入探讨了二叉树中的三种查找方式:查找最小值、查找最大值和查找给定值的方法。通过遍历左右子树,可以有效地定位目标值。文章提供了具体的实现函数,帮助读者理解二叉树查找的基本原理。
5133

被折叠的 条评论
为什么被折叠?



