# 二叉树的中序遍历

给定一个二叉树的根节点 root ,返回它的 中序 遍历。

 

示例 1:

输入:root = [1,null,2,3]
输出:
[1,3,2]

示例 2:

输入:root = []
输出:
[]

示例 3:

输入:root = [1]
输出:
[1]

示例 4:

输入:root = [1,2]
输出:
[2,1]

示例 5:

输入:root = [1,null,2]
输出:
[1,2]

 

提示:

 

进阶: 递归算法很简单,你可以通过迭代算法完成吗?

## template ```java public class TreeNode { int val; TreeNode left; TreeNode right; TreeNode(int x) { val = x; } } class Solution { public List inorderTraversal(TreeNode root) { List list = new ArrayList<>(); Stack stack = new Stack<>(); TreeNode cur = root; while (cur != null || !stack.isEmpty()) { if (cur != null) { stack.push(cur); cur = cur.left; } else { cur = stack.pop(); list.add(cur.val); cur = cur.right; } } return list; } } ``` ## 答案 ```java ``` ## 选项 ### A ```java ``` ### B ```java ``` ### C ```java ```