# 94_Binary_Tree_Inorder_Traversal
###### tags: `leetcode`
## Problem Statement
Given the root of a binary tree, return the inorder traversal of its nodes' values.
- Example 1:
> Input: root = [1,null,2,3]
Output: [1,3,2]
- Example 2:
> Input: root = []
Output: []
- Example 3:
> Input: root = [1]
Output: [1]
- Example 4:
> Input: root = [1,2]
Output: [2,1]
- Example 5:
> Input: root = [1,null,2]
Output: [1,2]
- Constraints:
> The number of nodes in the tree is in the range [0, 100].
-100 <= Node.val <= 100
- Follow up:
> Recursive solution is trivial, could you do it iteratively?
## Solution
- This is just like the former question, but with different traversal method.
:::info
[https://hackmd.io/@eesss34690/rkUnRSiXu](https://)
:::
- this needs to traverse to the left, then add the value into the vector, lastly add the right one.
```cpp=
void treversal(TreeNode* a){
if (a->left){
treversal(a->left);
}
ans.push_back(a->val);
if (a->right){
treversal(a->right);
}
}
```
```cpp=
vector<int> ans;
vector<int> inorderTraversal(TreeNode* root) {
if (root)
treversal(root);
return ans;
}
```