js中二叉树遍历找到指定元素
时间: 2023-09-17 17:12:47 浏览: 53
在 Javascript 中,可以使用递归和迭代两种方式来遍历二叉树并找到指定元素。
下面是使用递归方式来实现的代码:
```javascript
function findNode(root, value) {
if (root === null) {
return null;
}
if (root.value === value) {
return root;
}
// 先在左子树中查找
var leftResult = findNode(root.left, value);
if (leftResult !== null) {
return leftResult;
}
// 再在右子树中查找
var rightResult = findNode(root.right, value);
if (rightResult !== null) {
return rightResult;
}
// 没有找到指定元素
return null;
}
```
使用迭代方式来实现可以使用 BFS(广度优先搜索)。下面是代码示例:
```javascript
function findNode(root, value) {
var queue = [root];
while (queue.length > 0) {
var node = queue.shift();
if (node.value === value) {
return node;
}
if (node.left !== null) {
queue.push(node.left);
}
if (node.right !== null) {
queue.push(node.right);
}
}
// 没有找到指定元素
return null;
}
```
以上是两种常见的方式,具体实现可以根据具体的情况来选择。