无向连通图的生成树kruskal - 范文中心

无向连通图的生成树kruskal

07/19

采用kruskal(克鲁斯卡尔) 算法求无向连通网图的一棵最小生成树。

#include

using namespace std;

const int MaxSize=6; // 顶点数

const int m=9; //边数

int vertexNum, arcNum; //顶点数和边数

char vertex[MaxSize]; //顶点数组

int parent[MaxSize];

struct EdgeType

{

int from, to;

int weight;

};

EdgeType edge[m];

void edgesz(char a[], int n, int e)

{

int i,j,k,w;

vertexNum=n; arcNum=e;

for (i=0; i

for (k=0; k

{

cin>>i>>j>>w; //边依附的两个顶点的序号及权值

edge[k].from=i;edge[k].to=j;edge[k].weight=w;

}

}

int FindRoot(int parent[], int v)

{

int t;

t=v;

while ( parent[t]>-1) t=parent[t];

return t;

}

void DubbleSort(EdgeType r[],int n)

{

int exchange,bound,j,k;

exchange=n-1; //第一趟的区间为1-- n

while(exchange) //当还未完全有序

{ bound=exchange; //传递本趟最后交换位置

exchange=0;

for(j=0;j

if (r[j].weight>r[j+1].weight)

{

k=r[j].from;r[j].from=r[j+1].from;r[j+1].from=k;

k=r[j].to;r[j].to=r[j+1].to;r[j+1].to=k;

k=r[j].weight;r[j].weight=r[j+1].weight;r[j+1].weight=k;

exchange=j; } //记录交换位置

}

}

//kruskal(克鲁斯卡尔) 算法

int main()

{

int i;

char a[MaxSize];

cout

for (i=0;i>a[i];

cout

DubbleSort(edge,m);

cout

Kruskal();

cout

return 0;

}


相关内容

  • 数据结构导论试题1
    全国2004年10月高等教育自学考试 1.要将现实生活中的数据转化为计算机所能表示的形式,其转化过程依次为( ) A.逻辑结构.存储结构.机外表示 B.存储结构.逻辑结构.机外表示 C.机外表示.逻辑结构.存储结构 D.机外表示.存储结构. ...
  • [数据结构]期末考试题及答案
    2011-2012学年第一学期期末考查 <数据结构>试卷 (答案一律写在答题纸上,在本试卷上做答无效) 一.选择(每题1分,共10分) 1. 长度为n 的线性表采用顺序存储结构,一个在其第i 个位置插入新元素的算法时间复杂度为( ...
  • 东南大学数据结构 93-20**年
    东南大学93考研题 注意事项 : (1) 答卷上需写清题号,不必抄题 (2) 描述可用你熟悉的一种类高级语言,如类Pascal ,所用主要数据结构及变量的意义须加以注释.必要时算法中应加注释 . 一.回答下列问题 : (共 35分) l 与 ...
  • 第二十六课 图的定义与术语
    教学目的: 掌握图的定义及常用术语 教学重点: 图的常用术语 教学难点: 图的常用术语 授课内容: 一.图的定义 图是一种数据元素间为多对多关系的数据结构,加上一组基本操作构成的抽象数据类型. ADT Graph{ 数据对象V :V是具有相 ...
  • 基于通讯数据的社群分类与应用数学建模
    基于通讯数据的社群聚类 摘要 大数据时代的来临使得许多不可能成为了现实.数据分析和数据挖掘技术成 功地在多个重大领域取得了巨大成功.现已有部分人群通讯数据,对人群进行社群分类和相关识别. 针对问题一, 本文运用改进的K -MEANS 算法对 ...
  • 第8章_非参数检验练习题
    第8章 非参数检验练习题 选择题: 1. 与参数检验相比,非参数检验的主要特点是(B ) A. 对总体的分布没有任何要求 B. 不依赖于总体的分布 C. 只考虑总体的位置参数 D. 只考虑总体的分布 2. 如果要检验两个配对总体的分布是否相 ...
  • 建立无向图邻接矩阵
    实验内容及步骤 (含源程序) : #include #include #define MAX 20 typedef int VexType; typedef VexType Mgraph[MAX][MAX]; void creat_mg(M ...
  • 11秋[ 编译原理]
    考生答题情况 -------------------------------------------------------------------------------- 作业名称:11秋< 编译原理>第一次作业 出 卷 人 ...
  • 智慧教育环境及其实现方式设计_刘俊
    2013.12 中国电化教育 总第323期    文章编号:1006-9860(2013)12-0020-07 智慧教育环境及其实现方式设计 刘 俊 (华东师范大学 教育科学学院 教育信息技术学系,上海 200062) 摘要:随着社会的发展 ...
  • 会计学专业-毕业实习报告
    毕业实习报告 一.实习目的 毕业实习是学校本科教学培养方案和会计学专业教学计划的重要教学实践环节,是课堂教育和社会实践相结合的重要形式.实习的目的是让学生了解财务会计工作实际情况,综合运用所学基础知识和基本技能,增强学生实践能力.培养学生提 ...