2021-05-20

数据结构——树

参考资料 青岛大学王卓老师的《数据结构》课程

5.1树和二叉树的的定义

树 是n个结点的有限集合

若n=0 则成为空树 

若n>0 则有一个根节点和若干子树

子树也有自己的根节点和它的子树(所以树的定义其实是一种递归定义)

5.1.2 树的基本术语

结点:数据元素以及指向子树的分支  

根节点 :非空树中无前驱结点的结点

结点的度 :结点拥有的子树数(即分叉数)

树的度 :树内各结点的度的最大值

叶子结点:度为零的结点也称终端节点

分支节点:度≠0的结点

内部结点:除根节点外的分支节点全称为内部节点

结点之间的关系:

孩子和双亲:结点的前驱称为双亲结点 后继称为孩子结点

兄弟结点:有同一个双亲的结点(同爸同妈)

堂兄弟结点 :在同一层深度下 除兄弟结点外的结点(联想家谱)

结点的祖先:从一节点到根节点经过的所有结点都是它的祖先

树的深度:树中结点的最大层次(家谱中的几代)

有序数 :左右有次序的树 反之称为无序树

森林:是m颗互不相交的树的集合    (砍去树的根节点就是森林)

ps:博主这里本来应该画图的 但鼠标还没到 呜呜呜 下次一定补上

5.1.3 二叉树的定义

定义:二叉树是n个结点的有限集 

特点 :

1.每个节点最多有两个孩子

2.子树有左右之分 次序不能颠倒

3.二叉树左右可以为空

4.二叉树不是特殊的树 因为二叉树是有序树

5.2 案例引入

数据压缩问题

二叉树求解表达式的值

5.3 二叉树的性质和储存结构

性质一    在第i层上至多有2^(i-1)个结点

性质二    深度为k的二叉树至多有(2^k-1)个结点(等比求和) 最少k个结点

性质三    对任何一颗二叉树 叶子结点数=度为2的结点+1

满二叉树:一颗深度为k且有2^k-1个结点称为满二叉树(每层都满)(叶子结点全部在最底层)

完全二叉树:一颗深度为k的二叉树从上到下从左到右位置与满二叉树前n号元素相同

性质四  具有n个结点的完全二叉树的深度为log2n+1

性质五 任意节点i 双亲编号i/2 左孩子编号2i 右孩子编号2*i+1

二叉树的存储结构

二叉树的顺序存储:按满二叉树的结点层次编号 依次存放二叉树的数据元素(数组)

二叉树的链式结构:二叉法 三叉法

对于二叉树的基本概念先总结到这 后续还会更新哈夫曼树 谢谢阅读

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值