leetcode:Binary Tree Postorder Traversal

来源:互联网 发布:拍孕肚用什么软件 编辑:程序博客网 时间:2024/06/03 13:01
class Solution {public:    vector<int> postorderTraversal(TreeNode *root) {        vector<int> res;        stack<pair<TreeNode *,int>>s;        TreeNode *p = root;        while(p!=NULL||!s.empty())        {            while(p)            {                s.push(pair<TreeNode*,int>(p,1));                p = p->left;            }            pair<TreeNode*,int> q = s.top();            s.pop();            if(q.second==1)            {                s.push(pair<TreeNode*,int>(q.first,2));                p = q.first->right;            }            else            {                res.push_back(q.first->val);                p = NULL;            }        }        return res;    }};

0 0
原创粉丝点击