学习数据结构和算法的日常Demo
弗洛伊德算法介绍
弗洛伊德算法分析
- 以A顶点作为中间顶点是,B->A->C的距离由N->9,同理C到B;C->A->G的距离由N->12,同理G到C
- 更换中间顶点,循环执行操作,直到所有顶点都作为中间顶点更新后,计算结束
代码实现
public class FloydAlgorithm {
private static final int N = 65535;
public static void main(String args[]) {
char[] vertex = {
'A', 'B', 'C', 'D', 'E', 'F', 'G'};
//创建邻接矩阵
int[][] matrix = new int[vertex.length][vertex.length];
matrix[0] = new int[]{
0, 5, 7, N, N, N, 2};
matrix[1] = new int[]{
5, 0, N, 9, N, N, 3}