首页 > 代码库 > 数据结构(六)树
数据结构(六)树
定义
结点分类
结点的关系
森林
m棵互不相交的树的集合
树与线性表结构对比
存储结构
双亲表示法
优先记录每个节点的双亲(双亲是必有的,除了根节点),再针对特殊的需要,增加子节点或兄弟节点,重点在于寻找双亲节点,时间复杂度为O(1)
该方法结合了数组和链表,以数组为基础存储结构,每个元素再用链表的方式记录其双亲节点
孩子表示法
以这棵树为例
把每个结点的孩子结点排列起来(一般是从左往右),以单链表作为存储结构,则n个结点就拥有n个孩子链表,把n个单链表的头指针组成一个数组
用该方法得到的数据结构如下图所示
孩子兄弟表示法
定义
任意一棵树,它的结点的第一个孩子如果存在就是唯一的,它的又兄弟如果存在也是唯一的。因此,我们设置两个指针,分别指向该结点的第一个孩子和此节点的兄弟
一棵树的结构可以用下图来表示
这种情况下,就催生出了著名的二叉树
数据结构(六)树
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。