Given a binary tree, return the preorder traversal of its nodes’ values.
For example:
Given binary tree{1,#,2,3},
1
\
2
/
3
return[1,2,3].
Note: Recursive solution is trivial, could you do it iteratively?
class Solution {
public:
vector<int> temp;
vector<int> preorderTraversal(TreeNode *root) {
postorder(root);
return temp;
}
void postorder(TreeNode *root)
{
if(!root)
{
return;
}
temp.push_back(root->val);
postorder(root->left);
postorder(root->right);
}
};