二叉树--Huffman编码树--优先队列解法
超链接:Huffman编码树
- 总时间限制:
- 1000ms
- 内存限制:
- 65535kB
- 描述
-
构造一个具有n个外部节点的扩充二叉树,每个外部节点Ki有一个Wi对应,作为该外部节点的权。使得这个扩充二叉树的叶节点带权外部路径长度总和最小:
Min( W1 * L1 + W2 * L2 + W3 * L3 + … + Wn * Ln)
Wi:每个节点的权值。
Li:根节点到第i个外部叶子节点的距离。
编程计算最小外部路径长度总和。
- 输入
-
第一行输入一个整数t,代表测试数据的组数。
对于每组测试数据,第一行输入一个整数n,外部节点的个数。第二行输入n个整数,代表各个外部节点的权值。
2<=N<=100 - 输出
- 输出最小外部路径长度总和。
- 样例输入
-
2 3 1 2 3 4 1 1 3 5
- 样例输出
-
9 17
分析:直接利用优先队列水一下。。。
#include <cstdio>
#include <iostream>
#include <queue>
#include <cstring>
using namespace std;int t,n;
priority_queue<int,vector<int>,greater<int>> q;int main()
{cin >> t;while(t--) {cin >> n;while(n--) {int a;cin >> a;q.push(a);}int sum = 0;while(!q.empty()) {int a = q.top();q.pop();if(!q.empty()){int b = q.top();q.pop();sum += a+b;q.push(a+b);}}cout << sum << endl;}return 0;
}
二叉树--Huffman编码树--优先队列解法相关推荐
- DS二叉树——Huffman编码与解码(不含代码框架)
题目描述 1.问题描述 给定n个字符及其对应的权值,构造Huffman树,并进行huffman编码和译(解)码. 构造Huffman树时,要求左子树根的权值小于.等于右子树根的权值. 进行Huffma ...
- 二叉树应用-Huffman编码树(数据结构基础 第6周)
问题描述 分析 做了,在POJ上能AC,但是在coursera上一直提示Compile Error. 没找着问题,呃,,, 源码 #include<iostream> using name ...
- Huffman编码树 求WPL
描述 构造一个具有n个外部节点的扩充二叉树,每个外部节点Ki有一个Wi对应,作为该外部节点的权.使得这个扩充二叉树的叶节点带权外部路径长度总和最小: Min( W1 * L1 + W2 * L2 + ...
- 数据结构二叉树之Huffman编码
二叉编码树以及Huffman编码 abstract: 在初学二叉树的时候,我们就提出了二叉树的一个基本应用:编码树.那么,就编码树我们究竟该如何实现呢?下面我们来探讨这个问题. 一.PFC编码以及 ...
- Huffman编码(Huffman树)
[0]README 0.1) 本文总结于 数据结构与算法分析, 源代码均为原创, 旨在 理解 "Huffman编码(Huffman树)" 的idea 并用源代码加以实现: 0.2) ...
- 数据结构实验三:Huffman树及Huffman编码的算法实现
Exp03 Huffman树及Huffman编码的算法实现 Author: Maskros 实验目的 了解该树的应用实例,熟悉掌握Huffman树的构造方法及Huffman编码的应用, 了解Huffm ...
- 3. 数据结构--二叉树 BST AVL树 Huffman
数据结构–二叉树 KEY:(不敢相信没有堆-) 二叉树的定义及其主要特征 ☑️ 二叉树的顺序存储结构和链式存储结构实现 二叉树的遍历及应用 二叉排序(查找.检索)树 (BST) 平衡的二叉检索树- A ...
- Huffman树与Huffman编码
Huffman树与Huffman编码 问题描述 已知某系统在通信联络中只可能出现6种字符,其使用频度如下表所示: 根据Huffman编码原理,为6种字符设计一种Huffman编码方案. 算法分析与设计 ...
- huffman树和huffman编码
不知道为什么,我写的代码都是又臭又长. 直接上代码: #include <iostream> #include <cstdarg> using namespace std; c ...
最新文章
- C++入门教程,全套C++基础教程(已更新完毕)
- R语言实战应用精讲50篇(十四)-R语言构建层次分析模型
- 2.3.1 进程同步 进程互斥
- cad画流程图的插件_流程图控件FlowChart.NET使用教程:安排组件的使用
- gem install sass 本地配置和淘宝源无效的解决办法
- Wordpress SEO robots
- 95-136-043-源码-Operator-LegacyKeyedCoProcessOperator
- 重点人员动态管控系统开发方案,情指勤一体化平台建设
- 腾讯云服务器被攻击了怎么办?
- 详解Unity中的生命周期函数
- 深度学习之facenet人脸识别网络介绍
- 2011年新的个人纳税情况
- 远程连接腾讯云MySQL数据库
- 安灯(Andon)系统,生产车间的得力助手
- js获取url中的主域名
- 国产芯片时代来袭 SIT1028是一款内部集成高压LDO稳压源的本地互联网络(LIN)物理层收发器 TJA 1028T
- Tushare介绍、安装及使用教程
- 安卓桌面壁纸_效仿安卓?iOS14或将支持“快应用” 功能 可玩性更强了
- 周末交友好运气:请找中国张名记
- 下载的mp3音频怎么转换wav格式