這篇文章主要介紹了關於js二元樹查詢遍歷插入翻轉的程式碼,有著一定的參考價值,現在分享給大家,有需要的朋友可以參考一下
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)
很簡單的看就完了。
以上就是本文的全部內容,希望對大家的學習有所幫助,更多相關內容請關注PHP中文網!
相關推薦:
#如何透過Vue.js使用Font Awesome實現小圖示
以上是關於js二元樹查詢遍歷插入翻轉的程式碼的詳細內容。更多資訊請關注PHP中文網其他相關文章!