图论第9天

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

卡码网53题

通过prim算法整完了。

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

2、最近节点加入生成树

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

cpp 复制代码
#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的题需要做。明天继续吧

相关推荐
老鼠只爱大米6 分钟前
LeetCode经典算法面试题 #114:二叉树展开为链表(递归、迭代、Morris等多种实现方案详细解析)
算法·leetcode·二叉树·原地算法·morris遍历·二叉树展开
Ivanqhz12 分钟前
现代异构高性能计算(HPC)集群节点架构
开发语言·人工智能·后端·算法·架构·云计算·边缘计算
HyperAI超神经39 分钟前
覆盖天体物理/地球科学/流变学/声学等19种场景,Polymathic AI构建1.3B模型实现精确连续介质仿真
人工智能·深度学习·学习·算法·机器学习·ai编程·vllm
执着2591 小时前
力扣hot100 - 144、二叉树的前序遍历
数据结构·算法·leetcode
范纹杉想快点毕业1 小时前
嵌入式系统架构之道:告别“意大利面条”,拥抱状态机与事件驱动
java·开发语言·c++·嵌入式硬件·算法·架构·mfc
近津薪荼1 小时前
递归专题(4)——两两交换链表中的节点
数据结构·c++·学习·算法·链表
2501_940315261 小时前
【无标题】2390:从字符串中移除*
java·开发语言·算法
乐观勇敢坚强的老彭1 小时前
c++寒假营day01下午
c++·算法
散峰而望1 小时前
【算法竞赛】树
java·数据结构·c++·算法·leetcode·贪心算法·推荐算法
鱼很腾apoc1 小时前
【实战篇】 第14期 算法竞赛_数据结构超详解(下)
c语言·开发语言·数据结构·学习·算法·青少年编程