60.把二叉搜索树打印成多行(python)
题目描述
从上到下按层打印二叉树,同一层结点从左至右输出。每一层输出一行。
class Solution: # 返回二维列表[[1,2],[4,5]] def Print(self, pRoot): # write code here if pRoot==None: return [] queue1=[pRoot] queue2=[] res = [] while queue1 or queue2: if queue1: tmpRet = [] while queue1: tmpNode=queue1.pop(0) tmpRet.append(tmpNode.val) if tmpNode.left: queue2.append(tmpNode.left) if tmpNode.right: queue2.append(tmpNode.right) res.append(tmpRet) if queue2: tmpRet = [] while queue2: tmpNode = queue2.pop(0) tmpRet.append(tmpNode.val) if tmpNode.left: queue1.append(tmpNode.left) if tmpNode.right: queue1.append(tmpNode.right) res.append(tmpRet) return res
2020-01-01 18:53:24