0%

二叉树的后序遍历

给定一个二叉树,返回它的 后序 遍历。

1
2
3
4
5
6
7
8
输入: [1,null,2,3]  
1
\
2
/
3

输出: [3,2,1]

递归实现:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
vector<int> postorderTraversal(TreeNode* root) {
vector<int> chain = {};
postorderTraversalRecur(root, &chain);
return chain;
}

void postorderTraversalRecur(TreeNode* root, vector<int>* chain) {
if (!root) {
return;
}
postorderTraversalRecur(root->left, chain);
postorderTraversalRecur(root->right, chain);
chain->push_back(root->val);
}