位置: IT常识 - 正文

树结构(树结构ADT知识点思维导图)

编辑:rootadmin
树结构 1.1 树的定义 树(Tree):个节点构成的有限集合。当n = 0时,称为空树。对于任一棵非空树(n>0),它具备以下性质: 树中有一个称为"根(Root)"的特殊节点,用r表示;其余节点可分为m(m>0)个互不相交的有限集、,...,,其中每个集合本身又是一棵树,称为原来树的子树(Sub ... 树结构1.1 树的定义

推荐整理分享树结构(树结构ADT知识点思维导图),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:树结构ADT知识点思维导图,树结构属于什么结构?,树结构的定义,树结构部首,树结构图,树结构图,树结构图,树结构属于什么结构?,内容如对您有帮助,希望把文章链接给更多的朋友!

树(Tree):个节点构成的有限集合。当n = 0时,称为空树。对于任一棵非空树(n>0),它具备以下性质:

树中有一个称为"根(Root)"的特殊节点,用r表示;其余节点可分为m(m>0)个互不相交的有限集、,...,,其中每个集合本身又是一棵树,称为原来树的子树(SubTree)。如下图:

1.2 树结构的术语

树结构中有很多概念术语,在深入讨论树结构之前,我们先来介绍下跟树结构有关的术语。为了方便理解记忆,结合具体的一棵树结构来进行介绍,树结构如下:

节点:树中存储的项。上图中的A-L都是节点。

根节点:树中最顶端的节点。在树结构中只有它没有父节点。上图中的A为根节点。

节点的度:一个节点含有的子树的个数。根节点A的度为3;子节点C的度为1。

树的度:树中最大节点度。树中最大节点度为3(根节点A和子节点B的度均为3),所以树的度为3。

子节点(孩子节点):紧邻一个给定的节点之下,并且直接与给定节点相连的一个节点。一个节点可以有多个子节点。上图中B-L都是子节点。

父节点(双亲节点):紧邻一个给定节点之上,且直接与给定节点相连的一个节点。一个节点只能有一个父节点。上图中A、B、C、D、H都是父节点。

兄弟节点:拥有共同父节点的子节点。上图中B、C、D是兄弟节点,E、F、G也是兄弟节点。

叶子节点:没有子节点的节点。或者说度为0的节点。上图中标绿的几个节点都是叶子节点。

内部节点:至少有一个子节点的节点。B、C、D、H都是内部节点。

边/分支:将一个父节点连接到其子节点的线。上图中的线就是边也称为分支。

后代(子孙):以某节点为根的子树中任一节点都称为该节点的后代。E、F、G是节点B的后代;H、K、L是节点C的后代,B-L的所有节点都是根节点A的后代。

树结构(树结构ADT知识点思维导图)

祖先:从根到该节点所经分支上的所有节点。节点D是I、J的祖先;根节点A是所有节点的祖先。

路径:连接一个节点与其后代节点边的序列。A-B-E和A-C-H-K都可以称作一条路径。

路径长度:路径中边的数目。路径A-B-E的路径长度为2;路径A-C-H-K的路径长度为3。

节点的层次:从根节点定义,根节点为第1层,根节点的子节点为第2层,依次类推。节点的层在上图中已经标出。

深度(高度):叶子节点所在的最大层次。上图中树的深度为4。

森林:m棵不相交的树的集合。分别以B、C、D为根节点的子树组成的集合可以看做一个森林。

以上就是树结构的一些术语。

1.3 树的分类

树结构可以分为两大类:有序树和无序树。树中任意节点间没有顺序关系,那么称其为无序树,也称自由树。相对的,树中的任意节点有顺序关系,称其为有序树。在有序树中,子节点被视为按照从左到右的顺序排列,最左边的子节点称为第一个子节点,最右边的子节点称为最后一个子节点。我们研究的最多的树结构就是有序树。而有序树中最具代表性的树结构就是二叉树。

二叉树就是度不超过2的有序树结构。 二叉树中的每个节点最多只能有两个分支,分别称为左子树和右子树。

根据二叉树的定义,会有如下两种极端的二叉树:

根据二叉树的形状,有以下几种常见的二叉树:

平衡二叉树:当且仅当任意节点的两棵子树的高度差不大于1的二叉树。

完全二叉树:除了最后一层外,其他层的节点数目都达到最大的二叉树。完全二叉树是平衡二叉树的一个特例,完全二叉树最后一层上的节点都是从左到右填充的。对于一颗k层的完全二叉树,其节点总数最少的情况是:最后一层只有一个节点,此时节点数目为:;其节点总数最多的情况是:最后一层节点数目达到最大,即满二叉树,此时节点数目为:。对于节点数目为k的完全二叉树,其深度为:

满二叉树:所有层的节点数目均达到最大的二叉树。满二叉树是完全二叉树的一个特例。对于深度为k的满二叉树,其节点数目是:;对于节点数目为k的满二叉树,其深度为:。

几种二叉树的结构图如下:

关于二叉树还有一个性质:二叉树中叶子节点数为(因为叶子节点的度为0,所以下标为0),度为2的节点数为 ,那么有: n0 = n2 + 1

解析:关于上面等式关系的求解我们可以这样考虑。假设二叉树的总节点数为,因为二叉树的节点度只有0、1、2三种情况,假设节点度为0、1、2的节点数分别为:n0、n1和n2。那么有n = n0 + n1 + n2。二叉树中节点度为1的节点有1条边连接到其子节点、节点度为2的节点有2条边连接到其子节点,假设二叉树有E条边,那么E = n1 + 2n2。而我们知道,在二叉树中节点总数和边的数目有这样的关系:n = E +1 = n1 + 2n2 + 1。联立加粗的两个等式,容易得出 n0 = n2 + 1。

本文链接地址:https://www.jiuchutong.com/zhishi/310958.html 转载请保留说明!

上一篇:织梦dedecms栏目添加自定义字段,增加栏目上传缩略图功能(织梦专题页模板)

下一篇:phpcms如何添加管理员(phpcms添加内容)

  • ipad阴阳屏鉴别方法(ipad阴阳屏)(ipadpro阴阳屏鉴定方法)

    ipad阴阳屏鉴别方法(ipad阴阳屏)(ipadpro阴阳屏鉴定方法)

  • 苹果13promax是刘海屏吗(iphone13promax是5g手机吗)

    苹果13promax是刘海屏吗(iphone13promax是5g手机吗)

  • 为什么有的视频投屏有画面没声音(为什么有的视频不能投屏)

    为什么有的视频投屏有画面没声音(为什么有的视频不能投屏)

  • qq找回密码过于频繁(找回qq密码操作过于频繁是怎么回事)

    qq找回密码过于频繁(找回qq密码操作过于频繁是怎么回事)

  • 做表格怎么套公式求和(做表格怎么套公式)

    做表格怎么套公式求和(做表格怎么套公式)

  • 关闭通话功能保留上网(关闭通话功能保留数据流量)

    关闭通话功能保留上网(关闭通话功能保留数据流量)

  • 华为p40放大多少倍(华为p40最多放大多少倍)

    华为p40放大多少倍(华为p40最多放大多少倍)

  • 三星s20和S10对比(三星s20+对比三星s10+)

    三星s20和S10对比(三星s20+对比三星s10+)

  • 微程序控制器中,机器指令与微指令的关系(微程序控制器中,以下什么顺序控制方式)

    微程序控制器中,机器指令与微指令的关系(微程序控制器中,以下什么顺序控制方式)

  • word强调文字颜色6在哪(word强调文字颜色6)

    word强调文字颜色6在哪(word强调文字颜色6)

  • 微信一条横线什么意思(微信里面一条横线)

    微信一条横线什么意思(微信里面一条横线)

  • 硬盘分区之后能还原吗(硬盘分区后还能恢复数据吗)

    硬盘分区之后能还原吗(硬盘分区后还能恢复数据吗)

  • 华为手机自动拨号怎么解决(华为手机自动拨打紧急电话怎么办)

    华为手机自动拨号怎么解决(华为手机自动拨打紧急电话怎么办)

  • 红米k20pro nfc怎么用(红米k20proNFC怎么弄)

    红米k20pro nfc怎么用(红米k20proNFC怎么弄)

  • iphonex待机耗电快怎么回事(苹果x正常待机耗电多少)

    iphonex待机耗电快怎么回事(苹果x正常待机耗电多少)

  • volte4g是什么手机(volte4g智能手机)

    volte4g是什么手机(volte4g智能手机)

  • 爱奇艺掉线什么原因(爱奇艺老是掉线)

    爱奇艺掉线什么原因(爱奇艺老是掉线)

  • 伏特电池是根据什么动物发明的(伏特电池的原理)

    伏特电池是根据什么动物发明的(伏特电池的原理)

  • 微信被加入黑名单还能发过去消息吗(微信被加入黑名单怎么破解)

    微信被加入黑名单还能发过去消息吗(微信被加入黑名单怎么破解)

  • 如何关闭华为移动服务(如何关闭华为移除应用)

    如何关闭华为移动服务(如何关闭华为移除应用)

  • 苹果7诊断在哪里(苹果7诊断与用量在哪)

    苹果7诊断在哪里(苹果7诊断与用量在哪)

  • 4k摄像头是多少像素(4k的摄像头)

    4k摄像头是多少像素(4k的摄像头)

  • 腾讯now怎么注销账号(腾讯now实名认证之后怎么取消)

    腾讯now怎么注销账号(腾讯now实名认证之后怎么取消)

  • 怎么取消苹果订阅自动续费(怎么取消苹果订单)

    怎么取消苹果订阅自动续费(怎么取消苹果订单)

  • hphmon06.exe是什么进程 作用是什么 hphmon06进程查询(hpcfont.dll)

    hphmon06.exe是什么进程 作用是什么 hphmon06进程查询(hpcfont.dll)

  • 音乐制作:Ableton Live 11 Suite Mac(音乐制作人评刀郎新专辑)

    音乐制作:Ableton Live 11 Suite Mac(音乐制作人评刀郎新专辑)

  • 【笔记】【JavaScript】【jQuery】菜鸟编程学习笔记(javascrapt)

    【笔记】【JavaScript】【jQuery】菜鸟编程学习笔记(javascrapt)

  • python字典如何遍历数据(python字典操作 遍历)

    python字典如何遍历数据(python字典操作 遍历)

  • 报完增值税就要清卡吗
  • 公司购买股票如何做账
  • 以件数为印花税计税依据的有哪些
  • 当月的进项当月可以认证吗
  • 支付的工会经费现金流量项目是什么?
  • 城建税 申报表
  • 利润总额和未分配利润的公式
  • 出纳人员去银行提取现金时应填写现金缴款单
  • 股东个人向公司借款会计分录
  • 房地产公司支付工程款账务处理
  • 汽车销售公司办公室周末上班吗知乎
  • 季度交的企业所得税怎么做账
  • 银行利息的现金流量项目是什么
  • 公司付款给个人一定要取得发票吗
  • 税收分类编码如何填写
  • 小微企业月销售额不超过15万
  • 增值税的税负率的计算公式
  • 小规模纳税人金额
  • 长期待摊费用原值怎么填
  • 购货方收到代垫运费的发票怎么做会计分录?
  • 微信收款需要纳税多少
  • 企业房产税怎么申报缴纳流程
  • 财务中暂估入账会计分录
  • 计入固定资产成本的费用
  • 安代驾给我发短信
  • 跟银行借入长期存款
  • 低值易耗品费用账务处理
  • 赊销商品属于什么信用
  • 发票怎么保管不会坏
  • 小米路由器青春版r1cl参数
  • php随机ua
  • 二手房交易需缴哪些税
  • 预加载的目的是什么
  • 不动产司法拍卖税费
  • php解析接口
  • ai引领技术变革是什么
  • php 编码
  • php框架基础教程
  • 稳岗补贴钱给谁
  • 什么是财务报表分析,方法有哪些
  • 会计中报销费用是什么会计科目
  • 生产型企业可以买进就卖出吗
  • linux中ubuntu安装教程
  • 存款利息收入一般是多少
  • win7怎么配置
  • 非正常损失的进项税额可以转出吗
  • 小规模企业增值税税收优惠政策2023
  • 债券投资属于什么
  • 经营活动现金流量净额是什么意思
  • 估价入帐能跨年吗
  • 应交税金应交增值税
  • 预收账款开票怎么做账
  • 工程款的税费怎么计算
  • 固定资产清理不及时
  • 公司购买银行理财产品账务处理
  • 开发无形资产的支出
  • 价税合计怎么求税额
  • 发票超过定额了怎么处理
  • 党委费用支出需要什么票据
  • 往来支付是现金结算吗
  • 销售收入指开票金额吗
  • 其他应付款坏账处理说明
  • 视同销售的几种情况
  • 预付差旅费属于什么类型
  • 积分中的换元怎么使用
  • 公司的应付票据
  • mysql -u -p -s
  • Win10怎么关闭任务栏搜索
  • cortanawin10在哪
  • win10怎么办
  • centos ssh升级
  • win8.1安全模式怎么进入
  • eclipse怎么创建安卓
  • node.js使用教程
  • javascript面向对象编程指南
  • python whiletrue循环语句
  • jquery设置iframe的src
  • 西安市电子税务局
  • ca证书登录不了网厅怎么办
  • 统计表主要业务内容
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设