leetcode题解(三十七):94. Binary Tree Inorder Traversal

中序遍历二叉树

在这里插入图片描述
顺序:左中右

思路就是简单迭代,使用栈结构

public List<Integer> inorderTraversal(TreeNode root) {
    List<Integer> list = new ArrayList<Integer>();

    Stack<TreeNode> stack = new Stack<TreeNode>();
    TreeNode cur = root;

    while(cur!=null || !stack.empty()){
        while(cur!=null){
            stack.add(cur);
            cur = cur.left;
        }
        cur = stack.pop();
        list.add(cur.val);
        cur = cur.right;
    }

    return list;
}

猜你喜欢

转载自blog.csdn.net/weixin_43869024/article/details/89505178