求哈夫曼树的结点个数不能是偶数数

数据结构,设哈夫曼树有199个结点,则该哈夫曼树有多少个叶子结点

上传说明: 每张图片大小不超过5M,格式为jpg、bmp、png

问题分类正确的分类能够获得更专业的回答

  简单地说,数据结构是计算机组织数据和存储数据的方式;即数据结构是指一组相互之间存在一种或多种特定关系的数据的组织方式和它们在计算机内的存储方式,以及定义在该组数据上的一组操作。 

1、计算机解决一个具体问题时,一般需要经过以下几个步骤:

    在每个步骤中,数据的表现形式都不相同,实际问题中的数据称为原始数据。在数学模型中,需要把原始数据按照某种方式组织起来,以便很好地体现数据之间的关系,数据及数据的组织方式称为数据的逻辑结构。为了能用计算机加工处理,逻辑结构还必须转换为能被计算机存储的存储结构。

2、瑞士计算机科学家Niklaus Wirth曾提出一个著名公式: 算法+数据结构=程序;简洁地描述了算法、数据结构和程序之间关系。 数据结构是相互之间存在一种或多种特定关系的数据元素的集合。它包括数据的逻辑结构、数据的存储结构和数据的基本运算。

1、数据的逻辑结构是指数据元素之间的逻辑关系。所谓逻辑关系是指数据元素之间的关联方式或“邻接关系”。

2、数据元素之间的关系,有四类基本的逻辑结构:

(1)集合中任意两个结点之间都没有邻接关系,组织形式松散。

(2)线性结构中结点按逻辑关系依次排列形成一条“链”,结点之间一个一个依次相邻接。

(3)树形结构具有分支、层次特性,其形态像自然界中的树,上层的结点可以和下层多个结点相邻接,但下层结点只能和上层的一个结点相邻接。

(4)图结构最复杂,其中任何两个结点都可以相邻接。

1、数据的逻辑结构在计算机中的实现称为数据的存储结构(或物理结构)。一般情况下,一个存储结构包括以下两个部分:

 (1)存储数据元素;(2)数据元素之间的关联方式。

2、数据元素的存储(映像方法)

  用二进制位(bit)的位串表示数据元素。通常称这种位串为节点(node)。当数据元素由若干个数据项组成时,位串中与各个数据项对应的子位串称为数据域(data field)。因此,节点是数据元素的机内表示(或机内映像)。

3、表示数据元素之间的关联方式主要有顺序存储方式和链式存储方式

   (1)顺序存储方式是指所有存储结点存放在一个连续的存储区里。利用结点在存储器中的相对位置来表示数据元素之间的逻辑关系。

   (2)链式存储方式是指每个存储结点除了含有一个数据元素外,还包含指针,每个指针指向一个与本结点有逻辑关系的结点,用指针表示数据元素之间的逻辑关系。除了上述两种存储方式之外,还有索引存储方式和散列存储方式

4、一种逻辑结构可以采用一种或几种存储方式来表达数据元素之间的逻辑关系,相应的存储结构称为给定逻辑结构的存储实现或存储映像。

  运算是指在某种逻辑结构上施加的操作,即对逻辑结构的加工。一般来说,在每个逻辑结构上,都定义了一组基本运算,这些运算包括:建立、查找、读取、插入和删除等。

  注:线性表、栈和队列中的元素具有相同的逻辑结构(即线性结构),但有不同的运算集,它们是不同的数据结构。

   线性表是一种线性结构,它是由 n(n≥0)个数据元素组成的有穷序列,数据元素又称结点。线性表中结点具有一对一的关系,如果结点数不为零,则除起始结点没有直接前驱外,其他每个结点有且仅有一个直接前驱;除终端结点没有直接后继外,其他每个结点有且仅有一个直接后继。

  将表中的结点依次存放在计算机内存中一组连续的存储单元中,数据元素在线性表中的邻接关系决定它们在存储空间中的存储位置,即逻辑结构中相邻的结点其存储位置也相邻。用顺序存储实现的线性表称为顺序表,一般使用数组来表示顺序表

 算法描述如下:

{ //将元素 x 插入到顺序表 L 的第 i 个数据元素之前

我要回帖

更多关于 哈夫曼树的结点个数不能是偶数 的文章

 

随机推荐