毎日5分間エンコードされる「Binary Search Tree」
9755 ワード
≪バイナリ検索ツリー|Binary Search Tree|oraolap≫:ツリーの1つで、バイナリ検索ツリーには最大2つのサブツリーしかありません。
ぐるりと回る
グラフィックは非線形構造であるため、特殊な方法ですべてのノードを参照します.検索順によっては、Depth First SearchとBreadth Firts Searchの2つの方法があります.木もグラフィックなので、2つの方法が使えます.
ナビゲーション方法
巡回結果
Method
insert(value) {
let newnode = new BinarySearchTreeNode(value);
if(this.value > value){
if(this.left === null){
this.left = newnode
}else{
return this.left.insert(value)
}
}
else if(this.value < value){
if(this.right === null){
this.right = newnode
}else{
return this.right.insert(value)
}
}
}
contains(value) {
if(this.value === value){
return true;
}else if(this.value < value){
if(this.right === null){
return false;
}else if(this.right.contains(value)){
return true;
}
}else if(this.value > value){
if(this.left === null){
return false;
}else if(this.left.contains(value)){
return true;
}
}
return false;
}
inorder(callback) {//중위순회 왼 루트 오른쪽
if(this.left !== null){
this.left.inorder(callback)
}
callback(this.value)
if(this.right !== null){
this.right.inorder(callback)
}
}
Reference
この問題について(毎日5分間エンコードされる「Binary Search Tree」), 我々は、より多くの情報をここで見つけました https://velog.io/@-hsw9724/하루5분코딩Binary-Search-Treeテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol