文章目录
前言
博主是一名大二的学生,数据结构课题是城市最少交通时间,由于需要图形界面,所以自学了一点QT(B站的视频),基于C++所学知识和Floyd算法完成了课程设计。本文是我的课设报告分享,之后如果有需要会分享打包好的程序和源码供大家参考。
一、QT是什么?
QT是一个跨平台的 C++ 开发库,是一个跨平台的C++图形用户界面应用程序框架,主要用来开发图形用户界面。
二、课程设计
1.结点设计
template<class T>
struct EdgeType
{
T head, tail;
int cost;
EdgeType(T h = 0, T t = 0, int c = 0)
{
head = h; tail = t; cost = c;
}
};
template<class T>
struct Edge
{
T adjvex;
int lowcost;
};
template<class T>
2.构造函数
template<class T>
void MGraph<T>::create(QVector<T> v, int n, int e)
{
vexnum = n;
edgenum = e;
vexs.resize(vexnum);
edges.resize(vexnum);
for (int i = 0; i < n; i++)
edges[i].resize(vexnum);
for (int i = 0; i < n; i++)
vexs[i] = v[i];
//初始化edges数组
for (int i = 0; i < n; i++)
{
for (int j = 0; j