JAVA哈夫曼树编码代码 java哈夫曼树的编码解码

我用java构建哈夫曼树的时候报了空指针,代码如下

System.out.println("please input the second letter!");

创新互联公司专注为客户提供全方位的互联网综合服务,包含不限于网站设计制作、网站设计、江城网络推广、小程序定制开发、江城网络营销、江城企业策划、江城品牌公关、搜索引擎seo、人物专访、企业宣传片、企业代运营等,从售前售中售后,我们都将竭诚为您服务,您的肯定,是我们最大的嘉奖;创新互联公司为所有大学生创业者提供江城建站搭建服务,24小时服务热线:028-86922220,官方网址:www.cdcxhl.com

char ch2 = tw.getChar();

if(ch2 == 'U') {System.out.println("Tuesday"); }

else if(ch2 == 'H') {System.out.println("Thursday"); }

哈夫曼编码与译码 java

class HaffmanNode //哈夫曼树的结点类

{

int weight; //权值

int parent,left,right; //父母结点和左右孩子下标

public HaffmanNode(int weight)

{

this.weight = weight;

this.parent=-1;

this.left=-1;

this.right=-1;

}

public HaffmanNode()

{

this(0);

}

public String toString()

{

return this.weight+", "+this.parent+", "+this.left+", "+this.right;

}

return code;

}

public static void main(String[] args)

{

int[] weight={5,29,7,8,14,23,3,11}; //指定权值集合

HaffmanTree htree = new HaffmanTree(weight);

System.out.println("哈夫曼树的结点数组:\n"+htree.toString());

String[] code = htree.haffmanCode();

System.out.println("哈夫曼编码:");

for (int i=0; icode.length; i++)

System.out.println(code[i]);

}

}

用java实现哈夫曼编码

只要自己再加个类Tree就可以了。

代码如下:

public class Tree {

double lChild, rChild, parent;

public Tree (double lChild, double rChild, double parent) {

this.lChild = lChild;

this.rChild = rChild;

this.parent = parent;

}

public double getLchild() {

return lChild;

}

public void setLchild(double lChild) {

this.lChild = lChild;

}

public double getRchild() {

return rChild;

}

public void setRchild(double rChild) {

this.rChild = rChild;

}

public double getParents() {

return parent;

}

public void setParents(double root) {

this.parent = root;

}

}

哈夫曼树编码的应用(Java语言)

1)编写函数实现选择parent为0且权值最小的两个根结点的算法

2)编写函数实现统计字符串中字符的种类以及各类字符的个数。

3)编写函数构造赫夫曼树。

4)编写函数实现由赫夫曼树求赫夫曼编码表。

5)编写函数实现将正文转换为相应的编码文件。

6)编写函数实现将编码文件进行译码。

7)编写主控函数,完成本实验的功能。


当前文章:JAVA哈夫曼树编码代码 java哈夫曼树的编码解码
文章出自:http://myzitong.com/article/dopejog.html