给你一个二叉树,请你返回其按 层序遍历 得到的节点值。 (即逐层地,从左到右访问所有节点)。 示例:二叉树:[3,9,20,null,null,15,7], 3 / \ 9 20 / \ 15 7返回其层次遍历结果: [ [3], [9,20], [15,7]] 链接:https://leetcod ...
分类:
编程语言 时间:
2020-06-06 21:40:17
阅读次数:
69
给定一个二叉树,返回其节点值自底向上的层次遍历。 (即按从叶子节点所在层到根节点所在的层,逐层从左向右遍历) 例如:给定二叉树 [3,9,20,null,null,15,7], 3 / \ 9 20 / \ 15 7返回其自底向上的层次遍历为: [ [15,7], [9,20], [3]] /** ...
分类:
其他好文 时间:
2020-06-05 21:17:52
阅读次数:
78
给你一个二叉树,请你返回其按 层序遍历 得到的节点值。 (即逐层地,从左到右访问所有节点)。 示例:二叉树:[3,9,20,null,null,15,7], 3 / \ 9 20 / \ 15 7返回其层次遍历结果: [ [3], [9,20], [15,7]] /** * Definition f ...
分类:
其他好文 时间:
2020-06-05 21:13:11
阅读次数:
52
画画还真是费时间,主要的思路就是有队列来完成层次遍历,首先需要一个遍历结点的指针p,初始化首尾指针,当p!=null进入循环,让根节点1入队,rear指针+1, 下面的循环遍历条件是首尾指针不等(rear!=front) 标记一下此时的父结点p就是队列的首结点p=queue[rear],首节点出队f ...
分类:
编程语言 时间:
2020-06-04 21:17:21
阅读次数:
83
第五章 树和二叉树中我学到的 一,基本定义:树、二叉树、完美二叉树、偏二叉树,节点关系,树的深度,叶节点等等的定义 二,树(二叉树)的基本储存结构 (1)用数组,适用于满二叉树 (2)链式结构 (3)数组加链表式:双亲孩子表示法(代码如下) tyepdef struct cNode{ int num ...
分类:
其他好文 时间:
2020-05-31 21:31:33
阅读次数:
46
第五章学习了树与二叉树等相关内容 具体有如何去遍历一颗二叉树,分为层次遍历,先序遍历,中序遍历和后序遍历。其次还有最优的哈夫曼树,怎么去构造一棵哈夫曼树,从低往上构造等等。以及树的构造中会用到的链式存储及顺序存储结构还有借助数组来解决相关问题,定义树时采用的是递归的方式。 #include<iost ...
分类:
其他好文 时间:
2020-05-30 16:05:52
阅读次数:
78
题目描述 从上到下按层打印二叉树,同一层结点从左至右输出。每一层输出一行。 思路:层次遍历 vector<vector<int> > Print(TreeNode* pRoot) { vector<vector<int> > vec; if(pRoot == NULL) return vec; qu ...
分类:
其他好文 时间:
2020-05-29 17:48:51
阅读次数:
45
很简单,来个层次遍历,当遍历队列,遍历到刚开始遍历时,队列里最后一个数时(也就是遍历len-1次),得到的就是右视图的其中一个节点 /** * Definition for a binary tree node. * public class TreeNode { * int val; * Tree ...
分类:
其他好文 时间:
2020-05-25 09:46:16
阅读次数:
49
问题: 请实现一个函数按照之字形打印二叉树,即第一行按照从左到右的顺序打印,第二层按照从右至左的顺序打印,第三行按照从左到右的顺序打印,其他行以此类推。 分析: (1)对树进行层次遍历:使用队列 (2)需要单独记录每一层的序列:两个队列交替使用 code: //树节点 public class Tr ...
分类:
其他好文 时间:
2020-05-20 15:54:36
阅读次数:
44
题目: 二叉树的锯齿形层次遍历:给定一个二叉树,返回其节点值的锯齿形层次遍历。(即先从左往右,再从右往左进行下一层遍历,以此类推,层与层之间交替进行)。 思路: 使用层序遍历的思路,但是没有用到栈。 程序: # Definition for a binary tree node. # class T ...
分类:
编程语言 时间:
2020-05-16 10:35:55
阅读次数:
103