这个算法的核心思想是给定矩阵l和u,返回矩阵w。也就是它把已经计算出来的最短路径延长一条边。每次和最初L矩阵结合。
#include <cstdlib>
#include <iostream>
#define N 9999
using namespace std;
//这个题目需要申请三个矩阵,l矩阵一直不变即为原始矩阵,w矩阵是需要不断进行更新的,u矩阵为w矩阵赋给的值,以供后面修改w。
int l[5][5] = {
{0, 3, 8, N, -4}, {N, 0, N, 1, 7}, {N, 4, 0, N,N}, {2, N, -5, 0, N}, {N, N, N, 6, 0}};
//int l[6][6] = {
{0, N, N, N, -1, N}, {1, 0, N, 2, N, N}, {N,2, 0, N, N, -8}, {-4, N, N, 0, 3, N}, {N, 7, N, N, 0, N}, {N, 5,10, N, N, 0}};
int w[5][5];
int u[5][5];
void print()
{
}
void ExtendShortestPath()
{