使用JavaScript完成。给你一棵二叉树的根节点 root ,返回其节点值的 后序遍历 。示例:输入:root = [1,null,2,3] 输出:[3,2,1]
时间: 2024-03-05 08:48:00 浏览: 72
好的,以下是使用JavaScript完成二叉树后序遍历的代码:
```javascript
function postorderTraversal(root) {
let result = [];
if (root === null) {
return result;
}
let stack = [root];
while (stack.length) {
let node = stack.pop();
result.unshift(node.val);
if (node.left !== null) {
stack.push(node.left);
}
if (node.right !== null) {
stack.push(node.right);
}
}
return result;
}
```
这里使用了一个栈来存储待处理的节点。首先将根节点入栈,然后在每一次循环中弹出栈顶节点,并将其值插入结果数组的开头。接着,将左右子节点(如果存在)分别推入栈中。由于后序遍历是先访问左右子节点,最后才访问根节点,因此需要先将根节点的值插入结果数组的开头。最后返回结果数组即可。
希望这个代码对您有帮助!
阅读全文