歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux編程 >> Linux編程 >> 把二叉樹打印成多行(二叉樹的層次遍歷)

把二叉樹打印成多行(二叉樹的層次遍歷)

日期:2017/3/1 9:06:01   编辑:Linux編程

題目描述

從上到下按層打印二叉樹,同一層結點從左至右輸出。每一層輸出一行。

二叉樹的層次遍歷,對於每一層的元素放在同一個列表中即可

# -*- coding:utf-8 -*-
# class TreeNode:
# def __init__(self, x):
# self.val = x
# self.left = None
# self.right = None
class Solution:
# 返回二維列表[[1,2],[4,5]]
def Print(self, pRoot):
# write code here
if pRoot is None:
return []
p = [pRoot]
res = []
while p:
node = []
li = []

for x in p:
if x.left:
node.append(x.left)
if x.right:
node.append(x.right)
li.append(x.val)
p = node
res.append(li)

return res

求二叉樹中兩個節點的最遠距離 http://www.linuxidc.com/Linux/2016-08/134049.htm

根據二叉樹的前序數組和中序序遍歷數組生成二叉樹 http://www.linuxidc.com/Linux/2016-09/135514.htm

判斷一個二叉樹是否是平衡二叉樹 http://www.linuxidc.com/Linux/2016-07/132842.htm

輕松搞定面試中的二叉樹題目 http://www.linuxidc.com/linux/2014-07/104857.htm

二叉樹的先序、中序、後序遍歷 http://www.linuxidc.com/Linux/2016-06/132504.htm

Copyright © Linux教程網 All Rights Reserved