diff --git a/index.js b/index.js index 9e1b487..689507c 100644 --- a/index.js +++ b/index.js @@ -10,7 +10,22 @@ class Tree { this.root = node; } - findNode(data) {} + findNode(data) { + if (!this.root) return null; + let item = null; + let queue = [this.root]; + while (queue.length) { + let item = queue.shift(); + if (item.data === data) { + return item; + } + for (let child of item.children) { + queue.push(child); + } + } + return item; + } } + module.exports = { TreeNode, Tree };