表达树就是根据后缀表达式来建立一个二叉树。
这个二叉树的每个叶子节点就是数,真祖先都是操作符。
通过栈来建立的,所以这里也会有很多栈的操作。
树的先序遍历,中序遍历,后序遍历的概念我就不讲了,不会的自行百度,不然也看不懂我的代码。
下面是代码:
//
// main.cpp
// expressionTree
//
// Created by Alps on 14-7-29.
//...
分类:
其他好文 时间:
2014-07-30 23:57:15
阅读次数:
554
分割后长度相等,就是参数麻烦,p,先序的起始点, ib,ie 终须的结束和开始。 1 /** 2 * Definition for binary tree 3 * public class TreeNode { 4 * int val; 5 * TreeNode left;...
分类:
其他好文 时间:
2014-07-23 22:10:37
阅读次数:
211
本文实现了二叉树了存储实现,起先决定和队列与栈一样,设计一个二叉树节点的类型class treeNode,再构建一个二叉树类处理节点的生成,遍历等,结果在做二叉树创建函数CreateBitTree时遇到了很多问题,最后才发现直接构建一个二叉树类型就可以了。这里主要介绍利用先序序列和中序序列重构一个二...
分类:
其他好文 时间:
2014-07-22 00:05:34
阅读次数:
265
以下内容出自:> 大家在上学的时候应该都学过“数据结构”这门课程吧,还记得其中有一节叫“二叉树”吧,我们上学那会儿这一章节是必考内容,左子树,右子树,什么先序遍历后序遍历什么,重点就是二叉树的的遍历,我还记得当时老师就说,考试的时候一定有二叉树的构建和遍历,现在想起来还是觉的老师是正确的,树状结果....
分类:
其他好文 时间:
2014-07-19 20:29:30
阅读次数:
318
1.如何根据二叉树的先序遍历和中序遍历结果还原二叉树?
比如,先序遍历结果是{1,2,4,7,3,5,6,8},中序遍历结果是{4,7,2,1,5,3,8,6};
那么重建二叉树的过程如下:
1.先序遍历方式为:根->左->右.故1为根节点。中序方式为:左->根->右,所以4,7,2为左子树上的结点,5,3,8,6为右子树的结点。
2.经过步骤1,将...
分类:
其他好文 时间:
2014-07-19 18:25:16
阅读次数:
248
本文用先序、中序、后序、层次遍历4种方式实现了对线索二叉树的线索化,然后分别用上述4种方式实现了线索化的遍历。二叉树中容易找到结点的左右孩子信息,但该结点在某一序列中的直接前驱和直接后继只能在某种遍历过程中动态获得。先依遍历规则把每个结点某一序列中对应的前驱和后继线索预存起来,这叫做"线索化"。意义...
分类:
其他好文 时间:
2014-07-19 11:16:28
阅读次数:
195
一、已知先序遍历和中序遍历,求后序遍历。
根据先序遍历和中序遍历还原二叉树的主要思想:
1、先序遍历序列的第一个元素必定是根节点,可以由此获取二叉树的根节点。
2、根据根节点,在中序遍历序列中查找该节点,由中序遍历的性质可知,中序遍历中该根节点左边的序列必定在根节点的左子树中,而根节点右边的序列必定在右子树中。由此可以知道先序遍历中左子树以及右子树的起止位置。
3、分别...
分类:
其他好文 时间:
2014-07-14 20:41:09
阅读次数:
212
数据结构实验之二叉树的建立与遍历
Time Limit: 1000ms Memory limit: 65536K 有疑问?点这里^_^
题目描述
已知一个按先序序列输入的字符序列,如abc,,de,g,,f,,,(其中逗号表示空节点)。请建立二叉树并按中序和后序方式遍历二叉树,最后求出叶子节点个数和二叉树深度。
{CSDN:CODE:425701}
...
分类:
其他好文 时间:
2014-07-14 14:02:24
阅读次数:
182