有许多的逻辑关系并不是简单的线性关系,在实际场景中,常常存在着一对多,甚至是多对多的情况,其中树和图就是典型的非线性数据结构。树是n(n>=0)个节点的有限集。当n = 0时,称为空树。在任意一个非空树中,有如下特点:
1、有且仅有一个特定的称为根的节点
2、当n>1时,其余节点可以分为m(m>0)个互不相交的有限集,每一个集合又是一个树,并称为根的子树。
二叉树是一种特殊的树,顾名思义这种树的每个节点最多有两个孩子节点。注意这里最多是两个,也可能只有一个,或者没有孩子节点,二叉树的两个孩子节点,一个被称为左孩子节点,一个被称为右孩子节点。 二叉树还有两种特殊形式,一个叫做满二叉树,一个叫做完全二叉树。
一个二叉树的所有非叶子节点都存在左右孩子,并且所有叶子节点都在同一层级上,那么这个树就是满二叉树。
对一个有n个节点的二叉树,按层级顺序编号,则所有节点的编号从1到n。如果这个树所有节点和同样深度的满二叉树的编号为从1到n的顺序相同,则这个二叉树为完全二叉树。
二叉树也是数据结构的一种逻辑结构,可以用链表和数组来实现。
二叉树包含许多特殊的形式,每一种形式都有自己的作用,但其最主要的应用还在于查找操作和维持相对顺序这两个方面。
后续还会对二叉树有更详细的描述,请大家等我的更新。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值