0%

二叉树的前序遍历

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

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

输出: [1,2,3]

递归实现:

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

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