编程之战 第一百五五章 最小生成树(下)

小说:编程之战 作者:程序小猿 更新时间:2024-08-06 08:41:20 源网站:顶点小说
  那么,就开始编写prim算法吧!

  首先,做异常情况判断。

  两种情况视为异常:

  1.地图为空(没有意义嘛)

  2.地图连通性无法保证

  这些情况,通通返回空地图。

  然后,从地图中选取一个点,作为起始顶点。

  随便哪个点都可以的!

  将该点标识为已访问,并将含有起始顶点的边添加到优先级队列。

  接下来,是算法的关键性部分。

  1.从优先级队列中取出权重最小的边。

  2.如果这条边,两端的点都被访问过,说明是失效的边,将其舍弃。

  3.这条边没有被舍弃,那就是有效的,加入最小生成树。

  4.以这条边,没有被访问过的端点,继续标识为已访问,并将含有该端点的边添加到优先级队列。

  5.又从1.开始,反复循环。

  这似乎是个从1到4阶段永不停歇的贪心计算过程。

  然而,万物有始必有终结。

  当图中所有的顶点,都被最小生成树得到(顶点数量相同)。

  或者,当优先级队列为空。

  这个算法就结束了它的使命。

  此时得到的,就是原来地图的最小生成树。
为更好的阅读体验,本站章节内容基于百度转码进行转码展示,如有问题请您到源站阅读, 转码声明
八零电子书邀请您进入最专业的小说搜索网站阅读编程之战,编程之战最新章节,编程之战 顶点小说!
可以使用回车、←→快捷键阅读
本站根据您的指令搜索各大小说站得到的链接列表,与本站立场无关
如果版权人认为在本站放置您的作品有损您的利益,请发邮件至,本站确认后将会立即删除。
Copyright©2018 八零电子书