给定一棵二叉树的中序遍历和前序遍历,请你先将树做个镜面反转,再输出反转后的层序遍历的序列。所谓镜面反转,是指将所有非叶结点的左右孩子对换。这里假设键值都是互不相等的正整数。 输入格式: 输入第一行给出一个正整数N(<=30),是二叉树中结点的个数。第二行给出其中序遍历序列。第三行给出其前序遍历序列。 ...
分类:
其他好文 时间:
2016-06-07 20:47:18
阅读次数:
208
一,问题介绍 给定一棵二叉树,按照层序遍历的顺序打印二叉树。但是要求,每一行打印一层数据。 二,算法分析 借助二叉树的层序遍历来实现。但是需要额外两个变量。一个变量用来保存当前层 还未打印的结点个数,另一个变量保存下一层待打印的结点个数。 二叉树层序遍历参考:http://www.cnblogs.c ...
分类:
其他好文 时间:
2016-06-06 18:34:01
阅读次数:
122
中序遍历:左->根->右; 前序遍历:根->左->右; 后序遍历:左->右->根; 层序遍历:一层一层的来。。。。 通常给出中序遍历,在给出前/后序遍历,就能求出后/前遍历; 一、已知前序、中序遍历,求后序遍历 例: 前序遍历: GDAFEMHZ 中序遍历: ADEFGHMZ 画树求法:第一步,根据 ...
分类:
其他好文 时间:
2016-06-04 22:05:58
阅读次数:
381
给定一棵二叉树的后序遍历和中序遍历,请你输出其层序遍历的序列。这里假设键值都是互不相等的正整数。 输入格式: 输入第一行给出一个正整数N(<=30),是二叉树中结点的个数。第二行给出其后序遍历序列。第三行给出其中序遍历序列。数字间以空格分隔。 输出格式: 在一行中输出该树的层序遍历的序列。数字间以1 ...
分类:
其他好文 时间:
2016-06-03 01:12:02
阅读次数:
442
Populating Next Right Pointers in Each Node II Follow up for problem "Populating Next Right Pointers in Each Node". What if the given tree could be an ...
分类:
其他好文 时间:
2016-06-02 11:15:30
阅读次数:
158
链式队列(Linked Queue)
1. 链式队列的概念
1.1 链式队列的定义
链式队列是基于链表的存储表示实现的队列。
1.2 链式队列中各元素的逻辑及存储关系
链式队列可以采用单链表作为其存储表示,因此,可以在链式队列的声明中用单链表定义它的存储空间。
链式队列的队头指针指向单链表的第一个结点,队尾指针指向单链表的最后一个结点。
注:链式队列的队头元素存放在单链表的第一个结点内,若要从队列中退出一个元...
分类:
其他好文 时间:
2016-05-30 15:24:56
阅读次数:
189
层序遍历,使用队列将每层压入,定义两个队列来区分不同的层。 vector<vector<int>> levelorderTraversal(TreeNode *root) { vector<vector<int>> result; vector<int>tmp; //通过两个queue来区分不同的层 ...
分类:
其他好文 时间:
2016-05-28 17:45:33
阅读次数:
173
从上往下打印出二叉树的每个结点,同一层的结点按照从左到右的顺序打樱例如如下二叉树打印出的结果为1、2、3、4、5、6、7、8、9。上面所说的也就是二叉树的层序遍历,对于层序遍历来说,首先访问的肯定是根节点,然后是其左右结点,之后就是左子树的左右结点和右子树的左右结点..
分类:
其他好文 时间:
2016-05-24 22:50:53
阅读次数:
154
题意:读入xx的数据,建立一棵二叉树,若成功建立无错误,则输出其层序遍历。 讲一下处理吧。 首先是输入那么就是input函数。我们不停的读入一个函数,如果输入正确的话,对于一组数据而言应该是读到()为止,所以把s=="()"作为一组数据读入结束的标志,return一个true给主函数,进行该组数据的 ...
分类:
其他好文 时间:
2016-05-22 19:49:05
阅读次数:
193
二叉树先序遍历;(1)先序访问根节点(2)先序访问左子树(3)先序访问右子树二叉树中序遍历;(1)中序访问根节点(2)中序访问左子树(3)中序访问右子树二叉树后序遍历;(1)后序访问根节点(2)后序访问左子树(3)后序访问右子树测试用例:inta[10]={‘1‘,‘2‘,‘3‘,‘#‘,‘#..
分类:
其他好文 时间:
2016-05-12 00:04:26
阅读次数:
332