二级公共基础知识_二级公共基础知识之树与二叉树

2034ae9d4d6448bf88038bec359e4e0a.gif

今年疫情肆虐,来势汹汹,传播速度快,扩散范围广,全社会面临着巨大的挑战和压力,我们被困在家中,为社会献出自己的小小力量。因此今年三月份的计算机等级考试推迟,不过该来的还是会来的,不知道你现在准备得怎么样了?是否已经信心满满了呢?好了,废话不多说,今天小编为你带来计算机二级公共基础知识之树与二叉树,希望会对你有所帮助。

首先,我们先明确一些概念

1、什么是树?

树是一种简单的非线性结构,直观地来看,树是以分支关系定义的层次结构。由于它呈现与自然树类似的结构形式,所以称它为树。如图所示

2101a8bea8f6fe97dd8bfb0ee489c8e6.png

2、父节点(根)

一个节点只有一个前件的称为父节点。没有前件的节点只有一个,称为树的根节点,如上图中的A即为树的根。

3、子节点和叶子节点

一个节点可以有多个后件,其称为该节点的子节点。没有后件的节点称为叶子节点,如上图中的E、F、G即为叶子节点。

4、度

一个节点所拥有的后件树称为该节点的度,其中所有节点中最大的度称为树的度。如上图中根节点A的度为3,节点B的度为2,节点D的度为1,节点E、F、C、G的度为0,所以该数的度为3.

5、深度

定义一棵树的根节点所在的层次为1,其他节点所在层次等于他的父节点所在层次加一。树的最大层次称为树的深度。如上图根节点A在第1层,节点B、C、D在第2层,节点E、F、G在第3层,所以此树的深度为3。

6、子树

在树中,以某节点的一个子节点为根构成的树称为该节点的一颗子树。如上图中节点A有3棵子树,它们分别以B、C、D为根节点。其中以C为根节点的子树实际上只有根节点一个节点,树的叶子节点度为0,所以没有子树。

7、二叉树

二叉树是一个有限的节点集合,该集合或者为空,或者由一个根节点及其两颗互不相交的左右二叉子树所组成。其中又有满二叉树(所有节点都有两个子节点,叶子节点除外)和完全二叉树(最后一层只缺少右边的若干节点)两种特殊形态的二叉树。有它们的定义可知,满二叉树一定是完全二叉树,而完全二叉树不一定是满二叉树。

了解了相关概念后,我们再来看看二叉树有哪些性质吧

性质一:在二叉树的第N层上,最多有2的n-1次方(N≥1)个节点。

性质二:深度为N的二叉树中,最多有2的N次方-1个节点。

性质三:对任何一颗二叉树,度为0的节点(即叶子节点)总比度为2的节点多1个。

性质四:具有n个节点的二叉树,其深度至少为[log2n]+1,其中[log2n]表示取log2n的整数部分。

最后带你们看看二叉树的遍历

二叉树的遍历是指不重复地访问二叉树中的所有节点。可以分为前序遍历、中序遍历、后序遍历3种。

前序遍历中“前”的含义是访问根节点在访问左节点和右节点之前。即先访问根节点,然后遍历左子树,最后遍历右子树。

中序遍历中“中”的含义是访问根节点在访问左子树和访问右子树两者之间。即首先遍历左子树,然后访问根节点,最后遍历右子树。并且在遍历左子树和右子树时,仍然首先遍历左子树,然后访问根节点,最后遍历右子树。

后序遍历中“后”的含义是访问根节点在访问左子树和访问右子树之后。即首先遍历左子树,然后遍历右子树,最后访问根节点;并且在遍历左子树和右子树时,仍然首先遍历左子树,然后遍历右子树,最后访问根节点。2、父节点(根)

一个节点只有一个前件的称为父节点。没有前件的节点只有一个,称为树的根节点,如上图中的A即为树的根。

3、子节点和叶子节点

一个节点可以有多个后件,其称为该节点的子节点。没有后件的节点称为叶子节点,如上图中的E、F、G即为叶子节点。

4、度

一个节点所拥有的后件树称为该节点的度,其中所有节点中最大的度称为树的度。如上图中根节点A的度为3,节点B的度为2,节点D的度为1,节点E、F、C、G的度为0,所以该数的度为3.

5、深度

定义一棵树的根节点所在的层次为1,其他节点所在层次等于他的父节点所在层次加一。树的最大层次称为树的深度。如上图根节点A在第1层,节点B、C、D在第2层,节点E、F、G在第3层,所以此树的深度为3。

6、子树

在树中,以某节点的一个子节点为根构成的树称为该节点的一颗子树。如上图中节点A有3棵子树,它们分别以B、C、D为根节点。其中以C为根节点的子树实际上只有根节点一个节点,树的叶子节点度为0,所以没有子树。

7、二叉树

二叉树是一个有限的节点集合,该集合或者为空,或者由一个根节点及其两颗互不相交的左右二叉子树所组成。其中又有满二叉树(所有节点都有两个子节点,叶子节点除外)和完全二叉树(最后一层只缺少右边的若干节点)两种特殊形态的二叉树。有它们的定义可知,满二叉树一定是完全二叉树,而完全二叉树不一定是满二叉树。

了解了相关概念后,我们再来看看二叉树有哪些性质吧

性质一:在二叉树的第N层上,最多有2的n-1次方(N≥1)个节点。

性质二:深度为N的二叉树中,最多有2的N次方-1个节点。

性质三:对任何一颗二叉树,度为0的节点(即叶子节点)总比度为2的节点多1个。

性质四:具有n个节点的二叉树,其深度至少为[log2n]+1,其中[log2n]表示取log2n的整数部分。

最后带你们看看二叉树的遍历

二叉树的遍历是指不重复地访问二叉树中的所有节点。可以分为前序遍历、中序遍历、后序遍历3种。

前序遍历中“前”的含义是访问根节点在访问左节点和右节点之前。即先访问根节点,然后遍历左子树,最后遍历右子树。

中序遍历中“中”的含义是访问根节点在访问左子树和访问右子树两者之间。即首先遍历左子树,然后访问根节点,最后遍历右子树。并且在遍历左子树和右子树时,仍然首先遍历左子树,然后访问根节点,最后遍历右子树。

后序遍历中“后”的含义是访问根节点在访问左子树和访问右子树之后。即首先遍历左子树,然后遍历右子树,最后访问根节点;并且在遍历左子树和右子树时,仍然首先遍历左子树,然后遍历右子树,最后访问根节点。

文案|程丽燕

排版|程丽燕

审核|王梦雪

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值