您当前的位置: 首页 >  Python

Better Bench

暂无认证

  • 4浏览

    0关注

    695博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

【Leetcode刷题Python】剑指 Offer 32 - I. 从上到下打印二叉树

Better Bench 发布时间:2022-10-03 20:49:56 ,浏览量:4

1 题目

从上到下打印出二叉树的每个节点,同一层的节点按照从左到右的顺序打印。

例如: 给定二叉树: [3,9,20,null,null,15,7],

    3
   / \
  9  20
    /  \
   15   7

返回:

[3,9,20,15,7]

来源:力扣(LeetCode) 链接:https://leetcode.cn/problems/cong-shang-dao-xia-da-yin-er-cha-shu-lcof 著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

2 解析

层次遍历,使用队列,每次遍历一个节点后,将左右子节点加入到队列中

3 python实现
class Solution:
    def levelOrder(self, root: TreeNode) -> List[int]:
        from collections import deque
        if not root:return []
        res,queue = [],deque()
        queue.append(root)
        while queue:
            node = queue.popleft()
            res.append(node.val)
            if node.left:queue.append(node.left)
            if node.right:queue.append(node.right)
        return res
        
关注
打赏
1665674626
查看更多评论
立即登录/注册

微信扫码登录

0.2018s