码迷,mamicode.com
首页 >  
搜索关键字:中序遍历    ( 1835个结果
数据结构学习笔记(四)---遍历二叉树
遍历二叉树   二叉树是一种非线性的数据结构。所谓的遍历二叉树就是按某种顺序访问二叉树中的每个节点,要求每个节点被访问一次且仅一次。 遍历操作实际上是将非线性结构线性化过程,其结果为线性序列。   二叉树的操作 (1)先序遍历---结束的条件是二叉树是否为空 TLR 先访问根节点; 再先序访问左子树; 再先序访问右子树。 (2)中序遍历---结束的条件是二叉树是否为...
分类:其他好文   时间:2014-08-29 18:24:18    阅读次数:154
UVa 548 树
题意:给出中序和后序序列,求从根到叶子结点这样路径和值最小的叶子结点。如果和值相等,则选择叶子结点值较小的那个。 思路:由中序和后序序列递归地构造二叉树。顺序存储显然不行,使用链式存储。由于每个结点输入的是数字而不是字母,这里采用整型数组来存的,而不再是字符串,可能更方便些。build(n,a1,a2)函数是利用中序序列a1和后序序列a2构造有n个结点的二叉树,返回根结点指针。递归构造出二叉树后...
分类:其他好文   时间:2014-08-26 19:40:26    阅读次数:200
给定二叉树的先序遍历和中序遍历,输出它的后序遍历序列
这里没再用到先申请大Node数组的方法了,想练练写动态内存分配和释放的,一次OK了,也没怎么出错啊,开心~ 方法二 - Code: //给出一个二叉树的先序遍历和中序遍历,输出它的后序遍历 //直接构造的方法白书已给出。这里是先递归构造二叉树,然后进行后序遍历。 #include #include #include #define MAXN 1000 typedef struct nod...
分类:其他好文   时间:2014-08-26 13:42:56    阅读次数:253
算法之 有序链表和平衡二叉树
题目描述: Given a singly linked list where elements are sorted in ascending order, convert it to a height balanced BST. 给定一个有序的链表,要求构建一颗平衡二叉查找树。 解析:二叉查找树的中序遍历的结构就是一颗二叉查找树,要使得最终的二叉查找树的结构尽可能的平衡,也就是说只需要...
分类:其他好文   时间:2014-08-23 23:02:31    阅读次数:389
二叉查找树
二叉查找树的特点 下面的图就是两棵二叉查找树,我们可以总结一下他的特点:(1) 若它的左子树不空,则左子树上所有结点的值均小于它的根结点的值(2) 若它的右子树不空,则右子树上所有结点的值均大于它的根结点的值(3) 它的左、右子树也分别为二叉查找树我们中序遍历这两棵树发现一个有序的数据序列: 【1 ...
分类:其他好文   时间:2014-08-22 14:17:49    阅读次数:403
ACMclub 1757 二叉链表存储的二叉树 - from lanshui_Yang
题目描述: 在本题中,将会给出一个按照先序遍历得出的字符串,空格代表空的子节点,大写字母代表节点内容。请通过这个字符串建立二叉树,并按照题目描述中的一种先序遍历和两种中序遍历的算法分别输出每一个非空节点。 输入格式 输入只有一行,包含一个字符串S,用来建立二叉树。保证S为合法的二叉树先序遍历字符串,节点内容只有大写字母,且S的长度不超过100。 输出 共有三行,每...
分类:其他好文   时间:2014-08-19 22:34:55    阅读次数:440
基于中序遍历找到一个结点的后继结点
题目: 基于中序遍历找到一个结点的后继结点。 分析: 首先明确中序遍历,顺序为:左--->根----->右 假设当前结点为p。 有两种情况: 1.当p有右子树时,那么其右子树的最左结点即为所求: 2.当p没有右子树时,有下面两种情况: 沿着p向上找,如果p的父结点的左孩子是p,那么该父结点即为所求,否则继续向上找。 ...
分类:其他好文   时间:2014-08-19 16:39:15    阅读次数:216
排序二叉树及其Java实现
定义 排序二叉树的定义也是递归定义的,需要满足: (1)若它的左子树不为空,则左子树上所有节点的值要均小于根节点的值; (2)若它的右子树不为空,则右子树上所有节点的值要均大于根节点的值; (3)左、右子树也分别是排序二叉树 如下图,对于排序二叉树,若按中序遍历就可以得到由小到大的有序序列。 创建 创建排序二叉树的步骤就是不断像排序二叉树中添加新节点(p)的过程: (1)以根节...
分类:编程语言   时间:2014-08-18 18:45:22    阅读次数:316
算法题——二叉树结点的中序遍历的后继结点
题目:给出二叉树的一个结点,返回它中序遍历顺序的下一个结点。思路:如果有指向父亲的结点,则:如果当前结点有右儿子,或者当前结点是根结点,则后继结点为右子树的最左叶节点;否则,如果当前结点是父结点的左儿子,则后继结点就是父结点;(其实是第三种情况的一个特例,即自己是第0代祖先,返回第一代祖先)否则,向...
分类:其他好文   时间:2014-08-17 15:34:02    阅读次数:292
完全二叉树的链式存储结构的转化 & 非递归中序遍历二叉树
1 /* 2 * 二叉树 3 * 4 * (将完全二叉树的数组形式改为链表形式) 5 * 6 * 1 7 * 2 3 8 * ...
分类:其他好文   时间:2014-08-17 11:39:16    阅读次数:345
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!