首页 > 编程知识 正文

谭浩强c语言入门,c语言教材哪本好一些

时间:2023-05-04 11:26:37 阅读:62402 作者:2585

由于此地板涉嫌违规,因此它将折叠在系统中以隐藏此地板并显示此地板

电文的符号集d及各文字出现的概率f如下。

D={a,b,c,d,e,f,g,h}{字符数n=8

f={ 5,29,7,8,14,23,3,11 } (

编写执行以下功能的程序:

1 .关于f的Huffman数

2 .求出d各文字的Huffman代码进行打印。

#包含

#包含

#包含

#define n 8 //设定权重数

#define m

2*n-1 //H树的节点数

类型德夫

定义结构//节点

{

int wi; //节点权重

查尔斯

数据; //该节点的data值

int parent,Lchild,Rchild; //父母和左右孩子的指针

(}huffm; //H树节点描述符

语音识别

构建huffmtree(huffmht[m1] )//h树的算法

{

int i,j,p1,p2; int w,s1,s2,max;

for(I=1; i=m; I//初始化

{ HT[i].wi=0;

ht [ I ].parent=ht [ I ].lchild=ht [ I ].rchild=0;

}

for(I=1; i=n; I )

扫描(' % d ',w ); //读取权重

for(I=n1;

i=m; I )//进行n-1循环,形成n-1个新节点,形成h树

{

p1=p2=0; //p1、p2是选择的权重最小的根节点编号

s1=s2=max; //max为机器能表示的最大整数

for(j=1; j=i-1; 从j//ht[1]~ht[I-1]中选择权重最小两个根节点

if(ht[j].parent==0) ) )。

if(ht[j].wi

{ s2=s1; p2=p1; //j节点作为最初权重最小的根节点

s1=HT[j].wi; p1=j; }

elseif(ht[j].wi

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。