可以免费做宣传的网站,视频号直播怎么引流,汕头市营商环境建设监督局网站,网络推广哪个平台最好数据结构之树和二叉树定义 1、树的定义2、树的基本概念3、二叉树的定义 数据结构是程序设计的重要基础#xff0c;它所讨论的内容和技术对从事软件项目的开发有重要作用。学习数据结构要达到的目标是学会从问题出发#xff0c;分析和研究计算机加工的数据的特性#xff0c;以… 数据结构之树和二叉树定义 1、树的定义2、树的基本概念3、二叉树的定义 数据结构是程序设计的重要基础它所讨论的内容和技术对从事软件项目的开发有重要作用。学习数据结构要达到的目标是学会从问题出发分析和研究计算机加工的数据的特性以便为应用所涉及的数据选择适当的逻辑结构、存储结构及其相应的操作方法为提高利用计算机解决问题的效率服务。 数据结构是指数据元素的集合及元素间的相互关系和构造方法。元素之间的相互关系是数据的
逻辑结构数据元素及元素之间关系的存储称为
存储结构(或物理结构)。数据结构按照逻辑关系的不同分为
线性结构和
非线性结构两大类其中非线性结构又可分为树结构和图结构。 树结构是一种非常重要的非线性结构该结构中的一个数据元素可以有两个或两个以上的直接后继元素树可以用来描述客观世界中广泛存在的层次结构关系。 1、树的定义 树是 n(n≥0)个结点的有限集合当 n0 时称为空树。在任一非空树(n0)中有且仅有一个称为根的结点其余结点可分为 m(m≥0)个互不相交的有限子集 T1,T2,···,Tm其中每个 Ti 又都是一棵树并且称为根结点的子树。 树的定义是递归的它表明了树本身的固有特性也就是一棵树由若干棵子树构成而子树又由更小的子树构成。 该定义只给出了树的组成特点若从数据结构的逻辑关系角度来看树中元素之间有严格的层次关系。对于树中的某个结点它最多只和上一层的一个结点(即其双亲结点) 有直接的关系而与其下一层的多个结点(即其孩子结点)有直接关系如下图所示。通常凡是分等级的分类方案都可以用具有严格层次关系的树结构来描述。
2、树的基本概念 1双亲、孩子和兄弟。结点的子树的根称为该结点的孩子相应地该结点称为其子结点的双亲。具有相同双亲的结点互为兄弟。 2 结点的度。一个结点的子树的个数记为该结点的度。例如上图中A 的度为 3B的度为2C的度为 0D的度为 1。 3 叶子结点。叶子结点也称为终端结点指度为0的结点。例如上图 中E、F、C、G都是叶子结点。 4内部结点。度不为 0的结点也称为分支结点或非终端结点。除根结点以外分支结点也称为内部结点。例如上图中B、D 都是内部结点。 5结点的层次。根为第一层根的孩子为第二层依此类推若某结点在第 i 层则其孩子结点在第 i1 层。例如上图 中A 在第1层B、C、D在第2层E、F 和G在第3层。 6树的高度。一棵树的最大层数记为树的高度(或深度)。例如上图所示树的高度为 3。 7有序(无序)树。若将树中结点的各子树看成是从左到右具有次序的即不能交换则称该树为有序树否则称为无序树。
3、二叉树的定义 二叉树是 n(n≥0)个结点的有限集合它或者是空树(n0)或者是由一个根结点及两棵不相交的且分别称为左、右子树的二叉树所组成。可见二叉树同样具有递归性质。 需要特别注意的是尽管树和二叉树的概念之间有许多联系但它们是两个不同的概念。树和二叉树之间最主要的区别是二叉树中结点的子树要区分左子树和右子树即使在结点只有一棵子树的情况下也要明确指出该子树是左子树还是右子树。另外二叉树结点最大度为2而树中不限制结点的度数如下图所示。