Loading

94. 二叉树的中序遍历

94. 二叉树的中序遍历

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

//给定一个二叉树的根节点 root ,返回它的 中序 遍历。 
//
// 示例 1: 
//
//输入:root = [1,null,2,3]
//输出:[1,3,2]
// 
//
// 示例 2: 
//
//输入:root = []
//输出:[]
// 
//
// 示例 3: 
//
//输入:root = [1]
//输出:[1]
// 
// 示例 4: 
//
//输入:root = [1,2]
//输出:[2,1]
// 
//
// 示例 5: 
//
//输入:root = [1,null,2]
//输出:[1,2]
// 
// 提示: 
// 树中节点数目在范围 [0, 100] 内 
// -100 <= Node.val <= 100 
// 
// 进阶: 递归算法很简单,你可以通过迭代算法完成吗? 
// Related Topics 栈 树 哈希表 
// 👍 813 👎 0

解法1 Java递归解法

二叉树的中序遍历:

class Solution {
    public List<Integer> inorderTraversal(TreeNode root) {
        List<Integer> list = new ArrayList<>();
        middle(root,list);
        return list;
    }
    public void middle(TreeNode node ,List<Integer> res){
        if(node == null) {
            return;
        }
        middle(node.left,res);
        //中序遍历,根节点在中间
        res.add(node.val);
        middle(node.right,res);
    }
}

完!

posted @ 2021-01-03 13:01  sstu  阅读(69)  评论(0编辑  收藏  举报