Python は、バイナリ ツリー レベルのトラバーサル (幅優先トラバーサル) を実装します。

1. Python は二分木レベルのトラバーサルを実装します

1.Leetcodeトピックリンク

102. 二分木のレベル順トラバーサル

2.実現する

主に deque キューを使用して以下を実現します。

class Solution:
    """二叉树层序遍历迭代解法"""

    def levelOrder(self, root: TreeNode) -> List[List[int]]:
        results = []
        if not root:
            return results

        from collections import deque
        que = deque([root])

        while que:
            size = len(que)
            result = []
            for _ in range(size):
                cur = que.popleft()
                result.append(cur.val)
                if cur.left:
                    que.append(cur.left)
                if cur.right:
                    que.append(cur.right)
            results.append(result)

        return results

おすすめ

転載: blog.csdn.net/flyingluohaipeng/article/details/129764293