简单的代码。。

时间复杂度为O((n + m)logn)

大部分情况下还是跑不过kruskal的,慎用。

 1 #include <cstdio>
 2 #include <queue>
 3 #include <cstring>
 4 #define heap pair<int, int>
 5
 6 using namespace std;
 7
 8 int n, m, cnt, ans;
 9 int head[5001], to[400001], next[400001], val[400001];
10 bool vis[5001];
11 priority_queue <heap, vector <heap>, greater <heap> > q;
12
13 inline void add(int x, int y, int z)
14 {
15     to[cnt] = y;
16     val[cnt] = z;
17     next[cnt] = head[x];
18     head[x] = cnt++;
19 }
20
21 inline void queue_prim()
22 {
23     int i, u, v, tot = n;
24     heap x;
25     q.push(make_pair(0, 1));
26     while(!q.empty() && tot)
27     {
28         x = q.top();
29         q.pop();
30         u = x.second;
31         if(vis[u]) continue;
32         vis[u] = 1;
33         ans += x.first;
34         tot--;
35         for(i = head[u]; i != -1; i = next[i])
36         {
37             v = to[i];
38             if(!vis[v]) q.push(make_pair(val[i], v));
39         }
40     }
41 }
42
43 int main()
44 {
45     int i, x, y, z;
46     memset(head, -1, sizeof(head));
47     scanf("%d %d", &n, &m);
48     for(i = 1; i <= m; i++)
49     {
50         scanf("%d %d %d", &x, &y, &z);
51         add(x, y, z);
52         add(y, x, z);
53     }
54     queue_prim();
55     printf("%d", ans);
56     return 0;
57 }

View Code

转载于:https://www.cnblogs.com/zhenghaotian/p/6740425.html

【模板】prim的heap优化相关推荐

  1. js添加keyword让搜索引擎能够搜到_搜索引擎优化考试培训任务书模板 ——XX网站SEO优化方案...

    一.考试形式及内容: 1.每位同学独立完成网站诊断报告与网站优化方案撰写. 2.考试采用项目考试形式,要求学生在规定时间内提交项目作品. 二.考试时间: 项目持续时间:2020年5月25日-2016年 ...

  2. TVM:使用 Schedule 模板和 AutoTVM 来优化算子

    TVM:使用 Schedule 模板和 AutoTVM 来优化算子 在本文中,我们将介绍如何使用 TVM 张量表达式(Tensor Expression,TE)语言编写 Schedule 模板,Aut ...

  3. USACO07DEC道路建设Building Roads(prim算法+堆优化与Kruskal+路径压缩对比)

    目录 primprimprim算法 KruskalKruskalKruskal算法 P2872 [USACO07DEC]道路建设Building Roads 4 1 1 1 3 1 2 3 4 3 1 ...

  4. 模板模式+策略模式优化

    前言 写在最前面,最近在项目中发现一部分代码,可以用模板模式+策略模式来进行优化. 背景 业务中,系统中对订单状态的处理,需要发送对用户短信发送或者微信推送等操作. 发送短信和微信推送钱,需要处理逻辑 ...

  5. Php资讯瀑布流模板,无限下拉加载瀑布流zblogphp模板 还有自适应+seo优化-收费zblogphp模板-天兴工作室...

    主题更新: 2019年01月11日更新:此次更新较大,请老用户先浏览演示网站确定符合需求后再升级. 1.增加主题自带seo配置(新增seo标题和间隔符): 2.大幅度优化了界面,彻底修复了某些分辨率下 ...

  6. 模板:容斥优化多重方案背包

    所谓容斥优化多重方案背包,就是利用容斥去优化统计方案的多重背包 (逃) 前言 考场上因为不会这个玩意活活把100分正解挂成了70 qwq 思想还是很妙的 就是先当完全背包做,然后扣去多统计的情况 注意 ...

  7. 最小生成树(模板 prim)

    Description 省政府"畅通工程"的目标是使全省任何两个村庄间都可以实现公路交通(但不一定有直接的公路相连,只要能间接通过公路可达即可).现得到城镇道路统计表, 表中列出了 ...

  8. 模板 · ISAP网络流+GAP优化+弧优化

    //ISAP+GAP优化+弧优化 #include <bits/stdc++.h> using namespace std; const int INF = 0x7f7f7f7f; str ...

  9. ac自动机(模板+一点点小优化)

    题意:给定n个模式串和1个文本串,求有多少个模式串在文本串里出现过. 题解:ac自动机+加一点点优化,否则过不了,具体见代码,就一行代码. 传送门 #include<iostream> # ...

最新文章

  1. mac brew 安装
  2. 百度网盘推荐部分优秀的分享达人
  3. 如何避免贫穷和忙碌,在2018年你需要这样提升自己 2018年01月07日 00:00:00 2099 热文导读 | 点击标题阅读 Java和Android架构2017年总结:文章精选 吊炸天!74
  4. 一句话实现php日期转中文汉字
  5. ZooKeeper命令、命令行工具及简单操作
  6. c++ udp通信_Web 通信协议,你还需要知道:SPDY 和 QUIC
  7. C语言初学必练100道
  8. 发布海外媒体稿件更好帮助企业海外营销推广
  9. 智能数字看板解决方案
  10. win10双显卡开机黑屏时间长
  11. SSL: error:0B080074:x509 certificate routines:X509_check_private_key:key values mismatch
  12. 添加 右键显示隐藏文件+扩展名
  13. Linux Oracle dbf文件误删 恢复操作
  14. 进销存软件哪个简单好用?来看看这5款
  15. 【linux创建用户启动tomcat】
  16. 编译原理(龙书第二版)--怎么求FIRST集
  17. app测试日志如何获取,logcat值得拥有
  18. 惯性测量单元(IMU)传感器--MEMS微纳制造系列简报
  19. 目标检测论文阅读:YOLOv1算法笔记
  20. 市场调研报告-全球与中国商用压缩机市场现状及未来发展趋势

热门文章

  1. python如何读取二进制文件为图片_python读取图片,并获取每个像素点的二进制值...
  2. nacos 配置动态刷新_使用 Spring Cloud Alibaba Nacos Config 作为配置中心
  3. Python群机器人发送城市天气情况
  4. 计算机编程c 语言实型数据,C语言-基础教程-C语言实型数据
  5. mysqlslap 压力测试工具
  6. ****** 四 ******、软设笔记【数据结构】-排序、插入排序、选择排序
  7. Facebook发布基站开源平台OpenCellular
  8. 【编译打包】fastdfs-5.0.5-7.el7.centos.src.rpm
  9. 图片加载库Glide
  10. activiti 常见问题总结