一、二叉树的遍历: 1、前序遍历:根左右 2、中序遍历:左根右 3、后序遍历:左右根 4、层次遍历:一层一层的遍历,类似广度优先 二、二叉树的存储结构 二叉树以二叉链表结构存储,也就是1个数据域,两个指针域(分别指向左右孩子) //二叉树的二叉链表结构定义 typedef char ElemType ...
分类:
其他好文 时间:
2018-02-06 20:11:56
阅读次数:
163
知识点总结报告 知识点: 前序遍历 (原理)前序遍历二叉树过程 (1)访问根结点 (2)先序遍历左子树 (3)先序遍历右子树 中序遍历递归算法 void PreOrder(BTNode *b) //先序遍历的递归算法 { if (b!=NULL) { printf("%c ",b->data); / ...
分类:
其他好文 时间:
2018-02-03 15:51:34
阅读次数:
185
1.二叉树遍历 前序遍历 中序遍历 后续遍历 2.B树的排序查询 3.栈的应用:迷宫问题 4.栈的应用:括号匹配问题 5.链表操作 ...
分类:
其他好文 时间:
2018-02-02 23:23:08
阅读次数:
231
恢复内容开始 知识点:简单二叉树的前序创建以及三种基本遍历 二叉树:极其重要的数据结构之一,一个node节点包含一个数据域,两个指针域,这两个指针域分别向下指向它的左儿子,右儿子,而左右儿子又是一个节点,同样指向他们的左儿子、右儿子……二叉树与链表有类似之处,大家别看我们在纸上画的树的图节点之间是用 ...
分类:
其他好文 时间:
2018-02-02 00:53:56
阅读次数:
185
使用的全局变量: 根据前序、中序生成后序: 根据后序、中序生成前序: 完整代码: #include <stdio.h> #include <memory.h> #include <math.h> #include <string> #include <vector> #include <set> # ...
分类:
其他好文 时间:
2018-02-01 22:04:42
阅读次数:
223
核心思想是:序列化树 序列化后,用String可以唯一的代表一棵树,其实就是前序遍历改造一下(空节点用符号表示); 一边序列化,一边用哈希表记录有没有重复的,如果有就添加,注意不能重复添加。 重点就是序列化树,序列化得到的String可以唯一的代表一棵树,这个思想很多题都用到了 并不是只是前序遍历就 ...
分类:
其他好文 时间:
2018-01-29 17:43:10
阅读次数:
144
这道题学到了东西。 对于普通二叉树,前序(后序)+中序可以唯一确定二叉树,前序(后序)包含父子关系信息,中序包含兄弟关系信息 下边是前序+中序确定二叉树 步骤记住两点:所有节点信息都是从前序序列中获得(每次都是根据前序的1st节点信息作为根节点),中序遍历只是用来确定左右子树的子前序的起止点。 然后 ...
分类:
其他好文 时间:
2018-01-29 16:01:19
阅读次数:
160
题链: http://poj.org/problem?id=2828 题解: 线段树。 逆向考虑这个过程。最后的序列S共有n个元素。 先看最后一个人,如果他插入到第i位,那么他最终的位置就是当前序列S的第i号位置,然后把这个位置去掉,得到新序列S'。 再按上面的操作确定倒数第二个人的位置: 如果他插 ...
分类:
其他好文 时间:
2018-01-27 15:22:51
阅读次数:
130
关于二叉树的遍历请看: http://www.cnblogs.com/stAr-1/p/7058262.html ...
分类:
其他好文 时间:
2018-01-26 10:58:29
阅读次数:
121