摘要: Kruskal算法: ①用并查集实现 ②构造一个只含 n 个顶点,边集为空的子图,把子图中各个顶点看成各棵树上的根结点 ③sort()排序升序,依次从边集 E 中选取一条权值最小的边,如果该条边的两个顶点分属不同的树,则把两棵树合成一棵树。若该条边的两个顶点已落在同一棵树上,跳过,取下一条权值最小的 阅读全文
posted @ 2020-01-14 23:04 北冥有鱼兮 阅读(123) 评论(0) 推荐(0) 编辑
摘要: 并查集:find() + union()+ init() 寻找根节点 + 合并子树 + 初始化 #include <stdio.h> #define MAX 100 using namespace std; int father[MAX]; //自己的父亲 int rank[MAX]; //秩 in 阅读全文
posted @ 2020-01-14 22:50 北冥有鱼兮 阅读(153) 评论(0) 推荐(0) 编辑
摘要: 题解:求最小生成树的最大权值边 △prim是什么?Kruskal大法好!不会超时还不用优化 www Kruskal解法:78ms #include <stdio.h> #include <algorithm> #define MAX 50005 #define MAX_EDG 100005 usin 阅读全文
posted @ 2020-01-14 19:55 北冥有鱼兮 阅读(116) 评论(0) 推荐(0) 编辑
摘要: Prim算法:每次找距离集合V'的最近的点 + 松弛操作( dis[j] = min(dis[j] , map[k][j]) ) prim的松弛操作和迪杰斯特拉的松弛操作不一样,不要混淆了! Vector + 优先队列实现 #include <stdio.h> #include <string.h> 阅读全文
posted @ 2020-01-14 17:32 北冥有鱼兮 阅读(126) 评论(0) 推荐(0) 编辑
摘要: 题目背景 小明是汉东省政法大学附属中学的一名学生,他每天都要骑自行车往返于家和学校。为了能尽可能充足地睡眠,他希望能够预计自己上学所需要的时间。他上学需要经过数段道路,相邻两段道路之间设有至多一盏红绿灯。 京州市的红绿灯是这样工作的:每盏红绿灯有红、黄、绿三盏灯和一个能够显示倒计时的显示牌。假设红绿 阅读全文
posted @ 2020-01-14 15:38 北冥有鱼兮 阅读(129) 评论(0) 推荐(0) 编辑
摘要: 题目背景 汉东省政法大学附属中学所在的光明区最近实施了名为“智慧光明”的智慧城市项目。具体到交通领域,通过“智慧光明”终端,可以看到光明区所有红绿灯此时此刻的状态。小明的学校也安装了“智慧光明”终端,小明想利用这个终端给出的信息,估算自己放学回到家的时间。 问题描述 一次放学的时候,小明已经规划好了 阅读全文
posted @ 2020-01-14 15:33 北冥有鱼兮 阅读(284) 评论(0) 推荐(0) 编辑
摘要: getline:用来获取一行字符,包括空格 ①头文件:#incldue <string> ②用法:getline(cin,string)用于获取字符串并存人字符串string中 ③注意:在使用getline之前有使用scanf的话,需要在scanf后用getchar()读取换行符,否则换行符会被ge 阅读全文
posted @ 2020-01-13 20:37 北冥有鱼兮 阅读(161) 评论(0) 推荐(0) 编辑
摘要: 题解:不能任意匹配,只能是队头和队头的匹配。匹配的条件是:操作类型相反且互为操作进程数 ①用队列数组存储数据,每次算完一组数据之后记得清空队列 ②用getline获取一行字符,包括字符串。 先输入T,n然后换行的话,getline会把T、n的换行符当成输入,就会出错,所以在scanf("%d %d, 阅读全文
posted @ 2020-01-13 20:25 北冥有鱼兮 阅读(102) 评论(0) 推荐(0) 编辑
摘要: 迪杰斯特拉优化版本:vector + 优先队列 △迪杰斯特拉算法的核心:每次找距离s点最短的元素 + 松弛操作 ①要用优先队列取出最短距离降低时间复杂度,用veotor减少空间 ②定义一个pair类型,作为优先队列的元素。typedef pair<int , int > P ,first是距离,se 阅读全文
posted @ 2020-01-11 19:02 北冥有鱼兮 阅读(442) 评论(0) 推荐(0) 编辑
摘要: map:hash映射,提供key和value,实现一对一的映射 ①头文件:#include <map> ②使用方法:map<type1 , type2> Map; ③实现方法:map用红黑树实现,map先按照type1升序排序,再按type2升序排序。因此map是有序的,无须对map进行排序 ④通过 阅读全文
posted @ 2020-01-11 18:47 北冥有鱼兮 阅读(291) 评论(0) 推荐(0) 编辑