0
点赞
收藏
分享

微信扫一扫

5.1.3二叉树的后序遍历


文章目录

  • ​​1.题目​​
  • ​​2.代码​​

1.题目

  • ​​题目要求​​
  • 思路:后序遍历的顺序是左-右-根

2.代码

class Solution{
public:
vector<int> postorderTraversal(TreeNode* root){
vector<int> result;
reverseFunction(root,result);
return result;
}

void reverseFunction(TreeNode* node, vector<int>& tempvector){
if (!node) return;
if (node->left) reverseFunction(node->left, tempvector);
if (node->right) reverseFunction(node->right, tempvector);
tempvector.push_bakc(node->val);
}
};

class Solution{
public:
vector<int> postorderTraversal(TreeNode* root){
vector<int> result;
stack<TreeNode*> s;
s.push(root);
whiel (!s.empty())
{
TreeNode* node=s.top();
s.pop();
result.insert(result.begin(),s->val);
if (root->left) s.push(root->left);
if (root->right) s.push(root->right);
}

return result;
}

};


举报

相关推荐

0 条评论