В моем коде JavaScript я пытаюсь найти высоту данного узла в Binary SearchTree.
Вот мой код
class BinarySearchTree2 {
constructor() {
this.root = null;
}
findHeight(node = this.root,nodeData,level = 1) {
let root = node;
if(root === null)
return null;
if(root.data === nodeData)
return level;
let foundLevel = 0;
if(nodeData < root.data) {
foundLevel = findHeight(root.left,nodeData,level + 1);
}
// If you have found it on the left subtree, that's it, return
if(foundLevel !== 0)
return foundLevel;
foundLevel = findHeight(root.left,nodeData,level + 1);
return foundLevel;
}
}
Теперь, когда я вставляю несколько узлов и пытаюсь найти высотуузла типа:
let BST = new BinarySearchTree2();
BST.insert(8);
BST.insert(3);
BST.insert(10);
BST.insert(1);
BST.insert(6);
BST.insert(14);
BST.insert(4);
BST.insert(7);
BST.insert(13);
BST.findHeight(this.root,14,1);
Выдает ошибку.Сказать findHeight
не определено.
Что я делаю не так?