欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 汽车 > 时评 > 图论第9天

图论第9天

2024/10/25 7:32:58 来源:https://blog.csdn.net/weixin_41902984/article/details/139610227  浏览:    关键词:图论第9天

鉴于端午节让我迷失了三天,今天痛定思痛,不换工作之前就不玩dota了,谢幕战很高兴,土猫劣势翻盘,未来如果有时间就来两把炉石吧。先把两道新的题做完。然后改简历,明天带书去单位摸鱼。加油加油!!!要开始准备面试啦。

卡码网53题

通过prim算法整完了。

1、选距离生成树最近的节点(第一步这里需要研究一下,第20行,需要最近的节点)

2、最近节点加入生成树

3、更新非生成树节点到生成树的距离(更新minDist数组)
 

#include<vector>
#include<iostream>
#include<climits>
using namespace::std;
int main(){int V,E;cin >> V >> E;vector<vector<int>>grid(V+1,vector<int>(V+1,INT_MAX));for(int i = 0; i < E;i++){int a,b,c;cin >> a >> b >> c;grid[a][b] = c;grid[b][a] = c;}vector<int>minDist(V+1,INT_MAX);vector<bool>visited(V+1,0);for(int i = 1;i < V+1 ;i++){int cur = 1;for(int j = 1; j < V + 1;j++){if(!visited[j] && minDist[j] < minDist[cur]){cur = j;}}visited[cur] = 1;for(int j = 1; j < V+1;j++){if(!visited[j] && grid[cur][j] < minDist[j]){minDist[j] = grid[cur][j];}}}int sum = 0;for(int i = 2;i < V+1 ;i++){sum += minDist[i];// cout <<i<< " : "<< minDist[i] << endl;}cout << sum << endl;return 0;
}

还是有点懒,只完成了一道题。还有一个dijstra的题需要做。明天继续吧

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com