C语言数据结构学习笔记(19)-有向网图的最短路径-Dijkstra算法及路径打印

/*
有向网图的最短路径-Dijkstra算法及路径打印
输出结果:
请输入图的顶点和弧的个数:
7 12
请依次输入图的7个顶点信息:
V0
V1
V2
V3
V4
V5
V6
请依次输入图的弧<Vi, Vj>上下标及对应权值:
0 1 2
0 3 1
1 3 3
1 4 10
2 0 4
2 5 5
3 2 2
3 4 2
3 5 8
3 6 4
4 6 6
6 5 1
图的邻接矩阵为:
        V0      V1      V2      V3      V4      V5      V6
V0      0       2       ∞       1       ∞       ∞       ∞
V1      ∞       0       ∞       3       10      ∞       ∞
V2      4       ∞       0       ∞       ∞       5       ∞
V3      ∞       ∞       2       0       2       8       4
V4      ∞       ∞       ∞       ∞       0       ∞       6
V5      ∞       ∞       ∞       ∞       ∞       0       ∞
V6      ∞       ∞       ∞       ∞       ∞       1       0
请输入起始最短路径顶点下标:
0
path[]: 0 0 3 0 3 6 3
dist[]: 0 2 3 1 3 6 5
flag[]: 1 1 1 1 1 1 1
起始顶点到各顶点路径和距离为:
V0-V0:V0-->V0-->(0)
V0-V1:V0-->V1-->(2)
V0-V2:V0-->V3-->V2-->(3)
V0-V3:V0-->V3-->(1)
V0-V4:V0-->V3-->V4-->(3)
V0-V5:V0-->V3-->V6-->V5-->(6)
V0-V6:V0-->V3-->V6-->(5)
请按任意键继续. . .
*/
# include <stdio.h>
# include <stdlib.h>
# define VEXMAX 100
# define SIZE 5
# define INF 0X3f3f3f3f
typedef char VertexType[SIZE];
typedef int EdgeType;
typedef struct

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值