当前位置: 首页 » 产品 » 商务广告 » 正文

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

放大字体  缩小字体 发布日期: 2025-02-04 23:49   来源:http://www.baidu.com/  作者:无忧资讯  浏览次数:26
核心提示:  前面文章介绍了二叉树的遍历,现在谈谈在二叉树中进行查找。对二叉查找树来说,一般有以下三类查找:最大值,最小值和给定值

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

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

  代码如下:

  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

内容来源:https://www.16jixie.com/news/show-3546.html
 
 
[ 产品搜索 ]  [ 加入收藏 ]  [ 告诉好友 ]  [ 打印本文 ]  [ 违规举报 ]  [ 关闭窗口 ]

 

 
推荐图文
推荐产品
点击排行
    行业协会  备案信息  可信网站