leetcode---binary-tree-postorder-traversal---树后续遍历

来源:互联网 发布:小米盒子网络连接不上 编辑:程序博客网 时间:2024/06/07 05:38

Given a binary tree, return the postorder traversal of its nodes’ values.
For example:
Given binary tree{1,#,2,3},
1
\
2
/
3

return[3,2,1].
Note: Recursive solution is trivial, could you do it iteratively?

/** * Definition for binary tree * struct TreeNode { *     int val; *     TreeNode *left; *     TreeNode *right; *     TreeNode(int x) : val(x), left(NULL), right(NULL) {} * }; */class Solution {public:    void dfs(vector<int> &ans, TreeNode *root)    {        if(root)        {            if(root->left)            {                dfs(ans, root->left);            }            if(root->right)            {                dfs(ans, root->right);            }            ans.push_back(root->val);        }        return;    }    vector<int> postorderTraversal(TreeNode *root)     {        vector<int> ans;        dfs(ans, root);        return ans;    }};
阅读全文
0 0
原创粉丝点击