【剑指offer】面试题32—从上往下打印二叉树

一、题目描述

从上往下打印出二叉树的每个节点,同层节点从左至右打印。

二、代码实现

# -*- coding:utf-8 -*-
# class TreeNode:
#     def __init__(self, x):
#         self.val = x
#         self.left = None
#         self.right = None
class Solution:
    # 返回从上到下每个节点值列表,例:[1,2,3]
    def PrintFromTopToBottom(self, root):
        # write code here
        if not root: return []
        res = []
        queue = [root]
        while len(queue):
            for i in range(len(queue)):
                node = queue.pop(0)
                res.append(node.val)
                if node.left: queue.append(node.left)
                if node.right: queue.append(node.right)
        return res

你可能感兴趣的:(【剑指offer】面试题32—从上往下打印二叉树)