美文网首页
LeetCode No.12中序遍历

LeetCode No.12中序遍历

作者: MRYDM | 来源:发表于2019-06-21 15:41 被阅读0次

1. LeetCode94题目链接链接

https://leetcode-cn.com/problems/binary-tree-inorder-traversal/

2.题目解析

首先需要了解一下什么是前序遍历,中序遍历以及后序遍历。https://blog.csdn.net/qq_33243189/article/details/80222629
简单来说中序就是本着左根右的顺序来排序。那么问题就简单了,根据节点是否为null来判断,然后先添加左边节点,然后根节点,最后添加右边节点就可以了。最简单的方法就是递归了。

 public static List <Integer> inorderTraversal(TreeNode root) {
        List<Integer> data = new ArrayList<>();
        addNode(root, data);
        return data;
    }

    public static void addNode(TreeNode root, List <Integer> data) {
        if (root != null) {
            //先判断左边在判断右边
            if (root.left != null) {
                addNode(root.left, data);
            }
            data.add(root.val);
            if (root.right != null) {
                addNode(root.right, data);
            }
        }
    }

3.提交结果

相关文章

网友评论

      本文标题:LeetCode No.12中序遍历

      本文链接:https://www.haomeiwen.com/subject/qwwyqctx.html