最小生成树伪代码模板
来源:互联网 发布:墨脱公路沥青路面数据 编辑:程序博客网 时间:2024/06/06 09:53
//G(v,E)的权值连接图
struct edge{
int fromvex;
int endvex;
int length;
}a[n];
//v的信息存储(此时是以坐标中的点储存)
struct point{
int x;
int y;
}p[n];
prime(){
for(i=0;i<n;i++){
scanf("%d %d",&p[i].x,&p[i].y);
}
//对根进行赋值
a[0].fromvex=0;
a[0].endvex=0;
a[0].length=0;
//获得第一次权值的计算
for(int i=1;i<n;i++){
a[i].fromvex=0;
a[i].endvex=i;
a[i].length=sqrt(pow(p[i].x-p[0].x,2)+pow(p[i].y-p[0].y,2));
}
int min=1;
//不断对生成树完善
for(int k=1;k++;k){
//找出v-v'与v'的最小权值
for(i=k;i<n;i++){
if(a[i].length<a[min].length){
min=i;
}
}
//min与k交换,获得min
struct edge e;
e=a[min];
a[min]=a[k];
a[k]=a[min];
int v=a[k].endvex;
//找出v-v'中的j与v'的最小的权值
for(i=k+1;k<n;i++){
int vex=a[i].endvex;
if(double d=sqrt(pow(p[a[vex].x-a[v].x,2)+pow(a[vex].y-a[v].y,2))<a[i].length){//更新权值信息
a[i].fromevex=v;
a[i].length=d;
}
}
}
}
//获得了最小生成树的所有资料,点的连接,长度,所有的变化都是基础的,
struct edge{
int fromvex;
int endvex;
int length;
}a[n];
//v的信息存储(此时是以坐标中的点储存)
struct point{
int x;
int y;
}p[n];
prime(){
for(i=0;i<n;i++){
scanf("%d %d",&p[i].x,&p[i].y);
}
//对根进行赋值
a[0].fromvex=0;
a[0].endvex=0;
a[0].length=0;
//获得第一次权值的计算
for(int i=1;i<n;i++){
a[i].fromvex=0;
a[i].endvex=i;
a[i].length=sqrt(pow(p[i].x-p[0].x,2)+pow(p[i].y-p[0].y,2));
}
int min=1;
//不断对生成树完善
for(int k=1;k++;k){
//找出v-v'与v'的最小权值
for(i=k;i<n;i++){
if(a[i].length<a[min].length){
min=i;
}
}
//min与k交换,获得min
struct edge e;
e=a[min];
a[min]=a[k];
a[k]=a[min];
int v=a[k].endvex;
//找出v-v'中的j与v'的最小的权值
for(i=k+1;k<n;i++){
int vex=a[i].endvex;
if(double d=sqrt(pow(p[a[vex].x-a[v].x,2)+pow(a[vex].y-a[v].y,2))<a[i].length){//更新权值信息
a[i].fromevex=v;
a[i].length=d;
}
}
}
}
//获得了最小生成树的所有资料,点的连接,长度,所有的变化都是基础的,
0 0
- 最小生成树伪代码模板
- Prim最小生成树算法,c代码,非伪…
- Prim算法 实现最小生成树(伪代码)
- 最小生成树模板
- 最小生成树模板
- 最小生成树---模板
- 最小生成树模板
- 最小生成树 模板
- 最小生成树(模板)
- 最小生成树模板
- 最小生成树模板
- 最小生成树模板
- 最小生成树【模板】
- 最小生成树【模板】
- 最小生成树模板
- 最小生成树模板
- 最小生成树 模板
- 最小生成树模板.
- python学习笔记10
- 背包
- ubuntu12.04下降级gcc到4.4
- python字符串操作
- Apriori算法及C++实现
- 最小生成树伪代码模板
- python常用函数
- Android Application对象必须掌握的七点
- Setup Python 开发环境和IPython的基本使用
- Java中为什么finally语句块一定会被执行?
- hdoj 2111 Saving HDU 【贪心】
- 解决U盘1KB快捷方式病毒(暴风一号)方法
- servlet路径问题
- Unity优化大全(十)之 Memory - Mono的托管内存