美文网首页
把二叉树打印成多行

把二叉树打印成多行

作者: Max_7 | 来源:发表于2019-03-05 14:53 被阅读0次

    题目描述

    从上到下按层打印二叉树,同一层结点从左至右输出。每一层输出一行。

    思路

    宽度有限搜索的应用。
    每一层记录当前的结果。

    代码

    class Solution:
        # 返回二维列表[[1,2],[4,5]]
        def Print(self, pRoot):
            # write code here
            if pRoot is None:
                return []
            q =[pRoot]
            result = []
            while q:
                current_level = []
                current_result = []
                for node in q:
                    current_result.append(node.val)
                    if node.left is not None:
                        current_level.append(node.left)
                    if node.right is not None:
                        current_level.append(node.right)
                q = current_level
                result.append(current_result)
            return result
    

    相关文章

      网友评论

          本文标题:把二叉树打印成多行

          本文链接:https://www.haomeiwen.com/subject/dxtouqtx.html