/**
* struct TreeNode {
* int val;
* struct TreeNode *left;
* struct TreeNode *right;
* };
*/
class Solution {
public:
/**
*
* @param root TreeNode类 the root of binary tree
* @return int整型vector<vector<>>
*/
vector<int> v1;
vector<int> v2;
vector<int> v3;
vector<vector<int>> v4;
void preOrderTraverse(TreeNode* r)
{
if(r)
{
v1.push_back(r->val);
preOrderTraverse(r->left);
preOrderTraverse(r->right);
}
}
void midOrderTraverse(TreeNode* r)
{
if(r)
{
midOrderTraverse(r->left);
v2.push_back(r->val);
midOrderTraverse(r->right);
}
}
void lastOrderTraverse(TreeNode* r)
{
if(r)
{
lastOrderTraverse(r->left);
lastOrderTraverse(r->right);
v3.push_back(r->val);
}
}
vector<vector<int> > threeOrders(TreeNode* root) {
// write code here
TreeNode* pRoot = root;
preOrderTraverse(root);
midOrderTraverse(root);
lastOrderTraverse(root);
v4.push_back(v1);
v4.push_back(v2);
v4.push_back(v3);
return v4;
}
};
二叉树的前中后序遍历(牛客)
最新推荐文章于 2022-10-08 09:55:18 发布