题解 | #二叉树的后序遍历#
二叉树的后序遍历
http://www.nowcoder.com/practice/32af374b322342b68460e6fd2641dd1b
题目描述:用递归的方法对给定的二叉树进行后序遍历。
例如:给定的二叉树为{1,#,2,3},返回[3,2,1].
示例1:
输入:{1,#,2,3}
返回值:[3,2,1]
/** * struct TreeNode { * int val; * struct TreeNode *left; * struct TreeNode *right; * }; */ 思路:二叉树的后序遍历,就是递归,先左再右最后根。具体代码如下: class Solution { public: /** * * @param root TreeNode类 * @return int整型vector */ vector<int> res; void postbianli(TreeNode *root) { if(root!=NULL) { postbianli(root->left); postbianli(root->right); res.push_back(root->val); } } vector<int> postorderTraversal(TreeNode* root) { // write code here postbianli(root); return res; } };