//stack
vector<int> preorderTraversal(TreeNode* root) {
stack<TreeNode*> s;
vector<int> ret;
TreeNode* temp;
if(root) s.push(root);
while(!s.empty()){
temp=s.top();
s.pop();
ret.push_back(temp->val);
if(temp->right) s.push(temp->right);
if(temp->left) s.push(temp->left);
}
return ret;
}
Last updated
Was this helpful?