#include "Assistance.h" // 辅助软件包
#include "ShortestPathFloyd.h" // 弗洛伊德算法
int main(void)
{
try // 用try封装可能出现异常的代码
{
int infity = DEFAULT_INFINITY;
char vexs[] = { 'A', 'B', 'C', 'D', 'E', 'F', 'G'};
/*int m[6][6] = {
{infity, 12, 3, infity, 9, 10},
{ 12, infity, infity, 2, 6, infity},
{ 3, infity, infity, 2, infity, 6},
{infity, 2, 2, infity, 4, 7},
{ 9, 6, infity, 4, infity, 4},
{ 10, infity, 6, 7, 4, infity}
};*/
int n, m, k, g[101][101];
ifstream f;
f.open("input.in");
if (f.is_open())
{
f >> n >> m >> k;
if (n == 0 && m == 0 && k == 0) return 0;
for (int i = 0; i < n; i++)
for (int j = 0; j < n; j++)
g[i][j] = infity;
for (int i = 0; i < m; i++)
{
int a, b, c; f >> a >> b >> c;
g[a-1][b-1] = g[b-1][a-1] = c;
}
}
AdjListDirNetwork<char, int> net(vexs, n);
for (int u = 0; u < n; u++)
for (int v = n - 1; v >= 0; v--)
if (g[u][v] != infity) net.InsertArc(u, v, g[u][v]);
cout << "原网:" << endl;
net.Display(); // 显示网net
cout << endl;
system("PAUSE"); // 调用库函数system()
int** dist;
// 分配存储空间
dist = new int* [net.GetVexNum()];
for (int i = 0; i < net.GetVexNum(); i++) {
dist[i] = new int[net.GetVexNum()];
}
int a1, b1;
ShortestPathFloyd(net, dist); // 用Floyd算法求最短路径
for (int i = 0; i < k; i++)
{
f >> a1 >> b1;
DisplayPathAndDist(net, dist, a1, b1);// 显示最大噪声值
cout << endl;
}
cout << endl << endl;
// 释放存储空间
for (int j = 0; j < net.GetVexNum(); j++) {
delete[]dist[j];
}
delete[]dist;
}
catch (Error err) // 捕捉并处理异常
{
err.Show(); // 显示异常信息
}
system("PAUSE"); // 调用库函数system()
return 0; // 返回值0, 返回操作系统
}
没有合适的资源?快使用搜索试试~ 我知道了~
数据结构实验:求两点之间最大噪声值最小值
共32个文件
tlog:6个
h:5个
ipch:3个
需积分: 5 6 下载量 107 浏览量
2023-10-11
13:13:18
上传
评论
收藏 22.37MB RAR 举报
温馨提示
数据结构实验:求两点之间最大噪声值最小值 输入一个具有n个顶点和m条边(n≤100,m≤1000)的无向网,边上的权表示该路段的噪声值。当噪声太大时,耳膜会受到伤害,所以当从某点去往另一点时,总希望路上经过的噪声最大值最小。输入一些询问,每次询问输入2个点,输出这两个点之间最大噪声值最小的值。 输入文件中第一行有3个整数:n、m和k。n表示图中的顶点数(在无向图中,我们将所有结点从1到n进行编号),m表示图中的边数,k表示询问次数;接下来m行。每行用3个整数a、b、c描述一条连接结点a和b的边,以及ab路段上的噪声值c;再接下来k行,每行用两个整数a和b表示要询问的两个顶点。
资源推荐
资源详情
资源评论
收起资源包目录
ex3_shortestpath.rar (32个子文件)
ex3_shortestpath
.vs
ex3_shortestpath
v17
Browse.VC.db 16.79MB
.suo 65KB
ipch
AutoPCH
ae55728d533b5b53
bd3205805defa9e6
348d9872bc0eb7c8
548c528105e106ef
3eef95f3e21ee42b
66f2288d9ba2ea0e
TESTSHORTESTPATHDIJ.ipch 39.38MB
e79649c744068f2
5ff96a54c305688
44785d2aff1a438c
cef9bfc9057a96ee
6f7f45901da559e0
3871541352ef0fca
TESTSHORTESTPATHFLOYD.ipch 39.38MB
b0115a6ccbaf1b2c
12e31dfd8a71e426
4dfa1ab0181d83ff
TEST.ipch 42.38MB
273a1dd5788916a
d43cb96e8416713a
f8b034bb34cf14c7
6cb440d18e4a16ed
686f3e9c97dcdef7
87b0aa320ce4d8e3
b41f3b0606f86c96
fb78cfaa17fb43b9
9e124f30c9e43e05
x64
Debug
ex3_shortestpath.pdb 4.98MB
ex3_shortestpath.exe 142KB
ex3_shortestpath.sln 1KB
ex3_shortestpath
ex3_shortestpath.vcxproj.filters 1KB
ex3_shortestpath.vcxproj 7KB
Assistance.h 3KB
x64
Debug
vc143.pdb 476KB
test.obj 371KB
ex3_shortestpath.log 2KB
test.obj.enc 388KB
vc143.idb 179KB
ex3_shortestpath.ilk 1.27MB
ex3_shortestpath.exe.recipe 364B
ex3_shortestpath.tlog
CL.write.1.tlog 1012B
ex3_shortestpath.lastbuildstate 220B
CL.command.1.tlog 990B
link.command.1.tlog 2KB
link.read.1.tlog 3KB
link.write.1.tlog 1KB
CL.read.1.tlog 16KB
ShortestPathFloyd.h 2KB
AdjListDirNetwork.h 14KB
test.cpp 2KB
AdjListDirNetworkArc.h 961B
input.in 109B
ex3_shortestpath.vcxproj.user 168B
AdjListDirNetworkVex.h 930B
共 32 条
- 1
资源评论
tbznl
- 粉丝: 910
- 资源: 12
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功