目录
一、综合实验设计的目的
熟练掌握邻接矩阵的构造及存储,深刻理解Prim算法和最小生成树的构造。
二、内容与设计思想
1.设计思路
(1)题目
构造可以使n个城市连接的最小生成树
(2)问题描述
给定一个地区的n个城市间的距离网,用Prim算法或Kruskal算法建立最小生成树,并计算得到的最小生成树的代价。
(3)基本要求
1)城市间的距离网采用邻接矩阵表示,邻接矩阵的存储结构定义采用课本中给出的定义,若两个城市之间不存在道路,则将相应边的权值设为自己定义的无穷大值。要求在屏幕上显示得到的最小生成树中包括了哪些城市间的道路,并显示得到的最小生成树的代价。
2)表示城市间距离网的邻接矩阵(要求至少6个城市,10条边)
3)最小生成树中包括的边及其权值,并显示得到的最小生成树的代价。
(4)要求
1)界面友好,函数功能要划分好
2)总体设计应画一流程图
3)程序要加必要的注释
4)要提供程序测试方案
5)程序一定要经得起测试,宁可功能少一些,也要能运行起来,不能运行的程序是没有价值的。
2.主要数据结构
图结构
3.主要代码结构
#include <iostream>
#include <stdlib.h>
#include <iomanip>
typedef char VerT;
typedef char DataType;
const int MaxVertices = 100;
const int MaxWeight = 10000;
#include "AdjMWGraph.h"
#include "Prim.h"
using namespace std;
void main(void) {
AdjMWGraph g;
DataType m[MaxVertices]; //存放城市名称的数组
g.CreateGraph1(g