题目描述
给出一棵二叉树,返回其中序遍历
算法思路
中序遍历,左根右,使用递归方式实现
代码实现(JAVA)
public List<Integer> inorderTraversal(TreeNode root) {
List<Integer> result = new ArrayList<Integer>();
traverse(root, result);
return result;
}
private void traverse(TreeNode root, List<Integer> result){
if(root == null){
return;
}
traverse(root.left, result);
result.add(root.val);
traverse(root.right, result);
}
class TreeNode {
public int val;
public TreeNode left, right;
public TreeNode(int val) {
this.val = val;
this.left = this.right = null;
}
}