您的位置:首页 > Web前端 > Node.js

Given a binary tree, return the postorder traversal of its nodes' values.

2017-03-17 14:21 429 查看
/**

 * Definition for binary tree

 * struct TreeNode {

 *     int val;

 *     TreeNode *left;

 *     TreeNode *right;

 *     TreeNode(int x) : val(x), left(NULL), right(NULL) {}

 * };

 */

class Solution {

public:

    vector<int> postorderTraversal(TreeNode *root)

    {      

        vector<int> result;

        stack<TreeNode*> tempStack;

        TreeNode *dummyRootNode  = root;

        if(dummyRootNode == NULL)

            return result;

        tempStack.push(dummyRootNode);

        while(!tempStack.empty())

        {

            TreeNode *tempNode = tempStack.top();

            tempStack.pop();

            result.push_back(tempNode->val);

            if(tempNode1->left) tempStack.push(tempNode->left);

            if(tempNode1->right) tempStack.push(tempNode->right);

        }

        reverse(result.begin(),result.end());

        return result;

    }

};
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