首先我们需要直到树的中序遍历顺序:左根右,有了顺序之后,我们需要采用的方式是递归调用,这也是最基础的DFS遍历,接下来我们看看代码如何实现?
public static List<Integer> inorderTraversal(TreeNode root) {
//对结果集要准备好一个数组
List<Integer> data = new ArrayList<>();
dfs(root,data);
return data;
}
public static void dfs(TreeNode root,List<Integer> data){
//终止条件判断
if(root==null){
return;
}
dfs(root.left,data);
data.add(root.val);
dfs(root.right,data);
}