$\color{ FF7D00}{题目描述}$ 从上往下打印出二叉树的每个节点,同层节点从左至右打印。 $\color{ FF7D00}{解题:借用队列存一个节点,遍历它的值以及左右孩子的值之后,将左右孩子依次入队列,再循环如此的操作直至队列为空。}$ ...
分类:
其他好文 时间:
2020-01-19 12:52:03
阅读次数:
55
从上往下打印出二叉树的每个节点,同层节点从左至右打印。 思路:就是写一个层序遍历代码,用队列将根、左孩子、右孩子有序入队最后再出队即可 1 import java.util.*; 2 /** 3 public class TreeNode { 4 int val = 0; 5 TreeNode le ...
分类:
其他好文 时间:
2020-01-13 23:37:38
阅读次数:
77
剑指Offer:从上往下打印二叉树 题目描述 从上往下打印出二叉树的每个节点,同层节点从左至右打印。 题目分析 这道题主要是队列的应用,我们首先要了解,队列是先进先出,我们把第一层即根节点放入队列中,先打印的就是根节点,接着放入第二层及根节点的孩子节点,所以后打印的就是第二次的节点,接着第三层... ...
分类:
其他好文 时间:
2020-01-08 19:26:23
阅读次数:
84
题目描述 从上到下按层打印二叉树,同一层结点从左至右输出。每一层输出一行。 1 class Solution: 2 # 返回二维列表[[1,2],[4,5]] 3 def Print(self, pRoot): 4 # write code here 5 if pRoot==None: 6 retu ...
分类:
编程语言 时间:
2020-01-01 20:46:25
阅读次数:
87
题目描述 请实现一个函数按照之字形打印二叉树,即第一行按照从左到右的顺序打印,第二层按照从右至左的顺序打印,第三行按照从左到右的顺序打印,其他行以此类推。 1 # -*- coding:utf-8 -*- 2 # class TreeNode: 3 # def __init__(self, x): ...
分类:
编程语言 时间:
2020-01-01 18:43:18
阅读次数:
66
public class TreeNode(){ public int val; publicTreeNode Left; public TreeNode Right; public TreeNode(int x){ val=x } } 局部变量temp获取当前结点,queue获取此结点下的左右结点 ...
分类:
其他好文 时间:
2019-12-31 10:56:27
阅读次数:
77
题目: 从上到下按层打印二叉树,同一层结点从左至右输出。每一层输出一行。 分析: 层次打印二叉树,在打印二叉树结点的同时,保存好结点的左右孩子,不断的重复打印,直到需要打印的数组为空即可。 程序: C++ class Solution { public: vector<vector<int> > P ...
分类:
编程语言 时间:
2019-12-29 16:29:54
阅读次数:
92
题目:请实现一个函数按照之字形打印二叉树,即第一行按照从左到右的顺序打印,第二层按照从右至左的顺序打印,第三行按照从左到右的顺序打印,其他行以此类推。 这道题也是二叉树的层次遍历,但要求按行打印,并且是之字形的,需要定义一个flag,确定这一行的打印顺序是从左到右还是从右至左。每行打印完,只要将fl ...
分类:
其他好文 时间:
2019-12-25 01:55:18
阅读次数:
148
题目:从上往下打印出二叉树的每个节点,同层节点从左至右打印。 这道题是非常基础的一道题,没有特殊的要求,用队列就可以解决。将root节点放到队列里,如果队列不为空,每次弹出队首元素,并将队首元素的值放到数组里。如果这个队首元素有左儿子,则把左儿子压入队列,如果有右儿子,把右儿子也压入队列。因为队列是 ...
分类:
其他好文 时间:
2019-12-22 12:26:01
阅读次数:
79
/* 题目: 分行按层自上向下打印二叉树。 */ /* 思路: 使用队列,将节点压入队列中,再弹出来,压入其左右子节点,循环,直到栈为空。 添加两个计数器,current记录当前行的节点数,next记录下一行的节点数。 */ #include<iostream> #include<string.h> ...
分类:
其他好文 时间:
2019-11-26 22:52:53
阅读次数:
88