Tree(1)--树的基本概念
来源:互联网 发布:台州五轴编程工资 编辑:程序博客网 时间:2024/06/03 20:08
1.树的定义及术语
有根树(rooted tree):一棵有根树,简称为树T,他是n个结点的有限集合。当n=0时,T称为空树,否则T是非空树,记作
其中,r是T的一个特殊结点,称为根。T1,T2,T3…Tm是除了r之外的其他结点构成的互不相交的m(m>0)个子集,每个子集合也是一棵树,称为根的子树(subtree)。每课子树的根结点有且仅有一个直接前驱,但可以有0个或者多个直接后继结点。m称为r的分支数。
结点(node):它包含数据项及指向其他结点的分支。
结点的度:结点所拥有的子树的棵树。A的度为3,E的度为2,K、L、F、G、M、I、J的度为0。
叶子结点:度为0的结点{K,L,F,G,M,I,J}
分支结点(非终端结点):除叶子结点外的其他结点{A,B,C,D,E,H}
子女结点:若x有子树,子树的根结点即为x的子女。A有3个子女
父结点:若x有子树,x即为子女的父结点
兄弟结点(sibling): 同一父结点的子女互称兄弟
祖先结点(ancestor):从根结点到该结点所经分支上的所有结点,L的祖先为A,B,E
子孙结点(descendant):某一结点的子女以及这些子女的子女,B的子孙为E,F,K,L
结点所处的层次(level)/结点的深度:简称结点的层次,即从根到该结点所经路径上的分支条数。根结点在第一层,他的子女在第二层。任一结点的层次为它的父结点的层次加一
树的深度(depth):距离根结点最远的结点即为树的深度。空树的深度为0,只有一个根结点的树的深度为1,如图所示的树的深度为4
树的高度(height):数值等于树的深度
树的度(degree):结点的度的最大值,如图所示的树的度为3
有序树(ordered tree):结点的各个子树是有次序的
无序树:
2. ADT of Tree
template <class Type> class Tree {public: Tree ( ); ~Tree ( ); position Root ( ); BuildRoot ( const Type& value ); position FirstChild ( position p ); position NextSibling ( position p); position Parent ( position p ); Type Retrieve ( position p ); int InsertChild ( const position p,const Type &value ); int DeleteChild ( position p, int i ); void DeleteSubTree ( position t ); int IsEmpty ( );}
- Tree(1)--树的基本概念
- 数据结构-树(Tree)的基本概念
- 行为树(Behavior Tree)实践(1)– 基本概念
- 行为树(Behavior Tree)实践(1)– 基本概念
- 行为树(Behavior Tree)实践(1)– 基本概念
- 行为树(Behavior Tree)实践(1)– 基本概念
- 行为树(Behavior Tree)实践(1)– 基本概念
- 行为树(Behavior Tree)实践(1)– 基本概念
- 行为树(Behavior Tree)实践(1)– 基本概念
- 行为树(Behavior Tree)实践(1)– 基本概念
- 行为树(Behavior Tree)实践(1)– 基本概念
- Device Tree(二):基本概念
- 树的基本概念
- 二叉树的基本概念
- 二叉树的基本概念
- 树的基本概念
- 树的基本概念
- 二叉树的基本概念
- 使用GPU
- Failover与Failback的区别
- 微服务架构的两大解耦利器与最佳实践
- 计算机相关岗位要求
- Nginx状态信息(status)配置及信息详解
- Tree(1)--树的基本概念
- Linux学习笔记二
- 字符串通配符
- EA&UML日拱一卒-活动图::活动分区
- Andriod开发购买装备
- Angular开发准备
- EL表达式
- Xcode本地代码上传到Github
- python格式化字符串format函数