展开全部

兄弟,你把如下第28行的count++;注释掉,一切问题都可以解决!

自己先琢磨为什么,不懂的再问!import java.util.Arrays;

import java.util.Scanner;

public class a2 {

public static int n, count = 0;

public static int he[] = new int[n + 1];// 预定义权值数组32313133353236313431303231363533e58685e5aeb931333335306162

public static void Huffman(int[] a) {

Arrays.sort(a);// 排序

// System.out.println(a.length);

if (a.length == 1)// 如果长度是1结束递归

{

he[count++] = a[0];

return;

}

if (a.length == 2)// 如果长度是2结束递归

{

he[count++] = a[0] + a[1];

return;

}

else // 长度大于2

{

int b[] = new int[a.length - 1];// 定义一个新数组,用于保存a

he[count++] = a[0] + a[1];

b[0] = he[--count];// 新数组的第一个元素为当前数组的最小的两个数之和

for (int i = 1; i

{

b[i] = a[i + 1];// 赋值除第一个元素之外的值

}

//   count++;

Huffman(b);// 递归

}

}

public static void main(String[] args) {

Scanner sc = new Scanner(System.in);

n = Integer.parseInt(sc.nextLine());

String s[] = sc.nextLine().trim().split(" ");// 输入n个数

int d[] = new int[n];

for (int i = 0; i

d[i] = Integer.parseInt(s[i]);// 将String转化为int的数组

Huffman(d);// 递归调用

int sum = 0;

for (int i = 0; i

sum += he[i];// 求和

System.out.println(sum);

}

}

java哈夫曼树权值计算_JAVA 哈夫曼树权值求和(代码找错)相关推荐

  1. java中 byte 取值范围_java中为什么byte的取值范围是-128到+127

    概念:java中用补码表示二进制数,补码的最高位是符号位,最高位为"0"表示正数,最高位为"1"表示负数. 正数补码为其本身: 负数补码为其绝对值各位取反加1: ...

  2. java 程序找错_java代码找错

    展开全部 你试一下这个行不行,输入的时候是数字e69da5e6ba903231313335323631343130323136353331333335313138,数字,数字;数字,数字.....的格 ...

  3. 【数据结构-N】哈夫曼树带权路径计算

    那个闪闪发光的人 会在某一天的雨后,不经意地出现在你的迷茫路口. 目录: 哈夫曼树的构建 带权路径长度计算 >>构建 哈夫曼树,又称最优二叉树,是一类带权路径长度最短的树. 构建哈夫曼树的 ...

  4. raptor阶乘相加流程图_从键盘输入正整数n的值,计算n的阶乘,例如:输入5,输出120。请据此画出程序流程图。 (上传Raptor软件流程图和运行结果的截图)_学小易找答案...

    [单选题]对现值指数法来说,当原始投资额现值相等的时候,实质上是( ). [单选题]某公司打算投资一个项目,预计该项目需固定资产投资400万元,预计可使用5年.项目预计流动资产需用额为160万元,流动 ...

  5. JAVA实现二叉树带权路径长度和_哈夫曼树的构建与最小带权路径长度

    注意:哈夫曼树并不唯一,但带权路径长度一定是相同的. 二叉树:每个结点最多含有两个子树的树称为二叉树. 定理:对于具有n个叶子结点的哈夫曼树,共有2n-1个结点. 哈夫曼树介绍 1哈夫曼树的定义 哈夫 ...

  6. wpl计算方法_【数据结构】树的应用-计算哈夫曼树的WPL值

    计算哈夫曼树的WPL值 根据给定的n个权值(非负值),计算所构造哈夫曼树的WPL值. 基本要求: (1)根据给定的数据,建立哈夫曼树: (2)输出每个叶子结点的带权路径长度: (3)输出哈夫曼树的WP ...

  7. 计算WPL·哈夫曼树构建及带权路径长计算

    计算WPL·哈夫曼树构建及带权路径长计算 题目信息 输入 输出 测试样例 解答 想法 题目信息 Huffman编码是通信系统中常用的一种不等长编码,它的特点是:能够使编码之后的电文长度最短. 输入 第 ...

  8. 给定结点权值,求哈夫曼树的带权路径长度和

    1.哈夫曼树概念 一棵树中,从任意一个结点到达另一个结点的通路叫做路径,该路径包含的边的个数称为路径长度,每个结点带有的表示某种意义的值成为权值.从根结点到叶子结点的路径长度乘以叶子节点权值,得到的值 ...

  9. 哈夫曼编码和带权路径计算

    哈夫曼树是一种带权路径长度最短的二叉树,也称为最优二叉树.下面用一幅图来说明. 它们的带权路径长度分别为: 图a: WPL=5*2+7*2+2*2+13*2=54 图b: WPL=5*3+2*3+7* ...

最新文章

  1. dataframe两个表合并_史上代码最少的工作表拆分,仅需5行,不可思议
  2. 设计模式 -(5)装饰模式(结构型)
  3. Wannafly挑战赛22游记
  4. SAP WebIDE一个和Destination相关的问题 - OData下拉菜单里的Destination从哪里来的
  5. tar打包的时候忽略一些目录
  6. CSS 滤镜学习小结
  7. python 中的 __name__
  8. 面向项目(六)—— 错误(异常)信息的书写
  9. 虹科案例|基于SOLA光源的高通量Spike展示平台加速新冠病毒疫苗研制
  10. bulma css 中文,Bulma CSS - CSS类
  11. qq邮箱中的发件服务器是什么格式,qq邮箱的SMTP服务器是什么
  12. 02.Android崩溃Crash库之App崩溃分析
  13. A系统单点登录B系统
  14. HTML(HBuilder)作业题4- 隔行换色(jquery)
  15. Lync Server 2010 呼叫寄存配置和启用
  16. 通过一个场景实例 了解前端处理大数据的无限可能
  17. 2023NHOI数三角形题解
  18. 不用登陆密码也能进路由器,适用于TP、磊科、腾达
  19. [蓝桥杯][算法提高VIP]阮小二买彩票
  20. 马云正式卸任!发表“退休”感言!

热门文章

  1. 图灵云服务器,别和一种语言厮守终生:为工作正确选择编程语言
  2. OpenCV-Python图像梯度 Sobel算子
  3. imx6 ar8031 千兆网卡不能用
  4. WSL2环境下交叉编译QT工程,开发板成功运行(全过程详解)
  5. 数学之美:信息的度量和作用 KL散度 自信息 熵 相对熵 KL divergence entropy
  6. OpenCV学习6-图像水平翻转、垂直翻转
  7. 电子技术中的耦合概念
  8. XJOI 7970 优秀数
  9. 真正的3D桌面!以后的Windows会是这样的?
  10. 一、Camunda工作流的学习路线(开局一把刀,学完后青铜变王者)