LeetCode 94.二叉树的中序遍历

题目

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

思路

我们先递归遍历根节点的左树节点,得到所有节点的值,再递归得到根节点的值,再递归遍历根节点的右树节点,得到所有节点的值。

代码如下:

class Solution {
    public List<Integer> inorderTraversal(TreeNode root) {
        List<Integer> result = new ArrayList<>();
        if (root == null) {
        //如果树为 null,直接返回 result
            return result;
        }
		
		//1.先递归遍历根节点的左树节点,得到所有节点的值
        result.addAll(inorderTraversal(root.left));
        //2.再递归得到根节点的值
        result.add(root.val);
        //3.再递归遍历根节点的右树节点,得到所有节点的值
        result.addAll(inorderTraversal(root.right));
        
        return result;
    }
}
发布了140 篇原创文章 · 获赞 16 · 访问量 8666

猜你喜欢

转载自blog.csdn.net/Huwence/article/details/102938580