资源简介

问题描述:给定一个地区的n个城市间的距离网,用Prim算法或Kruskal算法建立最小生成树,并计算得到的最小生成树的代价。 基本要求: 1.城市间的距离网采用邻接矩阵表示,邻接矩阵的存储结构定义采用课本中给出的定义,若两个城市之间不存在道路,则将相应边的权值设为自己定义的无穷大值。要求在屏幕上显示得到的最小生成树中包括了哪些城市间的道路,并显示得到的最小生成树的代价。 2.表示城市间距离网的邻接矩阵(要求至少6个城市,10条边) 3.最小生成树中包括的边及其权值,并显示得到的最小生成树的代价。

资源截图

代码片段和文件信息

#include 
#include 
#include 

typedef struct node /*构造一个结构体,两个城市可以看成起点和终点,之间的道路可以看成一个边*/
{
int st; /*起点*/
int ed; /*终点*/
int dis;/*距离*/
}node;

node p[1000]temp; /*p记录城市信息*/

int pre[1000]rank[1000];/*用于判断是否构成回路*/
int n=0a[100][100];/*n表示城市个数,a[][]记录城市间权值*/

int menu()    /*菜单函数*/
  {
int m;
printf(“                           求最小生成树\n“);
printf(“                  ________________________________\n\n“);
printf(“                    1 输入城市之间的信息\n“);
printf(“                    2 判断是否能构成一个最小生成树\n“);
printf(“                    3 遍历所有城市生成最小生成树\n“);
printf(“                    4 退出\n“);
printf(“                  ________________________________\n\n“);
printf(“                        请输入所选功能1--4\n“);
scanf(“%d“&m);
re

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       4126  2010-07-06 17:53  计本093  31   陈畅\kruskal.cpp

    ..A..H.       162  2010-07-07 11:29  计本093  31   陈畅\~$设计任务书(修复的).doc

     目录          0  2010-07-07 11:30  计本093  31   陈畅

     文件     130560  2010-07-07 11:29  计本093  31   陈畅\课程设计任务书(修复的).doc

----------- ---------  ---------- -----  ----

               134848                    4


评论

共有 条评论