Problem 2080 --算法6-13:自顶向下的赫夫曼编码

2080: 算法6-13:自顶向下的赫夫曼编码

"
Time Limit $1$ 秒/Second(s) Memory Limit $512$ 兆字节/Megabyte(s)
提交总数 $3$ 正确数量 $3$
裁判形式 标准裁判/Standard Judge 我的状态 尚未尝试
难度 分类标签 数据结构
在本题中,我们将要讨论的是自顶向下的赫夫曼编码算法。从根出发,遍历整棵赫夫曼树从而求得各个叶子结点所表示的字符串。算法的关键部分可以表示如下:
在本题中,读入n个字符所对应的权值,生成赫夫曼编码,并依次输出计算出的每一个赫夫曼编码。

输入的第一行包含一个正整数n,表示共有n个字符需要编码。其中n不超过100。
第二行中有n个用空格隔开的正整数,分别表示n个字符的权值。
共n行,每行一个字符串,表示对应字符的赫夫曼编码。
8
5 29 7 8 14 23 3 11
0110
10
1110
1111
110
00
0111
010
在本题中,与上一题不同的是在求赫夫曼编码的过程中,使用了从根出发开始遍历整棵赫夫曼树的自顶向下的算法。通过这两道题目的联系,应该能够熟练的掌握赫夫曼树和赫夫曼编码的构造和使用方法了。

推荐代码 查看2080 所有题解 上传题解视频得图灵币

本题记录 用 户(点击查看用户) 运行号(点击购买题解) 时 间
算法最快[$0 $ms] 范晋豪@信息与计算科学142 152719 2017-11-16 15:10:16
内存最少[$0 $KB] sqrjy 607631 2020-07-17 17:34:49
第一AC 范晋豪@信息与计算科学142 152718 2017-11-16 15:10:16
第一挑战 范晋豪@信息与计算科学142 152718 2017-11-16 15:10:16

赛题来源/所属竞赛 数据结构高分笔记 数据结构高分笔记

竞赛编号 竞赛名称 竞赛时间 访问比赛