云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > 数据结构课程设计哈夫曼编译器

数据结构课程设计哈夫曼编译器

  • 62 次阅读
  • 3 次下载
  • 2025/6/6 4:41:56

tree[i].rchild=-1; tree[i].weight=0; }

for(i=0;i

. . .

tree[i].ch=ch[i]; tree[i].weight=sum[i]; }

for(i=n;i

p1=0;p2=0;

small1=10000;small2=100; for(j=0;j

small2=small1;

small1= tree[j].weight; p2=p1; p1=j; } else

if(tree[j].weight

small2=tree[j].weight; p2=j; }

tree[p1].parent=i;

tree[p2].parent=i; tree[i].lchild=p1; tree[i].rchild=p2;

tree[i].weight=tree[p1].weight+tree[p2].weight; }

int c,p; //编码部分

Code=new Codetype[n]; for(i=0;i

. . Code[i]=new Codetype(); Code[i].bits=new Character[n];

.

}

for(i=0;i

Code[i].start=n; Code[i].ch=tree[i].ch; c=i;

p=tree[i].parent; while(p!=0) {

Code[i].start--; if(tree[p].lchild==c)

Code[i].bits[Code[i].start]='0'; else

Code[i].bits[Code[i].start]='1'; c=p;

p=tree[p].parent; }

Code[i]=Code[i];

}

System.out.println(\每种字符的编码结果如下:\ for(i=0;i

System.out.print(Code[i].ch+\ for(int r=Code[i].start;r

System.out.print(Code[i].bits[r]);

System.out.println(\ }

FileWriter fw=new FileWriter(\编码文件.txt\ for(int k=0;k

for(int l=0;l

if(a[k]==Code[l].ch){

for(int h=Code[l].start;h

String bm=Code[l].bits[h].toString();

fw.write(bm);

}

}}

fw.close();

File file1=new File(\编码文件.txt\

FileReader fr1=new FileReader(file1);

char[] b=new char[(int)file1.length()];//将编码后的文件读入

数组b[]

fr1.read(b); fr1.close(); int t=b.length;

p=m-1; //根节点

FileWriter fw1=new FileWriter(\译码文件.txt\ for(int q=0;q

if(b[q]=='0')

. . .

}

p=tree[p].lchild; else

p=tree[p].rchild; if(tree[p].lchild==-1)

{

String ym=tree[p].ch.toString(); fw1.write(ym); p=m-1;

}

}fw1.close();

}

Huffmantree类

public class Huffmantree {

public int weight;

public int parent,lchild,rchild; public Character ch; public Huffmantree(){ }}

weight=0; parent=0; lchild=-1; rchild=-1; ch='0';

codetype类

public class Codetype { }}

public Character bits[]; public int start; public char ch; public Codetype(){

start=0; ch=0;

结果和注释分别见测试结果和程序模块功能部分。

. . .

搜索更多关于: 数据结构课程设计哈夫曼编译器 的文档
  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

tree[i].rchild=-1; tree[i].weight=0; } for(i=0;i

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com