AsukaMinato

AsukaMinato

897. Increasing Order Search Tree 倒着中序遍历 + 生成器

中序遍历不一定需要左中右。
这种解法也不需要 queue 来存,用 stream, 一切都很自然。

class Solution:
    def increasingBST(self, root: TreeNode) -> TreeNode:
        def gen(root):
            if not root:
                return
            yield from gen(root.right)
            yield root.val
            yield from gen(root.left)
        return reduce(lambda ans, i: TreeNode(i, None, ans), gen(root), None)
'''
        ans = None
        for i in gen(root):
            ans = TreeNode(i, None, ans)
        return ans
'''      
加载中...
此文章数据所有权由区块链加密技术和智能合约保障仅归创作者所有。