欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

python解二叉树的层序遍历

程序员文章站 2022-07-15 16:08:55
...

Q

python解二叉树的层序遍历

 A

class Solution(object):
    def levelOrder(self, root):
        """
        :type root: TreeNode
        :rtype: List[List[int]]
        """
        queue = collections.deque() #创建一个队列
        queue.append(root)  #向队列填充第一个元素
        res = []   #储存返回值 
        while queue:  #循环遍历队列,队列每次存放的都是同一层级的节点,遍历
            size = len(queue)  
            level = []  #储存同级节点内容
            for _ in range(size):  #根据同级节点数量遍历指定节点
                cur = queue.popleft()
                if not cur:
                    continue
                level.append(cur.val)
                queue.append(cur.left)
                queue.append(cur.right)
            if level:
                res.append(level)
        return res

思路

python解二叉树的层序遍历

python解二叉树的层序遍历

python解二叉树的层序遍历

python解二叉树的层序遍历

 

 

 

 

 

 

 

 

相关标签: python算法