数据结构第七次上机试验——最短路径

该博客介绍了一次数据结构实验,旨在通过输入图形、起点和终点,利用邻接矩阵求解最短路径及其长度。实验步骤包括构建邻接矩阵、打印矩阵、获取起点终点并输出最短路径信息。
摘要由CSDN通过智能技术生成

实验内容与要求:

       根据输入的图形,输入起点和终点,求出最短路径和最短路径的长度。

具体步骤:

       1. 编写一段代码,接收键盘的输入定点的数量,并以输入的整数作为边来建立图形的邻接矩阵(无向权重图)。

           例如:5 6 12 

           表示顶点5和顶点6之间有边,边的权重为12

       2. 打印出邻接矩阵。

       3. 输入起点和终点。

       4. 打印最短路径和最短路径的长度。

样例:数据测试

输入:

1 3 5
1 4 30
2 1 2
3 2 15
3 6 7
5 4 4
6 4 10
6 5 18

打印出1,5两点之间的最短距离和最短路径 

 代码

#include<iostream>
using namespace std;
#define MaxInt 32767
#define MVnum 100
typedef int VextexType;
typedef int ArcType;
bool vis[MVnum];
int dis[MVnum];
int Path[MVnum];
int path[MVnum];
typedef struct{
	ArcType arcs[MVnum][MVnum];
	int vexnum,arcnum;
}AMGraph;
void CreateUDN(AMGraph &G){
	cout<<"请输入顶点数和边数:";
	cin>>G.vexnum>>G.arcnum;
	for(int i=1
  • 1
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值