完全二叉树总结点数与叶结点数关系分析

摘要:该文从两个角度分析了完全二叉树的总结点数与叶结点数之间的关系。其一,通过归纳找到总结点数的奇偶性与度为1的结点个数之间的关系,进而导出总结点数与叶结点数的关系;其二,由最后一个结点的父结点为倒数第一个分支结点的事实,找到总结点数与叶结点数的关系。这种多角度的分析有利于学生对此数据结构的深入理解。

关键词:数据结构;树;二叉树;完全二叉树

中***分类号:TP311文献标识码:A文章编号:1009-3044(2008)34-1569-02

Complete Binary Tree Nodes and Leaves Number Relation

LIU Song, LAN Ying

(College of Computer Science and Technology, Jilin Normal University, Siping 136000, China)

Abstract: This paper analyzed the relation between the complete binary tree nodes and the leaves number by two ways. First, it induced the relation between the odevity of complete binary tree nodes and the number of one degree nodes, then come to the conclusion. Second, through the fact that the parent of the last node is the last branch node, the paper got the same conclusion. Analyzing by two ways is helpful for students to understand complete binary tree.

Key words: Data Structure; Tree; Binary Tree; Complete Binary Tree

1 引言

1.1 树的定义及几个基本术语[1]

树(tree)是n(n≥0)个结点的有限集合T,如果T为空,则它是一棵空树(null tree),否则:

1) T中有一个特别标出的称为根(root)的结点;

2) 除根结点之外,T中其余结点被分成m个(m≥0)互不相交的非空集合T1,T2,…,Tm,其中每个集合本身又都是树。树T1,T2,…,Tm称为T的根的子树(subtree)。

几个基本术语:

度数(degree),一个结点的子树的个数。

树叶(leaf),没有子树的结点称为树叶或终端结点。

分支结点(branch node),非终端结点。

子女(child)或儿子(son),一个结点的子树之根是该结点的子女(或儿子)。

父母(parent),若结点s是结点p的儿子,则称p是s的父母或父亲。

1.2 二叉树的递归定义[1]

二叉树由结点的有限集合构成,这个有限集合或者为空集,或者由一个根节点及两棵不相交的分别称为这个根的左子树和右子树的二叉树构成。

1.3 完全二叉树的定义及性质

完全二叉树是一种特殊的二叉树,它除最后一层外每一层上的结点数均达到最大值,在最后一层只缺少右边的若干结点[2]。

如果对一棵有n个结点的完全二叉树的结点,按层次次序编号(每层从左至右),则对任一结点i(1≤i≤n),下述结论成立:

1) 若i=1,则结点i为二叉树的根节点;若i>1,则结点[i/2]为其父母节点。

2) 若2i>n,则结点i无左子女;否则结点2i为结点i的左子女。

3) 若2i+1>n,则结点i无右子女;否则结点2i+1为结点i的右子女。[1]

完全二叉树的总结点数N与叶结点数n0存在一定的关系,下面从两个角度加以分析:

2 问题分析

思路1:先用归纳的方法找出完全二叉树中度为1的结点个数n1与总结点数N的关系。下面给出结点数N=1,2,3,4…的完全二叉树,如***1。

通过观察不难发现度为1的结点个数n1=0,1,0,1…即:

当N为奇数时n1=0;当N为偶数时n1=1。 (1)

一般地,二叉树总结点数N可以表示为:

N=n0+n1+n2(ni表示度为i的结点个数)(2)

而N=分支数+1(因为对于一棵树,除根结点外,每个结点上方均有一个分支与之一一对应)。在二叉树中,分支数=0×n0+1×n1+2×n2,故

N=(0×n0+1×n1+2×n2)+1 (3)

由(2)(3)式,可得:

n0=n2+1 (4)

由(2)(4)式,可得:

N=n0+n1+(n0-1) (5)

综合(1)(5),得如下结论:

当N为奇数时,N奇=n0+0+(n0-1),n0=(N奇+1)/2;

