剑指offer 24题
题目描述:http://ac.jobdu.com/problem.php?pid=1367
输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果。如果是则输出Yes,否则输出No。假设输入的数组的任意两个数字都互不相同。搜索二叉树的特征:
左子树的节点小于根
右子树的节点大于根
任意子树都是搜索二叉树
而后序遍历时,左右根,序列的最后一项总是根。在序列中找到根...
分类:
其他好文 时间:
2015-07-26 17:28:12
阅读次数:
189
二叉树的遍历方法可分为深度优先和广度优先两种,其中深度优先遍历适合使用栈来辅助实现,广度优先则使用队列,因为栈的先进后出和队列的先进先出特点正好符合遍历顺序的要求。深度优先遍历一般又分为前序遍历,中序遍历,后序遍历,对于一颗树来说,前序、中序、后序针对的都是它的根节点,其中前序遍历访问顺序是:根节点-->左节点-->右节点,中序遍历访问顺序是:左节点-->根节点-->右节点,后续遍历访问顺序是:左...
分类:
其他好文 时间:
2015-07-26 15:48:20
阅读次数:
122
称号:在队列中,队列给定二进制序列前导,这种二元结构。例前言:a b d c e f后序:d b a e c f使用递归实现例如以下:#include#includeusing namespace std;typedef struct tagNode{ tagNode* left; ...
分类:
其他好文 时间:
2015-07-26 15:27:01
阅读次数:
111
求二叉树中的节点个数
求二叉树中叶子节点的个数
求二叉树的深度
求二叉树第K层的节点个数
递归遍历前序中序后序
非递归遍历前序中序后序层序
1 前序遍历
2 中序遍历
3 后序遍历
4 层序遍历
将二叉查找树变为有序的双向链表
判断两棵二叉树是否结构相同
判断二叉树是不是平衡二叉树
判断二叉树是否是搜索二叉树
求二叉树中两个节点的最低公共祖先节点
求二叉树中节点的最大距离
由前序遍历序列和中序遍历序列重建二叉树...
分类:
其他好文 时间:
2015-07-26 12:41:58
阅读次数:
186
数据结构的基础知识中重要的一点就是能否根据两种不同遍历序列的组合(有三种:先序+中序,先序+后序,中序+后序),唯一的确定一棵二叉树。然后就是根据二叉树的不同遍历序列(先序、中序、后序),重构二叉树。显然,这三种组合并不是都能唯一确定二叉树的,其中先序+后序就不能唯一确定一棵二叉树,其他两种组合可以...
分类:
其他好文 时间:
2015-07-26 00:19:17
阅读次数:
494
树是数据结构中很重要的一部分,也是各大公司面试常考部分。继树的各种遍历算法之后,今天又整理一下树的常见算法操作。本文包括:1.求节点的最近公共祖先2.树的序列化与反序列化3.已知先序遍历和中序遍历构造二叉树4.已知中序遍历和后序遍历构造二叉树1.求节点最近的公共祖先此题不同的要求有不同的解法如果已知...
分类:
编程语言 时间:
2015-07-25 22:51:17
阅读次数:
207
二叉树是一种非常重要的数据结构,很多其它数据结构都是基于二叉树的基础演变而来的。对于二叉树,有前序、中序以及后序三种遍历方法。因为树的定义本身就是递归定义,因此采用递归的方法去实现树的三种遍历不仅容易理解而且代码很简洁。而对于树的遍历若采用非递归的方法,就要采用栈去模拟实现。在三种遍历中,前序和中序...
分类:
其他好文 时间:
2015-07-25 21:28:11
阅读次数:
133
对于二叉树的三种遍历方式,它们的难易程度是不一样的,最简单的是先序遍历,其次是中序遍历,最难的是后序遍历方式。但是最难的后序遍历方式,却可以通过最简单的先序遍历方式的变形实现,然后把遍历的结果逆序一下就搞定了。哈哈,物极必反啊!先看一个最简单的后序的遍历方法的实现,利用先序遍历方式的变形,然后逆序v...
分类:
编程语言 时间:
2015-07-25 18:23:55
阅读次数:
219
对于二叉树的遍历,先序的方式是比较简单的,但是中序和后序的方式还是有点麻烦的,这里先给出一个用C++stack的遍历方式:1.如果当前结点不为空 把当前结点压入栈 p=p->left转向其左孩子2.如果当前结点为空(证明这半棵子树已经遍历完成,需要从栈顶找到树根) 取栈顶元素为当前结点,栈做一次弹栈...
分类:
其他好文 时间:
2015-07-25 15:07:45
阅读次数:
97
后序遍历的遍历中,某一个节点要被输出,在两种情况下:当前节点的左右孩子为空;当前节点的左右孩子已经被访问。第一种情况非常容易判断第二种情况需要记录访问过的节点,显然当前节点如果有孩子,则对它的访问会紧跟在它的孩子节点之后,无论是左右。所以只需记录每次访问的节点,就Ok![1]http://www.c...
分类:
其他好文 时间:
2015-07-25 12:06:37
阅读次数:
96