www.pryy.net > 用prim算法,求下图的最小生成树.假设A为起点

用prim算法,求下图的最小生成树.假设A为起点

1、(a, b) 2、(a, c) 如果ch是6就是如下过程 3、(c, d) 接下来bd不详,假设很大 4、(d, h) 5、(d, g) 6、(g, f) 7、(f, e)

//prim算法 #include using namespace std; #define MAXVEX 10 #define MAX 65000 typedef char VexType; typedef float AdjType; struct GraphMatrix { VexType vexs[MAXVEX]; //顶点信息 AdjType arcs[MAXVEX][MAXVEX]; //边信息 int n; //图...

正在看 实在不懂 帮不了你 谢谢

不好意思吖按照图弄那两个中间数组太久了。。。实现方法也有不同。我跟您说说我学的通用实现方法吧! 点集合:A,代表已经扩展到的点。 边集合B:代表待考虑的边,一开始为空。 一开始从任意点出发,如0.此时集合A中只有点0。将和A相邻的所有边...

自己画一下,按我说的步骤(链接8条边和相应的顶点即可,一次一条): A--B A--G G--I I--E E--D D--C C--H I--F

您的图呢?

不会画,和你文字描述好了,你自己画出来 第一步连AE 第二步连EG GC GF AD BD

/* 邻接矩阵存储图 测试数据 6 10 1 2 6 1 3 1 1 4 5 2 3 5 2 5 3 3 4 5 3 5 6 3 6 4 4 6 2 5 6 6 */ #include #include #define N 100 int p[N], key[N], tb[N][N]; void prim(int v, int n) { int i, j; int min; for (i = 1; i

普利姆算法我忘了,克鲁斯卡尔算法简单。 你就画三张图,每一张图都把所有点画出来先; 第一张图连接BD; 第二张图连接BD,BA; 第三张图连接BD,BA,AC;

图看不清, p,树向外扩张,找最短外扩路径 k,增加一条不会造成回路的边(现在选中的边可以暂不相连)

网站地图

All rights reserved Powered by www.pryy.net

copyright ©right 2010-2021。
www.pryy.net内容来自网络,如有侵犯请联系客服。zhit325@qq.com