94. Binary Tree Inorder Traversal
Given a binary tree, return the inorder traversal of its nodes' values.
Example:
Input: [1,null,2,3] 1 \ 2 / 3 Output: [1,3,2]
二叉树的中序遍历,我用的C++,思路:建一个vector,左子树递归返回一个vector,右子树递归返回一个vector,再和根节点一起组成最后的结果。
class Solution {
public:
void inorder(TreeNode* tree,vector<int> &rec)
{
if(tree!=NULL)
{
inorder(tree->left,rec);
rec.push_back(tree->val);
inorder(tree->right,rec);
}
}
vector<int> inorderTraversal(TreeNode* root) {//根据根节点返回此树的vector
vector<int> rec;
inorder(root,rec);
return rec;
}
};