树的基本知识
来源:互联网 发布:优化sql查询速度 编辑:程序博客网 时间:2024/05/20 19:18
1.树的分类:
●一般树
●二叉树
●一般二叉树
●满二叉树
●完全二叉树
●森林
若干不交叉的树放在一起就是森林。
2.树的存储
●二叉树的存储
⊿连续存储
要使用连续存储,一定要先将二叉树补全为完全二叉树,然后再进行连续存储。
⊿链式存储
将每个节点定义成一个结构体,包含有三个组成部分,一部分为节点本身的数据, 一部分为左孩子,一部分为右孩子
●一般树的存储
●双亲表示法:
●孩子表示法:
●双亲孩子表示法:
●二叉树表示法:
将一般树转换成二叉树,再将此二叉树存储即可。
转换原则:保证每个节点的左指针域指向他的第一个孩子;
右指针域指向他的下一个兄弟。
●森林的存储
先把森林转换成二叉树,再存储二叉树。
3.二叉树的操作
●二叉树的遍历
●先序遍历
方法:先访问根节点,再先序遍历根节点的左子树,最后先序遍历根节点的右子树
●中序遍历
方法:先中序访问根节点的左子树,然后访问根节点,最后中序访问根节点的右子 树
●后序遍历
方法:先后序访问根节点的左子树,然后后序访问根节点的右子树,最后访问根节 点
●根据其中两种遍历结果求二叉树的结构(只有如下两种):
●根据先序遍历和中序遍历求二叉树
●根据中序遍历和后序遍历求二叉树
- 二叉树的基本知识
- 树的基本知识
- 树的基本知识
- 树的基本知识
- 二叉树的基本知识
- 树的基本知识
- 树的基本知识前传
- 树-基本知识
- 【C++】 二叉树的基本知识及其遍历
- 二叉树的一些基本知识总结
- Indie音乐的基本知识
- UNIX的一些基本知识
- 接口技术的基本知识
- python的基本知识
- 硬盘的基本知识
- Oracle数据库的基本知识
- ape的基本知识
- QQ号码的基本知识
- ios开发之倒计时实现
- 二维码的原理和生成细节
- 模板参数tag的用法
- log4net的使用
- JDBC连接MySQL数据库及示例
- 树的基本知识
- word或wps中如何插入代码
- Android权限Uri.parse的详细资料
- C++ Primer Plus 第六版 每天总结一章加课后习题
- leetcode: Spiral Matrix II
- 绚丽过后迎接的确是永恒的寂暗
- Eclipse 快捷键
- java.lang.OutOfMemoryError: Java heap space解决方法
- July大神微软等100题之第7题------判断两个链表相交(包含有无环),链表是否有环题目总结