大学职业搜题刷题APP
下载APP
首页
课程
题库模板
Word题库模板
Excel题库模板
PDF题库模板
医考护考模板
答案在末尾模板
答案分章节末尾模板
题库创建教程
创建题库
登录
logo - 刷刷题
创建自己的小题库
搜索
【简答题】

【说明】 应用Prim算法求解连通网络的最小生成树问题。请阅读程序后填空。
const int MaxInt=INT MAX; //INT MAX的值在<limits.h>中
const int n=6; //图的顶点数,应由用户定义
typedef int AdjMatrix[n][n]; //用二维数组作为邻接矩阵表示
typedef struct //生成树的边结点
int fromVex,to Vex; //边的起点与终点
int weight; //边上的权值
TreeEdSenode;
typedef TreeEdgeNode MST[n-1]; //最小生成树定义 void PrimMST (AdjMatrix G,MST T,int rt)
//从顶点rt出发构造图G的最小生成树T,rt成为树的根结点
TreeEdgeNode e; int i,k=0,min,minpos,v;
for(i=0;i<n;i++) //初始化最小生成树T
if(i!=rt)
T[k].fromVex=rt;
(1)
T[k++].weight=G[rt][i];

for(k=0;k<n-1;k++) //依次求MST的候选边
(2)
for(i=k;i<n-1;i++) 八遍历当前候选边集合
if(T[i].weight<min) //选具有最小权值的候选边
min=T[i].weight; (3)
if(min==MaxInt) //图不连通,出错处理
cerr<<“Graph is disconnected!”<<endl; exit(1);
e=T[minpos];T[minpos]=T[k]; (4)
v=T[k].to Vex;
for(i=k+1;i<n-1;i++) //修改候选边集合
if(G[v][T[i].to Vex]<T[i].weight)
T[i].weight=G[v][T[i].toVex];
(5)

手机使用
分享
复制链接
新浪微博
分享QQ
微信扫一扫
微信内点击右上角“…”即可分享
反馈
收藏 - 刷刷题收藏
举报
参考答案:
举一反三

【单选题】下列情况表明出错处理功能有错误和缺陷的是______。

A.
显示的错误与实际遇到的错误不符
B.
显示的错误信息难以理解
C.
对异常处理的不得当
D.
以上全部

【单选题】任何一个无向连通图的最小生成树( )。

A.
只有一棵
B.
一棵或多棵
C.
一定有多棵
D.
可能不存在
相关题目:
【单选题】下列情况表明出错处理功能有错误和缺陷的是______。
A.
显示的错误与实际遇到的错误不符
B.
显示的错误信息难以理解
C.
对异常处理的不得当
D.
以上全部
【单选题】任何一个无向连通图的最小生成树( )。
A.
只有一棵
B.
一棵或多棵
C.
一定有多棵
D.
可能不存在
刷刷题-刷题-导入试题 - 刷刷题
参考解析:
AI解析
重新生成
题目纠错 0
发布
刷刷题-刷题-导入试题 - 刷刷题刷刷题-刷题-导入试题 - 刷刷题刷刷题-刷题-导入试题 - 刷刷题
刷刷题-刷题-导入试题 - 刷刷题
刷刷题-刷题-导入试题 - 刷刷题
刷刷题-单词鸭