美文网首页
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