![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构
文章平均质量分 68
WrxDark
这个作者很懒,什么都没留下…
展开
-
2021.02.26学习总结(最小生成树之Kruskal算法)
上次学了一个最小生成树的Prim算法,这次看了看Kruskal算法。假设我们有一个点的集合G。两点之间都有一条边,所有边为集合E,这个我们可以用二叉堆实现最小生成树为T。Kruskal算法:刚开始T里面没有任何点。whie:我们每次从E里面取出最小的边v,假设a,b是v的两个端点。如果a和b不是同一个集合,我们就可以把a所在的集合 和 b所在的集合 合并(可以利用并查集),相当于把a,b两点加入进T里面。end就这样一直循环,直到所有的点都加入进T,或者剩下的点无法加入,就结束循环。如原创 2021-02-26 23:03:16 · 258 阅读 · 0 评论 -
E - 百岛湖的故事(最小生成树Prim算法)
相信大家都听说一个“百岛湖”的地方吧,百岛湖的居民生活在不同的小岛中,当他们想去其他的小岛时都要通过划小船来实现。现在政府决定大力发展百岛湖,发展首先要解决的问题当然是交通问题,政府决定实现百岛湖的全畅通!经过考察小组RPRush对百岛湖的情况充分了解后,决定在符合条件的小岛间建上桥,所谓符合条件,就是2个小岛之间的距离不能小于10米,也不能大于1000米。当然,为了节省资金,只要求实现任意2个小岛之间有路通即可。其中桥的价格为 100元/米。Input输入包括多组数据。输入首先包括一个整数T(T &l原创 2021-02-25 22:15:33 · 330 阅读 · 0 评论 -
刷题——最短路径算法!第二篇
C - 草儿是个路痴虽然草儿是个路痴(就是在杭电待了一年多,居然还会在校园里迷路的人,汗~),但是草儿仍然很喜欢旅行,因为在旅途中 会遇见很多人(白马王子,0),很多事,还能丰富自己的阅历,还可以看美丽的风景……草儿想去很多地方,她想要去东京铁塔看夜景,去威尼斯看电影,去阳明山上看海芋,去纽约纯粹看雪景,去巴黎喝咖啡写信,去北京探望孟姜女……眼看寒假就快到了,这么一大段时间,可不能浪费啊,一定要给自己好好的放个假,可是也不能荒废了训练啊,所以草儿决定在要在最短的时间去一个自己想去的地方!因为草儿的家在一个原创 2021-02-23 21:40:30 · 314 阅读 · 0 评论 -
刷题——最短路径算法!第一篇
B - 我想追小姐姐了!在每年的校赛里,所有进入决赛的同学都会获得一件很漂亮的t-shirt。但是每当我们的工作人员把上百件的衣服从商店运回到赛场的时候,却是非常累的!所以现在他们想要寻找最短的从商店到赛场的路线,你可以帮助他们吗?Input输入包括多组数据。每组数据第一行是两个整数N、M(N<=100,M<=10000),N表示成都的大街上有几个路口,标号为1的路口是商店所在地,标号为N的路口是赛场所在地,M则表示在成都有几条路。N=M=0表示输入结束。接下来M行,每行包括3个整数A,B原创 2021-02-22 23:00:49 · 712 阅读 · 0 评论 -
什么是图
什么是图图是用来表示一些食物关系的表示方法,树是图的一种,许多问题都可以归纳成图的问题。图由顶点(node)和边(edge)组成:图的种类有指向性的图叫做有向图,没有指向的图叫做无向图,上面的图片是无向图。下面是有向图:图的边可以带上权值,可以粗略的理解为变的长度,因为权值可以表示距离,也可以表示其他特殊含义。带权值的图被叫做 带权图 。无向图的基本概念相邻 :如果两个顶点有连接,则称他们相邻。路径 :相邻顶点的序列叫做路径,如下图,3和4之间的路径为3-7-1-4 或者 3-9-原创 2021-02-21 20:09:10 · 1192 阅读 · 0 评论 -
通俗易懂,什么是二叉堆?
二叉堆二叉堆大顶堆小顶堆堆的操作建立二叉堆删除节点添加节点堆排序代码实现二叉堆二叉堆是基于完全二叉树的基础上,加以一定的条件约束的一种特殊的二叉树。根据约束条件的不同,二叉堆又可以分为两个类型:大顶堆和小顶堆。大顶堆即任何一个父节点的值,都 大于等于 它左右孩子节点的值。小顶堆即任何一个父节点的值,都 小于等于 它左右孩子节点的值。二叉堆的根节点叫做 堆顶 ,它是大顶堆里面的最大值,小顶堆里的最小值。堆的操作大顶堆和小顶堆的操作都是差不多的,这里用小顶堆来讲。建立二叉堆假如我们有一原创 2021-02-21 19:00:03 · 6726 阅读 · 0 评论