树的深度优先遍历递归算法
时间: 2023-11-27 16:47:27 浏览: 94
Python算法系列—深度优先遍历算法【二叉树】
树的深度优先遍历递归算法可以通过以下步骤实现:
1. 首先,定义一个函数来进行深度优先遍历,该函数将接受一个节点作为参数。
2. 在函数内部,首先访问当前节点,并将其标记为已访问。
3. 然后,对于当前节点的每个未访问的子节点,递归调用该函数。
4. 最后,当所有子节点都被访问后,返回到父节点。
下面是一个JavaScript的例子:
```javascript
function dfs(node) {
if (!node) return;
console.log(node.val); // 访问当前节点
node.visited = true; // 标记为已访问
node.children.forEach(child => {
if (!child.visited) {
dfs(child); // 递归调用
}
});
}
```
阅读全文