欢迎光临散文网 会员登陆 & 注册

Leetcode Day13 2

2022-04-14 20:21 作者:我喜欢喝一点点  | 我要投稿

剑指 Offer 32 - I. 从上到下打印二叉树

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


 


例如:

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


    3

   / \

  9  20

    /  \

   15   7

返回:


[3,9,20,15,7]


嗯这个就是层序遍历,也就是bfs,熟悉一下python里面queue怎么写~

# Definition for a binary tree node.

# class TreeNode:

#     def __init__(self, x):

#         self.val = x

#         self.left = None

#         self.right = None


class Solution:

    def levelOrder(self, root: TreeNode) -> List[int]:

        if not root:return []

        res=[]

        q=[]

        q.append(root)

        while q:

            node=q.pop(0)

            res.append(node.val)

            if node.left:

                q.append(node.left)

            if node.right:

                q.append(node.right)

        return res



Leetcode Day13 2的评论 (共 条)

分享到微博请遵守国家法律