资源简介


该课题是为某一学校超市选址,要求实现总体最优,这是带权的最小生成树的问题,校园平面图采用邻接矩阵表示,校园的的道路是双向通行,设计校园的平面图是一有向网,边表示各单位到超市的路劲,边上的权值表示路劲的长度。

在本课程设计中,采用邻接矩阵存储结构存储两个地点的距离信息,采用C语言设计开发了带权的最小生成树程序,采用逻辑结构构建数据模型产生带权有向图,实现了求最短路径的核心问题和求总体最优功能,程序测试表明, 程序的主要功能可以正常运行,界面友好,完成了任务书中的主要功能。


资源截图

代码片段和文件信息

//程序运行环境:Dev-C++
#include
#include
#include
#include
#include“malloc.h“
#include
using namespace std;
#define TURE 1
#define FALSE 0
#define OK 1
#define ERROR 0
#define OVERFLOW -1
#define INF 32767
const int MAXVEX = 100;
typedef char Vextype;
typedef struct {
Vextype vexs[MAXVEX][MAXVEX];
int adj[MAXVEX][MAXVEX];
int dis[MAXVEX][MAXVEX];
int f[MAXVEX];
int n;
int e;
}Mgraph;
void CreatMgraph(Mgraph *G) {
int i j k;
printf(“请输入单位个数:\n“);
scanf(“%d“ &(G->n));
printf(“请输入单位间的路径数:\n“);
scanf(“%d“ &(G->e));
printf(“请输入单位名称:\n“);
for (i = 0; i < G->n; i++) {
printf(“请输入第%d个单位名称:\n“ i);
scanf(“%s“ &G->vexs[i]);
}
for (i = 0; i < G->n; i++) 
for (j = 0; j < G->n; j++) { 
G->adj[i][j] = 0;
G->dis[i][j] = 0;
G->f[i] = 0; 
}

for (k = 0; k < G->e; k++) {
printf(“请输入相通的两单位 (输入格式:ij):\n“);
scanf(“%d%d“ &i &j);
printf(“请输入

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     文件     1925897  2020-06-18 17:16  数据结构课程设计 - 副本.exe
     文件        3402  2020-06-18 17:16  数据结构课程设计源代码 - 副本.cpp
     文件        3531  2020-06-18 17:16  超市选址问题源码2 - 副本.txt
     文件      469504  2020-06-20 14:26  数据结构设计超市选址问题.doc

评论

共有 条评论