binary_tree_postorder_traversal

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/zslngu/article/details/80540270

/*
Given a binary tree, return the postorder traversal of its nodes’ values.

For example:
Given binary tree{1,#,2,3},
*/

递归做法

class Solution {
public:
    vector<int> postorderTraversal(TreeNode *root) {
        vector<int>result;
        if(root==NULL)
            return result;

        vector<int>left=postorderTraversal(root->left);     
        vector<int>right=postorderTraversal(root->right);   

        if(left.size()>0)
        result.insert(result.end(),left.begin(),left.end());
        if (right.size()>0)
        result.insert(result.end(),right.begin(),right.end());

        result.push_back(root->val);

        return result;

    }
};

猜你喜欢

转载自blog.csdn.net/zslngu/article/details/80540270