#include iostream#include MGraphcpp#include cstdlib int main systemcolor F0; cout项目实现人:顾文婧endl; char ch = A B C D E F G H I J; int n e; cout请输入有向图的顶点数=10:endl; cinn; ifn 0 n 10 throw 顶点数不合
难点1:输入的顶点数和边数需要进行合法性检查,如果不合法需要抛出异常。
解决方法:在输入顶点数和边数后,使用if语句进行合法性检查,如果不合法则使用throw语句抛出异常。
难点2:如何创建有向图的邻接矩阵。
解决方法:使用MGraph类的构造函数,传入顶点数组、顶点数和边数,构造一个空的邻接矩阵。然后通过用户输入的边信息,使用MGraph类的AddEdge方法将边加入邻接矩阵。
难点3:如何使用Floyd算法找出所有顶点之间的最短路径。
解决方法:在MGraph类中实现SelectAddressByFloyd方法,使用Floyd算法找出所有顶点之间的最短路径,并输出到控制台。
原文地址: https://www.cveoy.top/t/topic/iSOo 著作权归作者所有。请勿转载和采集!