中序遍历

public List inorderTraversal(TreeNode root) {
        List result = new ArrayList();
        Deque stack = new ArrayDeque();

        TreeNode curr = root;
        while (curr != null || !stack.isEmpty()) {
            if (curr != null) {
                stack.push(curr);
                curr = curr.left;
            } else {
                curr = stack.pop();
                result.add(curr.val);
                curr = curr.right;
            }
        }

        return result;
    }

你可能感兴趣的:(中序遍历)