(最小堆)哈夫曼树 ->求结点值与权值积的和
来源:互联网 发布:周生生网络旗舰店 编辑:程序博客网 时间:2024/06/06 03:18
#include<stdio.h>#include<string.h>#include<queue>#include<algorithm>using namespace std;priority_queue< int, vector<int>, greater<int> >Q;//greater改为less即为由大到小排列 int main(){int n,x,ans;while(scanf("%d",&n)!=EOF){ans=0;while(!Q.empty()) Q.pop();for(int i=0;i<n;i++){scanf("%d",&x);Q.push(x);}while(Q.size()>1){int a=Q.top();Q.pop();int b=Q.top(); Q.pop();ans+=a+b;Q.push(a+b);}printf("%d\n",ans);} return 0;}
1 0
- (最小堆)哈夫曼树 ->求结点值与权值积的和
- 最小的K个数 (冒泡和最小堆)
- 最小堆与最大堆的实现
- 最大堆与最小堆的实现
- 求二叉树中两结点的最小公共祖先
- 求二叉树中两结点的最小公共祖先
- Kruskal算法求最小生成树 (最小堆优化)
- Prime算法求最小生成树 (最小堆优化)
- java最小堆实现优先权队列和求最大的n个数问题
- 求二叉树中结点的最大值(所有结点的值都是正整数)
- 二叉树的三大遍历与求高度和结点
- 最小堆操作(元素的添加和删除)
- N个整数分成两堆SA,SB,使|SA-SB|的值最小,求最小值
- 利用堆求最大或最小的前k个数
- 求中位数问题:最小堆,最大堆
- 最大最小堆的插入与删除
- 最小堆与最大堆
- 最小堆与最大堆
- Nginx配置详解
- 关键路径过程详解、算法及其实现
- 看懂论文的机器学习基本知识(二)
- 微信小程序开发—(三)选项卡
- Linux基础学习笔记之root用户与普通用户
- (最小堆)哈夫曼树 ->求结点值与权值积的和
- 看懂论文的机器学习基本知识(三)--假正例、假负例、ROC曲线
- 【linux】安装yum源或者yum安装软件时候报错
- NVR、DVR的区别
- Python 排序函数sorted
- zookeeper集群扩容/下线节点实践
- 看懂论文的机器学习基本知识(四)--bootstrap
- [POJ] 2251 Dungeon Master
- CSS(2)css文件样式