题目链接:https://leetcode-cn.com/problems/binary-tree-preorder-traversal/
二叉树前序遍历,栈实现
vector<int> preorderTraversal(TreeNode* root) {
TreeNode *p = root;
stack<TreeNode*> s;
vector<int> result;
while (!s.empty()||p){
while (p){
s.push(p);
result.push_back(p->val);
p = p->left;
}
p = s.top();
s.pop();
p = p->right;
}
return result;
}