算法day35 二叉树的前序遍历、中序遍历、后序遍历(递归方法)

题目描述

代码实现

public:
void traversal(TreeNode cur , vector &vec){
if(!cur) return;
vec.push_back(cur->val);
traversal(cur->left,vec);
traversal(cur->right,vec);
}
vector preorderTraversal(TreeNode
root) {
vector res;
traversal(root,res);
return res;
}

代码实现

public:
void traversal(TreeNode cur,vector &vec){
if(!cur) return;
traversal(cur->left,vec);
vec.push_back(cur->val);
traversal(cur->right,vec);
}
vector inorderTraversal(TreeNode
root) {
vector res;
traversal(root,res);
return res;
}

代码实现

public:
void traversal(TreeNode* cur,vector &vec){
if(!cur) return;
traversal(cur->left,vec);
traversal(cur->right,vec);
vec.push_back(cur->val);
}
vector postorderTraversal(TreeNode* root) {
vector res;
traversal(root,res);
return res;
}

时间复杂度:O(n)
空间复杂度:O(n)

END

posted on 2025-06-04 15:03  sakura430  阅读(32)  评论(0)    收藏  举报