歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux編程 >> 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