首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读下列函数说明和C代码,将应填入(n)处的字句写在对应栏内。 [说明] HufTman树又称最优二叉树,是一类带权路径长度最短的树,在编码中应用比较广泛。 构造最优二叉树的Huffman算法如下: ①根据给定的n各权值{W
阅读下列函数说明和C代码,将应填入(n)处的字句写在对应栏内。 [说明] HufTman树又称最优二叉树,是一类带权路径长度最短的树,在编码中应用比较广泛。 构造最优二叉树的Huffman算法如下: ①根据给定的n各权值{W
admin
2010-12-17
64
问题
阅读下列函数说明和C代码,将应填入(n)处的字句写在对应栏内。
[说明]
HufTman树又称最优二叉树,是一类带权路径长度最短的树,在编码中应用比较广泛。
构造最优二叉树的Huffman算法如下:
①根据给定的n各权值{W1,w2,…,wn)构成n棵二叉树的集合F={T1,T2,…,Tn},其中每棵树Ti中只有一个带权为wi的根节点,其左右子树均空。
②在F中选取两棵根节点的权值较小的树作为左右子树,构造一棵新的二叉树,置新构造二叉树的根节点的权值为其左右予树根节点的权值之和。
③从F中删除这两棵树,同时将新得到的二叉树加入到F中。
重复②③,直到F中只剩一棵树为止。
函数中使用的预定义符号如下:
#define INT MAX 10000
#define ENCODING LENGTH 1000
typedef enum(none,left_child,right_child) Which;
/*标记是左孩子还足右孩子*/
typedef char Elemtype;
typedef struct TNode{//Huffman树节点
Elemtype letter;
int
weight; //权值
int parent; //父节点
Which sigh;
char *code; //节点对应编码
}HTNode,*HuffmanTree;
int n;
char coding[50];//储存代码
[函数]
void Select(HuffmanTree HT,int end,int *sl,int *s2)
/*在0~END之间,找出最小和次小的两个节点序号,返吲S1、S2*/
{
int i;
int min 1=INT_MAX;
int min 2=INT_MAX;
for(i=0;i<=end;i++){/*找最小的节点序号*/
if(( (1) )&&(HT
.weight<minl)){
*s1=i;
min 1=HT
.weight;
}
}
for(i=0;i<=end;i++){/*找次小节点的序号*/
if((HT
.parent==0)&&( (2) )
&&(min 2>HT
.weight)){
*s2=i;
min 2=HT
.weight;
}
}
}
void HuffmanTreeCreat(HuffmanTree&HT)/*建立HUFFMAN树*/
{
int i;
int m=2*n-1;
int s1,s2;
for(i=n;i<m;i++){
Select( (3) );
HT[s1].parent=i;
HT[s2].parent=i;
HT[s1].sigh=left child;
HT[s2].sigh=right child;
HT
.weight=(4);
}
}
void HuffmanTreeEncoding(char sen[],HuffmanTree HT)
{ /*将句子进行编码*/
int i=0;
int j;
while(sen
!=’\0’){
for(j=0;j<n;j++){
if(HT[j].letter==sen
)(/*字母吻合则用代码取代*/
strcat(coding, (5) );
break;
}
}
i++;
if (Sen [1]==32) i++;
}
printf("\n%s",coding);
}
(2)
选项
答案
*s1 !=i
解析
转载请注明原文地址:https://kaotiyun.com/show/rqDZ777K
本试题收录于:
软件设计师下午应用技术考试题库软考中级分类
0
软件设计师下午应用技术考试
软考中级
相关试题推荐
某算术表达式用二叉树表示如下,该算术表达式的中缀式为________________,其后缀式为________________。
以下关于软件项目工作量估算的叙述中,不正确的是________________。
下面关于软件测试的说法,(48)是错误的。
堆是一种数据结构,分为大顶堆和小顶堆两种类型。大(小)顶堆要求父元素大于等于(小于等于)其左右孩子元素。则________________是一个小顶堆结构。堆结构用二叉树表示,则适宜的二叉树类型为________________。对于10个结点的小顶堆,其
软件系统的安全性是信息安全的一个重要组成部分,针对程序和数据的安全性测试与评估是软件安全性测试的重要内容,()不属于安全性测试与评估的基本内容。
某开发小组欲开发一个大型软件系统,需求变化较小,此时最不适宜采用()过程模型。
假设系统采用PV操作实现进程同步与互斥。若n个进程共享两台打印机,那么信号量S的取值范围为()。
以下关于信息和数据的描述中,错误的是________________。
在计算机系统中常用的输入/输出控制方式有无条件传送、中断、程序查询和DMA等。其中,采用______方式时,不需要CPU控制数据的传输过程。
下图是①设计模式的类图,该设计模式的目的是②,图中,Abstraction和RefinedAbstraction之间是③关系,Abstraction和Implementor之间是④关系。①处应填入?
随机试题
________是个人在审美活动和审美评价中所表现出来的主观爱好和倾向。
手术后肺不张的防治,哪项是错误的【】
下列哪项不是阳黄和阴黄的鉴别要点
男,12岁。1个月前无明显诱因出现左胫骨近端肿瘤,逐渐加重,皮肤表面静脉怒张,皮温增高。X线片见左胫骨近端呈溶骨性破坏,伴有骨膜日光放射状表现。最适宜的治疗方法是
某高速公路长隧道;其设计水位的洪水频率标准取为()。
造价工程师对承包方所提出的变更价款进行审核和处理时,下列说法正确的有()。
某混凝土重力坝工程包括左岸非溢流坝段、溢流坝段、右岸非溢流坝段、右岸坝肩混凝土刺墙段。最大坝高43m,坝顶全长322m,共17个坝段。该工程采用明渠导流施工。坝址以上流域面积610.5km2,属于亚热带暖湿气候区,雨量充沛,湿润温和,平均气温比较高,需要采
2001年11月我国正式加入WTO,我国政府在人世谈判中对资本市场的逐步开放做出了实质性承诺,包括()。
与上一年相比,2002年哪类农产品的价格变化幅度最小( )。根据表格,以下说法正确的一项是( )。
Theprincipalpurposeofthispassageisto______.Theauthor’sresponsetothosewhoarguethedeathpenaltyforalldegrees
最新回复
(
0
)