JavaScript 数据结构3 二叉树
用js实现一个二叉树:
class Tree{ left=null; right=null; value=null; constructor(_value){ this.value=_value; } } class Trees{ constructor(){ this.root=null; } insert(value){ let tree=new Tree(value); if(!this.root){ this.root=tree; }else{ this.inserTree(this.root,tree); } } inserTree(tree,newTree){ if(newTree.value<tree.value){ if(tree.left){ this.inserTree(tree.left,newTree); }else{ tree.left=newTree; } }else{ if(tree.right){ this.inserTree(tree.right,newTree); }else{ tree.right=newTree; } } } } let tree=new Trees(); for(let i=20;i>0;i-=2){ tree.insert(i-1); tree.insert(i); } console.log(tree);