JavaScript数据结构之二叉树的查找算法示例

时间:2021-05-26

本文实例讲述了JavaScript数据结构之二叉树的查找算法。分享给大家供大家参考,具体如下:

前面文章介绍了二叉树的遍历,现在谈谈在二叉树中进行查找。对二叉查找树来说,一般有以下三类查找:最大值,最小值和给定值。

查找最小值就是遍历左子树,直到找到最后一个结点,这是因为在二叉查找树中较小的值总是在左子节点上的。

代码如下:

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;}

而在二叉查找树中查找指定值也不难,就是依次判断节点值的查找值的大小,如果节点值小,则继续往右查找,如果节点值大,则继续往左查找,代码如下:

function find(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; } }//如果没找到则返回null return null;}

更多关于JavaScript相关内容感兴趣的读者可查看本站专题:《JavaScript数据结构与算法技巧总结》、《JavaScript数学运算用法总结》、《JavaScript排序算法总结》、《JavaScript遍历算法与技巧总结》、《JavaScript查找算法技巧总结》及《JavaScript错误与调试技巧总结》

希望本文所述对大家JavaScript程序设计有所帮助。

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章