当N为偶数时,N偶=n0+1+(n0-1),n0=N偶/2。

思路2:将完全二叉树的结点按层序(从上到下,从左到右)从1开始编号,则N个结点的完全二叉树中,最后一个结点的编号为N。根据完全二叉树的性质,编号为N的结点的父结点编号为[N/2]([N/2]表示的是N/2的整数部分,如***2所示。

叶结点个数为总结点数减去分支结点个数,而最后结点的父结点为最末一个分支结点,所以叶结点个数n0=N-[N/2]。

3 两种结论的一致性

上述两种思路所得结论形式上有差别,下面分两种情况讨论它们的一致性:

第一种情况,当N为奇数时,[N/2]=(N-1)/2。所以,由思路二所得结论n0=N-[N/2]就可以表示为n0=N-(N-1)/2=(N+1)/2;

第二种情况,当N为偶数时,[N/2]=N/2。所以,由思路二所得结论n0=N-[N/2]就可以表示为n0=N-N/2=N/2。

综上,思路2所得结论与思路一所得结论是一致的。

4 总结

根据上述两种思路得到本质上相同的两条结论:其一,n0=(N奇+1)/2或n0=N偶/2;其二,n0=N-[N/2]。通过如上分析可以加深对数据结构完全二叉树乃至二叉树、树的性质的理解与认识。这亦是计算机教学中一题多解的一个很好实例。

参考文献:

[1] 熊岳山,刘越. 数据结构与算法[M].北京:电子工业出版社,2007:144-148.

[2] 全国计算机等级考试教材编写组.全国计算机等级考试教程二级公共基础[M].北京:人民邮电出版社,2007:22-26.

完全二叉树总结点数与叶结点数关系分析

转载请注明出处学文网 » 完全二叉树总结点数与叶结点数关系分析

学习

我们都变了作文300字

阅读(23)

本文为您介绍我们都变了作文300字,内容包括我真的变了300字作文,我们校园变了300字作文。我想,我大概已经想明白了吧,那个时候,关于未来的梦想,关于我们的故事,都停留在了一个地方,他们做了很长时间的等待,可是直到最后,我们都没有发现,这样的停

学习

论WTO争端解决机制中的报复制度

阅读(70)

本文为您介绍论WTO争端解决机制中的报复制度,内容包括wto争端解决机制上诉机构成员任期,wto争端解决机制中的仲裁制度研究。【摘要】WTO报复制度相对于GATT报复制度而言有了长足的进步,但仍然存在着功能方面的诸多缺陷。针对这些缺陷,国内

学习

苦味食品不苦了,还有“苦”的功效吗

阅读(46)

本文为您介绍苦味食品不苦了,还有“苦”的功效吗,内容包括哪些食品是苦味的,苦的食品有哪些。俗话说:天热食“苦”,胜似进补。很多人虽然知道苦味食品有利于健康,但是,仍然“吃不了苦”?于是乎,焯水、盐水泡、加糖等方法纷纷登台。那么,哪些方

学习

祖冲之和圆周率

阅读(22)

本文为您介绍祖冲之和圆周率,内容包括祖冲之描述圆周率原文,祖冲之圆周率完整版。天文学真的很重要。在漫长的古代,从有文字记载开始就一直在研究天文,其中最重要的一件事情是制订历法和确定四季的变化,就是要确定一年有多少天、季节是如何

学习

有关时间换算的方法

阅读(25)

本文为您介绍有关时间换算的方法,内容包括关于时间的换算,不同时区时间换算方法。摘要:时间的换算,是很多学生学习地理时遇到的一个难点,尤其是高三面临高考,学生在进行时间的计算时总是错误不断。作者结合教学经验,谈谈关于时间计算中应该注

学习

我国水资源面临的问题及解决方法分析

阅读(559)

本文为您介绍我国水资源面临的问题及解决方法分析,内容包括世界水资源面临的问题,我国水资源面临的问题论文2500字。摘要:我国是一个人口大国,虽幅员辽阔,河流众多,但人均水资源占有量却不容乐观。时空以及地区分布极不均衡,导致各种洪涝灾害

学习

资产负债表

阅读(19)

本文为您介绍资产负债表,内容包括资产负债表全文解读,企业资产负债表。我有一位曾是会计师的朋友,现退休了在家带孙子。她讲,每个人的一生都是一张资产负债表。这话很有哲理。

学习

“与众不同”的人

阅读(22)

本文为您介绍“与众不同”的人,内容包括与众不同的人生全文,我们生来与众不同全文。冷酷的独行侠男人明坤今年32岁,未婚,一个人独居在一栋公寓里。他是一名自由职业者,从事翻译工作,完全不需要到公司上班,平时全靠电邮的方式向杂志社或广告公

学习

这就是美国

阅读(14)

本文为您介绍这就是美国,内容包括这就是美国,这就是美国英语怎么说。警卫并不盘问我,也无须我出示任何身份证件。作为曾经的“行内人”,我知道,他们也根本无权这样做。

学习

大道人为

阅读(30)

道教是中国传统文化的有机组成部分,是承道家哲学思想的基础而发展出的中国土生土长的宗教,其思想集中反映了中国的文化传统和民族特色,鲁迅先生曾指出:"中国根柢全在道教"。其美学思想不仅融汇进中国古典美学的洪流之中,而且其美学特色也在一

学习

知足与知不足

阅读(30)

本文为您介绍知足与知不足,内容包括知足与知不足,知足知不足有为有不为。我所熟悉的一位老友,40岁时几乎成了病秧子,整天头疼目眩,神情倦怠,典型一副病态。谁也没想到,如今他已年过花甲,可身体矫健,精神矍铄。从工作岗位上退下来后,依然笔耕不辍

学习

马文丽和她的创新团队

阅读(21)

“‘一花独放不是春,百花齐放春满园’,我觉得首先是要给我的团队营造一种和谐的学术氛围,他们才会有灵感和激情,然后还要有坚强的意志,最后才是有高的学术水平。前两者如果你没有,仅有高的学术水平,人却自私、没有胸怀,那你未必能成就事业……”

学习

我的心意作文300字

阅读(29)

本文为您介绍我的心意作文300字,内容包括心意的作文300字左右,我的心意作文。你所知道的,都不算是秘密。其实我一直都在呼你,只是你看不到而已。如果有一天,我知道的。你还在这里,自强不息。不要永远只做一个弱者。人多的地方,是非就多。可是

学习

协同:最牛分歧终端机

阅读(120)

本文为您介绍协同:最牛分歧终端机,内容包括分歧终端机的发明者是谁,分歧终端机女助理叫什么。在电影《非诚勿扰》中,葛优发明的“分歧终端机”,带着世界和平的使命,为葛大爷赢得了第一桶金。现实生活中,剪刀石头布解决不了分歧,输赢的结果,终

学习

最优二叉树的生成及应用

阅读(30)

本文为您介绍最优二叉树的生成及应用,内容包括最优二叉树建立与实现,最优二叉树的应用实例。摘要:衡量一个算法的优劣有许多因素,效率就是其中之一。而效率指的就是算法的执行时间。提高效率是软件开发必须注重的问题。对同一个问题往往有

学习

终端营销范文精选

阅读(23)

本文为您介绍终端营销范文精选,内容包括终端营销方案100条,三终端单品年度营销方案。终端营销篇1生活方式和消费行为的演变,引发了终端营销的急剧变化。而对新的营销环境,怎样转变终端营销策略,提高企业竞争力?

学习

瘦终端的应用和比较

阅读(395)

本文为您介绍瘦终端的应用和比较,内容包括零终端和瘦终端,瘦终端云终端。【摘要】随着云计算的发展和推广,终端发展方向仍不明确,虽然由于网络现状,胖终端在一段时间内还具备一定优势,但瘦终端由于其应用部署迅速、标准化程度高、运营维护工