Huffuman树
问题描述
  Huffman树在编码中有着广泛的应用。在这里,我们只关心Huffman树的构造过程。
  给出一列数{pi}={p0, p1, …, pn-1},用这列数构造Huffman树的过程如下:
  1. 找到{pi}中最小的两个数,设为pa和pb,将pa和pb从{pi}中删除掉,然后将它们的和加入到{pi}中。这个过程的费用记为pa + pb。
  2. 重复步骤1,直到{pi}中只剩下一个数。
  在上面的操作过程中,把所有的费用相加,就得到了构造Huffman树的总费用。
  本题任务:对于给定的一个数列,现在请你求出用该数列构造Huffman树的总费用。

例如,对于数列{pi}={5, 3, 8, 2, 9},Huffman树的构造过程如下:
  1. 找到{5, 3, 8, 2, 9}中最小的两个数,分别是2和3,从{pi}中删除它们并将和5加入,得到{5, 8, 9, 5},费用为5。
  2. 找到{5, 8, 9, 5}中最小的两个数,分别是5和5,从{pi}中删除它们并将和10加入,得到{8, 9, 10},费用为10。
  3. 找到{8, 9, 10}中最小的两个数,分别是8和9,从{pi}中删除它们并将和17加入,得到{10, 17},费用为17。
  4. 找到{10, 17}中最小的两个数,分别是10和17,从{pi}中删除它们并将和27加入,得到{27},费用为27。
  5. 现在,数列中只剩下一个数27,构造过程结束,总费用为5+10+17+

python【蓝桥杯vip练习题库】—Huffuman树相关推荐

  1. python【蓝桥杯vip练习题库】BASIC-5查找整数

    蓝桥杯这些题库的样例真的不咋地! 我打开输入样例发现,所有样例数组的最后面都多了一个空格,我不知为何! 用c++写的话应该不会有这种困扰,但是你有python如果不去掉末尾的空格的话,直接split, ...

  2. python【蓝桥杯vip练习题库】BASIC-28Huffuman树(贪心 Huffuman)

    这道题输入的数组右边依旧有个空格!md,这破样例对python真坑. 试题 基础练习 Huffuman树 资源限制 时间限制:1.0s 内存限制:512.0MB 问题描述 Huffman树在编码中有着 ...

  3. python【蓝桥杯vip练习题库】ALGO-90出现次数最多的整数(sys)

    试题 算法训练 出现次数最多的整数 资源限制 时间限制:1.0s 内存限制:512.0MB 问题描述 编写一个程序,读入一组整数,这组整数是按照从小到大的顺序排列的,它们的个数N也是由用户输入的,最 ...

  4. python【蓝桥杯vip练习题库】ADV-233 队列操作

    VIP到期了,今天开始暂时不更新了. 试题 算法提高 队列操作 资源限制 时间限制:1.0s 内存限制:256.0MB 问题描述 队列操作题.根据输入的操作命令,操作队列(1)入队.(2)出队并输出 ...

  5. python【蓝桥杯vip练习题库】ADV-350珠心算测验

    试题 算法提高 珠心算测验 资源限制 时间限制:1.0s 内存限制:256.0MB python中的for循环和c中的不一样,不如c灵活,但是可以用while实现. 既: i=0 while i< ...

  6. python【蓝桥杯vip练习题库】ADV-236林丹大战李宗伟

    试题 算法提高 林丹大战李宗伟 资源限制 时间限制:1.0s 内存限制:256.0MB 问题描述 我们用0表示林丹,1表示李宗伟. 输入数据中每行会给出一个0或者1,表示对应选手得1分. 当一方得分达 ...

  7. python【蓝桥杯vip练习题库】ADV-272 change(思维)

    试题 算法提高 change 资源限制 时间限制:1.0s 内存限制:256.0MB 问题描述 数组A中共有n个元素,初始全为0.你可以对数组进行两种操作:1.将数组中的一个元素加1:2.将数组中所有 ...

  8. python【蓝桥杯vip练习题库】ADV-120 6-17复数四则运算

    试题 算法提高 6-17复数四则运算 资源限制 时间限制:1.0s 内存限制:512.0MB 设计复数库,实现基本的复数加减乘除运算. 输入时只需分别键入实部和虚部,以空格分割,两个复数之间用运算符分 ...

  9. python【蓝桥杯vip练习题库】ADV-188排列数

    试题 算法提高 排列数 资源限制 时间限制:1.0s 内存限制:256.0MB 问题描述 0.1.2三个数字的全排列有六种,按照字母序排列如下: 012.021.102.120.201.210 输入一 ...

最新文章

  1. (转) Twisted :第十八部分 Deferreds 全貌
  2. python 查看字符编码,[Python]判断系统编码和字符编码chardet
  3. 安装后改中文界面_非常详尽图文KVM安装CentOS
  4. 【SGU】SGU每日练1·Little shop of flowers【DP】
  5. Java基础-序列化和反序列化
  6. 【报告分享】2021年中国新经济企业500强发展研究报告.pdf(附下载链接)
  7. SCOM管理包模板的介绍及使用
  8. 在没有原始数据的情况下, 我把列线图转换成了网页计算器
  9. AI人工智能、机器学习 面试题(2022最新版)
  10. word文档中向下的箭头是什么,怎么去掉
  11. jQuery Validate插件验证
  12. 大数据笔记--scala(第一篇)
  13. 公众号网课查题-掘光者题库系统
  14. Android 自定义实现日历
  15. docker ss-pannel_如何构建Docker镜像
  16. luogu2657-Windy数题解--数位DP
  17. html打造动画【系列4】- 哆啦a梦
  18. android架桥游戏,抖音搭桥小能手
  19. 应急响应之windows日志分析工具logparser使用
  20. 2021年全球与中国小方坯连铸机行业市场规模及发展前景分析

热门文章

  1. MobileNet 笔记
  2. meanpool maxpool 前向和反向传播
  3. opencv dnn 人脸 年龄
  4. C++ socket传输结构体
  5. VOC2007基本信息
  6. 使用python线性规划学习总结
  7. Ubuntu 16.04 安装 miniconda
  8. 梯度下降(BGD)、随机梯度下降(SGD)、Mini-batch Gradient Descent、带Mini-batch的SGD
  9. 运动检测(前景检测)之——ViBe
  10. linux内存转换成功,linux系统内存转换成硬盘使用