求解哈夫曼编码Java实现,用Java实现哈夫曼编码解决方法
当前位置:我的异常网» J2SE » 用Java实现哈夫曼编码解决方法
用Java实现哈夫曼编码解决方法
www.myexceptions.net 网友分享于:2013-01-08 浏览:13次
用Java实现哈夫曼编码
我有一个程序 但是运行结果不对 而且 也没有界面设计
请各位高手帮忙修改下 用JAVA实现 要有界面设计 谢谢
import java.io.*;
public class Huffumancode {
static float sum=0;
static String s;
public static void main(String[] args) {
// TODO Auto-generated method stub
new Huffumancode().run();
}
public void run()
{
try
{
FileReader fr=new FileReader("WordAndFreq.txt");
BufferedReader br=new BufferedReader(fr);
String s=null;
Node []A=new Node[24686];
A[0]=new Node();
A[0].freq=24685;
int i=1;
String []st=new String [2];
while((s=br.readLine())!=null)
{
st=s.split("\\s");
A[i]=new Node();
A[i].data=st[0];
A[i].freq=Integer.parseInt(st[1]);
i++;
}
System.out.println(A[24685].data +A[24685].freq);
heap_sort(A);
A[0].freq=24685;
build_huffmantree(A);
System.out.println("A[1]ede pin ldu"+A[1].freq);
FileWriter fw=new FileWriter("output.txt");
BufferedWriter bw=new BufferedWriter(fw);
preorder(A[1],bw);
bw.flush();
float average=sum/3330999;
String s1="the average length of the code is :".concat(Float.toString(average));
bw.write(s1);
bw.close();
System.out.println(average);
}
catch(Exception e)
{
System.out.println(e);
}
}
public void min_Heapify( Node []A, int i)
{
int l=2*i;
int r=2*i+1;
int small;
if(l<=A[0].freq&&A[l].freq
small=l;
else small=i;
if (r<=A[0].freq&&A[r].freq
求解哈夫曼编码Java实现,用Java实现哈夫曼编码解决方法相关推荐
- [ JAVA编程 ] double类型计算精度丢失问题及解决方法
[ JAVA编程 ] double类型计算精度丢失问题及解决方法 参考文章: (1)[ JAVA编程 ] double类型计算精度丢失问题及解决方法 (2)https://www.cnblogs.co ...
- tomcat运行时候出现java.net.BindException: Address already in use: JVM_Bind错误解决方法
tomcat运行时候出现java.net.BindException: Address already in use: JVM_Bind错误解决方法 参考文章: (1)tomcat运行时候出现java ...
- java.lang.IllegalArgumentException: Request header is too large的解决方法
java.lang.IllegalArgumentException: Request header is too large的解决方法 参考文章: (1)java.lang.IllegalArgum ...
- java应用 cpu占用过高问题分析及解决方法
主要介绍了java应用cpu占用过高问题分析及解决方法,具有一定参考价值,需要的朋友可以参考下. 使用jstack分析java程序cpu占用率过高的问题 1,使用jps查找出java进程的pid,如3 ...
- Eclipse Java Oxygen不能创建动态的web项目(解决方法)
Eclipse Java Oxygen不能创建动态的web项目(解决方法) 一.eclipse安装J2EE插件 一.eclipse安装J2EE插件 Oxygen版本Eclipse没有toamct开发工 ...
- IDEA java类文件左下角出现红色的J标识,解决方法
IDEA java类文件左下角出现红色的J标识,解决方法 解决方法: 引自:https://blog.csdn.net/lisulong1/article/details/81060385
- 关于java.lang.Exception:No tests found matching的一系列解决方法
关于java.lang.Exception:No tests found matching的一系列解决方法 run junit时出现 No test found matching 解决方法 run j ...
- 元空间不足java.lang.OutOfMemoryError: PermGen space 错误的原因及解决方法
出现 java.lang.OutOfMemoryError: PermGen space 错误的原因及解决方法 原因:堆内存的永久保存区内存分配不足(缺省默认为64M),导致内存溢出错误. 解决的方案 ...
- java 读utf-8 xml_〖JAVA经验〗JDom输出UTF-8的XML完美解决方法
完美的解决方法从辟谣开始: 1)JDOM是否生成UTF-8的文件与Format是否设置无关,只有输出其他字符编码才需要设置,见下面的注释. 2)JDOM输出UTF-8文件乱码的根本原因并非在JDOMA ...
- java getparameter 乱码_request.getParameter(“参数名”) 中文乱码解决方法
今天浏览项目时候,遇到一个问题,页面用${requestScope.参数名 }获取的值是乱码,然后搜了一下,最后说是编码的问题,附上查找的结果: 在Java 开发中,如果框架搭建的不完善或者初学者在学 ...
最新文章
- 网络编程学习笔记(RES_USE_INET6解析器选项)
- 人脸识别安全吗?调查称六成受访者认为技术有被滥用趋势
- 20145324 20145325 《信息安全系统设计基础》实验三
- mysql创建表示对属性进行说明_mysql基础
- python mysql 分号_Python中使用MySQL
- python3 readexcel pandas问题,使用python中的pandas中的read_excel函数将日期保留为字符串...
- 基于FPGA 的8b10b编解码电路前端电路设计
- docker -v 文件夹下没有数据_微服务就是Dubbo?并没有那么简单!微服务架构+Docker+k8s了解下...
- 解决CesiumForUnreal加入CesiumSunSky并调整设置后场景仍然纯白的问题
- 永磁同步电机的矢量控制策略(八)一一一仿真模型搭建与源代码
- 卷积神经网络超详细介绍
- Java生成指定范围的随机数
- ionic4自定义插件
- 智能设备主要有哪些特点
- Cognos 11.0快速开发指南 Ⅰ
- 保底掉落装备matlab,DNF团本减负计划 保底深渊票史诗装备删除
- 拓展延伸: 实现一个百亿级别的计算器
- 高校合同管理系统的设计与实现
- 编程之法—实现单词翻转
- 武汉理工大学计算机考研考纲,2020武汉理工大学计算机考研初试科目、参考书目、招生人数汇总...