最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

JavaScript數(shù)據(jù)結(jié)構(gòu)之二叉樹(shù)的查找算法示例

 更新時(shí)間:2017年04月13日 09:35:51   作者:布瑞澤的童話  
這篇文章主要介紹了JavaScript數(shù)據(jù)結(jié)構(gòu)之二叉樹(shù)的查找算法,結(jié)合具體實(shí)例形式分析了javascript針對(duì)二叉樹(shù)節(jié)點(diǎn)最小值、最大值的相關(guān)查找操作實(shí)現(xiàn)技巧,需要的朋友可以參考下

本文實(shí)例講述了JavaScript數(shù)據(jù)結(jié)構(gòu)之二叉樹(shù)的查找算法。分享給大家供大家參考,具體如下:

前面文章介紹了二叉樹(shù)的遍歷,現(xiàn)在談?wù)勗诙鏄?shù)中進(jìn)行查找。對(duì)二叉查找樹(shù)來(lái)說(shuō),一般有以下三類查找:最大值,最小值和給定值。

查找最小值就是遍歷左子樹(shù),直到找到最后一個(gè)結(jié)點(diǎn),這是因?yàn)樵诙娌檎覙?shù)中較小的值總是在左子節(jié)點(diǎn)上的。

代碼如下:

function getMin(){//查找最小值
    var current=this.root;//指向根節(jié)點(diǎn)
    while(current.left!=null){
      current=current.left;
    }
    return current.data;
}

同理可得查找最大值的代碼如下:

function getMax(){//查找最大值
  var current=this.root;
  while(current.right!=null){//如果未找到右結(jié)點(diǎn)則一直找
    current=current.right;
  }
  return current.data;
}

而在二叉查找樹(shù)中查找指定值也不難,就是依次判斷節(jié)點(diǎn)值的查找值的大小,如果節(jié)點(diǎn)值小,則繼續(xù)往右查找,如果節(jié)點(diǎn)值大,則繼續(xù)往左查找,代碼如下:

function find(data){//查找某個(gè)值
    var current=this.root;
    while(current!=null){
      if(current.data==data){
        return current;
      }else if(current.data>data){//如果節(jié)點(diǎn)值比尋找值大,則往左找
        current=current.left;
      }else{//如果節(jié)點(diǎn)值比尋找值小,則往右找
        current=current.right;
      }
    }//如果沒(méi)找到則返回null
    return null;
}

更多關(guān)于JavaScript相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《JavaScript數(shù)據(jù)結(jié)構(gòu)與算法技巧總結(jié)》、《JavaScript數(shù)學(xué)運(yùn)算用法總結(jié)》、《JavaScript排序算法總結(jié)》、《JavaScript遍歷算法與技巧總結(jié)》、《JavaScript查找算法技巧總結(jié)》及《JavaScript錯(cuò)誤與調(diào)試技巧總結(jié)

希望本文所述對(duì)大家JavaScript程序設(shè)計(jì)有所幫助。

相關(guān)文章

  • JavaScript ES 模塊的使用

    JavaScript ES 模塊的使用

    這篇文章主要介紹了JavaScript ES 模塊的使用,幫助大家更好的理解和使用JavaScript,感興趣的朋友可以了解下
    2020-11-11
  • JavaScript實(shí)現(xiàn)標(biāo)題欄文字輪播效果代碼

    JavaScript實(shí)現(xiàn)標(biāo)題欄文字輪播效果代碼

    這篇文章主要介紹了JavaScript實(shí)現(xiàn)標(biāo)題欄文字輪播效果代碼,涉及JavaScript基于時(shí)間函數(shù)及流程控制操作標(biāo)題欄文字的相關(guān)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-10-10
  • artDialog+plupload實(shí)現(xiàn)多文件上傳

    artDialog+plupload實(shí)現(xiàn)多文件上傳

    這篇文章主要介紹了artDialog+plupload實(shí)現(xiàn)多文件上傳的相關(guān)資料,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下
    2016-07-07
  • 帶你搞懂js的深拷貝

    帶你搞懂js的深拷貝

    這篇文章主要為大家介紹了js的深拷貝,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來(lái)幫助
    2021-11-11
  • div失去焦點(diǎn)事件實(shí)現(xiàn)思路

    div失去焦點(diǎn)事件實(shí)現(xiàn)思路

    blur只是針對(duì)form表單控件的,而對(duì)于 span , div , li 之類的,則沒(méi)辦法觸發(fā)它們的動(dòng)作,本文有個(gè)示例,看看是怎么實(shí)現(xiàn)的
    2014-04-04
  • javascript 精確獲取樣式屬性(下)

    javascript 精確獲取樣式屬性(下)

    繼續(xù)上一部分,我們要看一下顏色?;鸷孟癫还苋叨欢紩?huì)轉(zhuǎn)變?yōu)閞gb格式,不過(guò)我們通常比較習(xí)慣的是hex格式。這就用到以下兩函數(shù)。
    2010-01-01
  • JS關(guān)閉窗口或JS關(guān)閉頁(yè)面的幾種代碼分享

    JS關(guān)閉窗口或JS關(guān)閉頁(yè)面的幾種代碼分享

    這篇文章介紹了JS關(guān)閉窗口或JS關(guān)閉頁(yè)面的幾種代碼,有需要的朋友可以參考一下
    2013-10-10
  • 原生JavaScript實(shí)現(xiàn)換膚

    原生JavaScript實(shí)現(xiàn)換膚

    這篇文章主要為大家詳細(xì)介紹了原生JavaScript實(shí)現(xiàn)換膚,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-02-02
  • JavaScript使用閉包模仿塊級(jí)作用域操作示例

    JavaScript使用閉包模仿塊級(jí)作用域操作示例

    這篇文章主要介紹了JavaScript使用閉包模仿塊級(jí)作用域操作,結(jié)合實(shí)例形式分析了javascript閉包的原理及模仿塊級(jí)作用域相關(guān)操作技巧,需要的朋友可以參考下
    2019-01-01
  • javascript 動(dòng)態(tài)修改css樣式方法匯總(四種方法)

    javascript 動(dòng)態(tài)修改css樣式方法匯總(四種方法)

    為了達(dá)到某種特殊的效果我們需要用Javascript動(dòng)態(tài)的去更改某一個(gè)標(biāo)簽的Css屬性,如何動(dòng)態(tài)修改css樣式呢?面對(duì)這個(gè)問(wèn)題,小編帶領(lǐng)大家來(lái)解決javascript動(dòng)態(tài)修改css樣式,小伙伴們都快來(lái)學(xué)習(xí)吧
    2015-08-08

最新評(píng)論

壶关县| 五峰| 应城市| 城口县| 临桂县| 九寨沟县| 三河市| 高密市| 磐安县| 大连市| 永吉县| 赤峰市| 北川| 罗定市| 县级市| 平凉市| 黄大仙区| 六盘水市| 西畴县| 广安市| 利川市| 江城| 丰城市| 新和县| 随州市| 大城县| 宜阳县| 通化市| 咸宁市| 扎兰屯市| 石泉县| 苏州市| 湘西| 洞头县| 息烽县| 策勒县| 仙居县| 咸阳市| 庆元县| 广饶县| 北流市|