单选题

1. 对N(N≥2)个权值均不相同的字符构造哈夫曼树。下列关于该哈夫曼树的叙述中,错误的是:

A 树中一定没有度为1的结点.

B.树中两个权值最小的结点一定是兄弟结点

C.树中任一非叶结点的权值一定不小于下一层任一结点的权值

D.该树一定是一棵完全二叉树

解析:Huffman树是带权路径最小的扩充二叉树,不一定是完全二叉树

2.设一段文本中包含字符{a, b, c, d, e},其出现频率相应为{3, 2, 5, 1, 1}。则经过哈夫曼编码后,文本所占字节数为:

A.40

B.36

C.25

D.12

3.设一段文本中包含4个对象{a,b,c,d},其出现次数相应为{4,2,5,1},则该段文本的哈夫曼编码比采用等长方式的编码节省了多少位数?

A.0

B.2

C.4

D.5

4.由分别带权为9、2、5、7的四个叶子结点构成一棵哈夫曼树,该树的带权路径长度为:

A.23

B.37

C.44

D.46

5.已知字符集{ a, b, c, d, e, f, g, h }。若各字符的哈夫曼编码依次是 0100, 10, 0000, 0101, 001, 011, 11, 0001,则编码序列 0100011001001011110101 的译码结果是:

A.acgabfh

B.adbagbb

C.afbeagd

D.afeefgd

6.对 n 个互不相同的符号进行哈夫曼编码。若生成的哈夫曼树共有 115 个结点,则 n 的值是:

A.56

B.57

C.58

D.60

7.若某二叉树有 5 个叶结点,其权值分别为 10、12、16、21、30,则其最小的带权路径长度(WPL)是:

A.89

B.200

C.208

D.289

PTA Huffman树及其应用题相关推荐

  1. huffman树和huffman编码

    不知道为什么,我写的代码都是又臭又长. 直接上代码: #include <iostream> #include <cstdarg> using namespace std; c ...

  2. 数据结构源码笔记(C语言):Huffman树字符编码

    #include <stdio.h> #include<string.h> #define N 10 /*待编码字符的个数,即树中叶结点的最大个数*/ #define M 2* ...

  3. 数据结构实验三:Huffman树及Huffman编码的算法实现

    Exp03 Huffman树及Huffman编码的算法实现 Author: Maskros 实验目的 了解该树的应用实例,熟悉掌握Huffman树的构造方法及Huffman编码的应用, 了解Huffm ...

  4. 数据结构-Huffman树

    Huffman树的编码和解码 思想:1.统计字符串每个字母出现的个数2.依次取出两个最小的字母进行合并(分别作为左右子节点,另左子节点<右子节点的值),使用他们值之和作为根节点的值,并将根节点加 ...

  5. 深夜爆肝:万字长文3种语言实现Huffman树(强烈建议三连)

    文章目录 一.C语言能干大事 1. C语言下Huffman树的计算过程分析 2. C语言下Huffman树的编程 二.C#语言也不赖 1. C#下Huffman类的设计 2. C#中界面设计 3. 建 ...

  6. Huffman编码(Huffman树)

    [0]README 0.1) 本文总结于 数据结构与算法分析, 源代码均为原创, 旨在 理解 "Huffman编码(Huffman树)" 的idea 并用源代码加以实现: 0.2) ...

  7. Huffman树进行编码和译码

    //编码 #include<iostream> #include<cstdio> #include<cstring> #include<cstdlib> ...

  8. huffman树_笃学不倦|c语言构造哈夫曼树哈夫曼编码

    艾薇巴蒂!许久不见甚是想念,想必这"涨姿势"的时刻大家已经期待许久了!今天我们要共同学习的是c语言构造哈夫曼树-哈夫曼编码 构造哈夫曼树 首先,我们需要了解哈夫曼树是什么: 相关知 ...

  9. Huffman树压缩和解压文件

    Huffman树 Huffman树:以静态三叉链的存储结构建立的二叉树 Huffman树是一个带权路径长度最小的二叉树,又称最优二叉树 Huffman树的构造方法 ①将每个结点都看作是一个树: ②选择 ...

  10. python构建huffman树_python:哈夫曼树,PythonHuffuman

    Python:Huffuman树 题目 问题描述 Huffman树在编码中有着广泛的应用.在这里,我们只关心Huffman树的构造过程. 给出一列数{pi}={p0, p1, -, pn-1},用这列 ...

最新文章

  1. C# Null 赋值
  2. 【Python】spyder编译器调试时添点断点的方法
  3. 项目由于装运点不同交货拆分解决方案
  4. oracle12154错误 Linux,关于“EXP-00056: ORACLE error 12154 encountered”的解决方法
  5. UNIX操作-命令快捷键
  6. dcase_util教程(二)——各单元介绍
  7. 显微镜自动聚焦原理是什么_什么是共聚焦显微镜?你了解过共聚焦显微镜吗?...
  8. 设计模式——抽象工厂
  9. C++ - C++ signal的使用
  10. 用Java实现非阻塞通信
  11. MyApps接口引擎,打破跨系统间的壁垒
  12. Android List的混排 随机排序
  13. 发光二极管pcb封装图画法_【干货】LED封装形式分类解析
  14. 华为模拟器eNSP免费下载
  15. bilibili执行董事陈睿:我在进B站之前是一个正常人
  16. 帝国cms灵动标签调用标题图片没有图片时让其显示默认图片的方法
  17. 神经网络的权重初始化,神经网络的权值和阈值
  18. 文件的后缀名怎样重命名,重命名为大写字母
  19. SD-WAN基本介绍
  20. [转]普通软件项目开发过程规范(五)—— 总结

热门文章

  1. 黑盒测试 之 因果图法
  2. a标签实现下载图片功能
  3. vue项目中如何下载excel表格模板
  4. 帝国时代2哪个服务器稳定,20年后的新生,经典永不落幕——《帝国时代2:决定版》体验报告...
  5. 唐诗欣赏静夜思用html设计,静夜思唐诗赏析
  6. (二十三)用几何布朗运动模拟股价走势
  7. 【ARM基础概念:ARMv7架构,ARM(ARM7、ARM9)、Cortex-M4、M7等内核、MCU、MPU、SOC,STM32的一些概念】
  8. 有赞百亿级日志系统架构设计
  9. Spring中常用注解及其作用(二)
  10. 以讹传讹的小故事大道理