一.邻接矩阵实现 思路:如果是邻接矩阵存储,设邻接矩阵为A,则A*A即为平方图,只需要矩阵相乘即可: 伪代码: for i=1 to n for j=1 to n for k=1 to n result[i][j]+=matrix[i][k]*matrix[k][j]; 算法复杂度 两个n维数组相乘,因此复杂度为O(V^3),当然可以通过Strassen算法稍加改进. 扩展:这种方法的作用是比如求u到v路径长度为k的路径数目,只需要求A^k,然后[u][v]即可. 算法正确性分析 命题:给定两点