/**************************************************************************/
/* 算法实现作者:xingzhou */
/* 完成时间:2018/2/4 */
/* 邮箱:960020310@qq.com */
/*************************************************************************/
///Dijkstra.h
#pragma once
#include <iostream>
#include <string>
using namespace std;
//程序采用邻接矩阵存储图,利用Dijkstra算法求解最短路径
struct Dis
{
string path;
int value;
bool visit;
Dis()
{
visit = false;
value = 0;
path = "";
}
};
class Graph_DG
{
private:
int vexnum; //图的顶点个数
int edge; //图的边数
int **arc; //图的邻接矩阵
Dis *dis; //记录各个顶点最短路径的信息
public:
Graph_DG(int vexnum, int edge);
~Graph_DG();
//判断每次输入边是否合法
//顶点从1开始编号
bool check_edge_value(int start, int end, int weight);
//创建图
void createGraph();
//打印邻接矩阵
迪杰斯特拉最短路径算法
最新推荐文章于 2022-01-19 21:47:51 发布
本文介绍了使用邻接矩阵存储图,并通过迪杰斯特拉算法求解最短路径的C++实现。文章提供了完整的类定义和函数实现,包括创建图、打印图、计算最短路径及打印最短路径的方法。
摘要由CSDN通过智能技术生成