最新文章專題視頻專題問答1問答10問答100問答1000問答2000關(guān)鍵字專題1關(guān)鍵字專題50關(guān)鍵字專題500關(guān)鍵字專題1500TAG最新視頻文章視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關(guān)鍵字專題關(guān)鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
當(dāng)前位置: 首頁 - 科技 - 知識(shí)百科 - 正文

關(guān)于js二叉樹查詢遍歷插入翻轉(zhuǎn)的代碼

來源:懂視網(wǎng) 責(zé)編:小采 時(shí)間:2020-11-27 19:33:40
文檔

關(guān)于js二叉樹查詢遍歷插入翻轉(zhuǎn)的代碼

關(guān)于js二叉樹查詢遍歷插入翻轉(zhuǎn)的代碼:這篇文章主要介紹了關(guān)于js二叉樹查詢遍歷插入翻轉(zhuǎn)的代碼,有著一定的參考價(jià)值,現(xiàn)在分享給大家,有需要的朋友可以參考一下function BST(){ this.root = null this.insert = insert this.find = find this.mirror = mirror; }
推薦度:
導(dǎo)讀關(guān)于js二叉樹查詢遍歷插入翻轉(zhuǎn)的代碼:這篇文章主要介紹了關(guān)于js二叉樹查詢遍歷插入翻轉(zhuǎn)的代碼,有著一定的參考價(jià)值,現(xiàn)在分享給大家,有需要的朋友可以參考一下function BST(){ this.root = null this.insert = insert this.find = find this.mirror = mirror; }

這篇文章主要介紹了關(guān)于js二叉樹查詢遍歷插入翻轉(zhuǎn)的代碼,有著一定的參考價(jià)值,現(xiàn)在分享給大家,有需要的朋友可以參考一下

function BST(){
 this.root = null
 this.insert = insert
 this.find = find
 this.mirror = mirror;
 
 }
 function Node(data,left,right){
 this.data = data
 this.left = left
 this.right = right
 this.show = show
 }
 function show() {
 return this.data;
 }
 function mirror(root){
 if(root == null){
  return
 }
 if(root.left == null && root.right == null){
  return
 }
 let temp = root.left;
 root.left = root.right;
 root.right = temp;
 mirror(root.left)
 mirror(root.right)
 }
 function insert(data){
 var n = new Node(data,null,null)
 if(this.root == null){
  this.root = n
 }else{
  var current = this.root
  while(true){
  if(data < current.data){
   if(current.left == null){
   current.left = n
   break
   }
   current = current.left
  }else{
   if(current.right == null){
   current.right = n
   break
   }
   current = current.right
  }
  }
 }
 }
 function find(data){
 var current = this.root
 while(true){
  if(data == current.data){
  return current
  }
  current = data < current.data ? current.left : current.right
  if(current == null){
  return null
  }
 }
 }
 function inorder(node){
 if(!(node == null)){
  inorder(node.left)
  console.log(node.show())
  inorder(node.right)
 }
 }
 var nums = new BST()
 nums.insert(23)
 nums.insert(22)
 nums.insert(16)
 nums.insert(5)
 nums.insert(3)
 nums.insert(99)
 nums.insert(22)
 inorder(nums.root) 
 mirror(nums.root)
 console.log(nums.root)

很簡(jiǎn)單的 看就完了。

聲明:本網(wǎng)頁內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問題請(qǐng)及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文檔

關(guān)于js二叉樹查詢遍歷插入翻轉(zhuǎn)的代碼

關(guān)于js二叉樹查詢遍歷插入翻轉(zhuǎn)的代碼:這篇文章主要介紹了關(guān)于js二叉樹查詢遍歷插入翻轉(zhuǎn)的代碼,有著一定的參考價(jià)值,現(xiàn)在分享給大家,有需要的朋友可以參考一下function BST(){ this.root = null this.insert = insert this.find = find this.mirror = mirror; }
推薦度:
標(biāo)簽: 查找 js 代碼
  • 熱門焦點(diǎn)

最新推薦

猜你喜歡

熱門推薦

專題
Top