5.2二叉树的概念

本文介绍了二叉树的基本概念,包括完全二叉树的性质,以及在二叉排序树中查找关键字的过程。此外,讨论了二叉树的存储结构,强调了在非完全二叉树中顺序存储的浪费,并提出了节点无子孩子时设置为空指针的优化方法。文章还指出,胖胖的二叉树在搜索操作中更有效率。
摘要由CSDN通过智能技术生成

一、二叉树定义及性质在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
当完全二叉树有13个节点时,【n/2】向下取整,也会满足在这里插入图片描述
在这里插入图片描述
二叉排序树,比如要找关键字为60的序号,60>19,所以可以直接找到右子树上,60>50,再找右子树,而60<66,这次找到左子树。
在这里插入图片描述

在这里插入图片描述
胖胖的、丰满的树进行搜索的时候,更加方便。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

二、二叉树的存储结构

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
①对于普通二叉树,判断i是否有左孩子,要用isEmpty函数判断
在这里插入图片描述
对于一个非完全二叉树的二叉树,如果使用顺序存储会造成大量空间的浪费。实际应用当中很少使用顺序存储。
在这里插入图片描述
①如果一个节点没有做孩子的话,可以把对应的指针设为Null
②对于一个有n个节点的二叉树,总共有2n个指针域,除了根节点外,其他的每一个节点都会连有一个指针,也就是会有n-1个节点的头上会连有一个指针的(也就是非空指针个数等于除去根节点的节点个数),综上,共有2n-(n-1)=n+1个指向Null的指针域
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值