warShall通俗的讲就是计算有向图的传递闭包,进而转化为一个图结构中任意两点的可达情况(该算法的时间复杂度为O(n^3))
#include <iostream>
using namespace std;
int count;//用来计算判断次数
const int N = 10;
//二维数组可以没有行,但必须有列,这里假定最大阶为10
void warShall(int M[][N], int n){
//最外层循环代表以i为内部顶点,可以经过i到达其它点
for(int i = 0; i < n; i++){
//里面这两层循环代表由j点出发经i点到达k点
for (int j = 0; j < n; j++) {
for (int k = 0; k < n; k