数据结构——第三章树和二叉树:01树和二叉树的类型定义

Posted hou36

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据结构——第三章树和二叉树:01树和二叉树的类型定义相关的知识,希望对你有一定的参考价值。

1.树的类型定义:

(1)数据对象D:D是具有相同特性的数据元素的集合。

(2)数据关系R:若D为空集,则成为空树

否则:在D中存在唯一的称为根的数据元素root。当n>1时,其余结点可分为n(n>0)个互不相交的有限集T1, T2, T3, ..., Tm,其中每一棵子集本身又是一课符合本定义的树,称为根root的子树。

2.树的基本操作:

(1)查找类:

①Root(T):求树的根结点

②Value(T, cur_e):求当前结点的元素值

③Parent(T, cur_e):求当前结点的双亲结点

④LeftChile(T, cur_e):求当前结点的最左孩子

⑤RightSibling(T, cur_e):求当前结点的右兄弟

⑥TreeEmpty(T):判定树是否为空树

⑦TreeDepth(T):求树的深度

⑧TraverseTree(T, Visit()):遍历树

(2)插入类:

①InitTree(&T):初始化树

②CreateTree(&T, definition):按定义构造树

③Assign(&T, cur_e, value):给当前结点赋值

④InsertChild(&T, &p, i, root):将以root为根的树插入为结点p的第i棵子树

(3)删除类:

①ClearTree(&T):将树清空

②DestroyTree(&T):销毁树的结构

③DeleteChile(&T, &p, i):删除结点p的第i棵子树

3.有向树:有确定的根,树根和子树根之间为有向关系。

4.有序树:子树之间存在确定的次序关系。

5.无序树:子树之间不存在确定的次序关系。

6.线性结构对比树形结构:

(1)线性结构:第一个元素无前驱,最后一个元素无后继,其它元素一个前驱一个后继

(2)树形结构:根结点无前驱,多个叶子结点无后继,其它元素一个前驱多个后继

7.

以上是关于数据结构——第三章树和二叉树:01树和二叉树的类型定义的主要内容,如果未能解决你的问题,请参考以下文章

Java 数据结构树和二叉树

数据结构——第三章树和二叉树:03树和森林

5.5树和二叉树——二叉树的层次遍历算法

树和二叉树的概念

数据结构学习笔记——广义表树和二叉树的基本知识

数据结构学习笔记——广义表树和二叉树的基本知识