码迷,mamicode.com
首页 > 编程语言 > 详细

60.把二叉搜索树打印成多行(python)

时间:2020-01-01 20:46:25      阅读:87      评论:0      收藏:0      [点我收藏+]

标签:turn   style   nbsp   queue   tmp   div   class   roo   打印二叉树   

题目描述

从上到下按层打印二叉树,同一层结点从左至右输出。每一层输出一行。
 1 class Solution:
 2     # 返回二维列表[[1,2],[4,5]]
 3     def Print(self, pRoot):
 4         # write code here
 5         if pRoot==None:
 6             return []
 7         queue1=[pRoot]
 8         queue2=[]
 9         res = []
10         while queue1 or queue2:
11             if queue1:
12                 tmpRet = []
13                 while queue1:
14                     tmpNode=queue1.pop(0)
15                     tmpRet.append(tmpNode.val)
16                     if tmpNode.left:
17                         queue2.append(tmpNode.left)
18                     if tmpNode.right:
19                         queue2.append(tmpNode.right)
20                 res.append(tmpRet)
21             if queue2:
22                 tmpRet = []
23                 while queue2:
24                     tmpNode = queue2.pop(0)
25                     tmpRet.append(tmpNode.val)
26                     if tmpNode.left:
27                         queue1.append(tmpNode.left)
28                     if tmpNode.right:
29                         queue1.append(tmpNode.right)
30                 res.append(tmpRet)
31         return res

2020-01-01 18:53:24

60.把二叉搜索树打印成多行(python)

标签:turn   style   nbsp   queue   tmp   div   class   roo   打印二叉树   

原文地址:https://www.cnblogs.com/NPC-assange/p/12129523.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!