- 11
- 0
- 约4.81千字
- 约 9页
- 2016-11-18 发布于湖北
- 举报
题目:最小生成树
存储结构
//1.头文件
#include stdio.h
#include stdlib.h
#include time.h
//2.本地数据类型定义
#define MAX 435 //30*29/2=435
//3.带权边的定义
/* 定义边(x,y),权为 w */
typedef struct {
int x, y; int w;
}edge;
//4.本地数组和数据定义
edge e[MAX];
int tag[MAX]; //标志
int father[MAX]; //定义 x 的父节点
基本操作
int cmp(const void *a, const void *b);
操作功能: 比较函数,按权值(相同则按 x 坐标)非降序排序
void Make_Set(int x);
操作功能:初始化集合
int Find_Set(int x);
操作功能:查找 x 元素所在的集合,回溯时压缩路径
void Union(int x, int y, int w);
操作功能:合并 x,y 所在的集合
void Select();
操作功能:初始化界面
算法设计
// 1.比较函数,按权值(相同则按 x 坐标)非降序排序
int cmp(const voi
原创力文档

文档评论(0)