zoukankan      html  css  js  c++  java
  • 60、把二叉树打印成多行

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

    ==》stack

    # -*- 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 not pRoot:
                return []
            res = []
            stack = [pRoot]
            while stack:
                tmp = []
                level = []
                for node in stack:
                    tmp.append(node.val)
                    if node.left:
                        level.append(node.left)
                    if node.right:
                        level.append(node.right)
                stack = level
                res.append(tmp)
            return res

    ==》queue

    # -*- 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 not pRoot:
                return []
            from collections import deque
            q = deque()
            q.append(pRoot)
            res = []
            while q:
                tmp = []
                nextLevel = deque()
                for node in q:
                    tmp.append(node.val)
                    if node.left:
                        nextLevel.append(node.left)
                    if node.right:
                        nextLevel.append(node.right)
                q = nextLevel
                res.append(tmp)
            return res
  • 相关阅读:
    BIOS中的UEFI和Legacy启动模式
    php和java中的加密和解密
    Linux 的进程状态
    C++继承:公有,私有,保护
    编译器在构造函数里都做了些什么?
    操作符重载
    C++对象模型学习笔记
    sizeof操作符-结构体与类大小
    C++之智能指针
    C/C++笔试题整理
  • 原文地址:https://www.cnblogs.com/liushoudong/p/13541163.html
Copyright © 2011-2022 走看看