JavaScript数据结构19—最短路径Floyd算法

弗洛伊德算法适用于为图中每一个顶点求最短路径,思路如下

  1. 检查图中任何一个 到 任何另一个点能否通过第一个点降低最短路径,若成立,降低路径,修改路径表
  • 检查图中任何一个 到 任何另一个点能否通过第二个点降低最短路径,若成立,降低路径,修改路径表
  • ......
  • 检查图中任何一个 到 任何另一个点能否通过最后一个点降低最短路径,若成立,降低路径,修改路径表
//最短路径算法Floyd 弗洛伊德算法
//用邻接矩阵存储一个图
//顶点
function Vertex(name) {
  this.name =name;
}
//邻接矩阵
//maxvex:顶点数
function arc(maxvex){
  this.maxvex = maxvex;
  this.arcnum = 0;
  this.data = new Array(maxvex);
  for (var i = 0; i < this.data.length; i++) {
    this.data[i] = new Array(maxvex);
    for (var j = 0; j < this.data[i].length; j++) {
      this.data[i][j] = Infinity;
      if(i==j){
        this.data[i][j] = 0;
      }
    }
  }
}
//图
function Mgraph(maxvex,vertexs){
  this.arc = new arc(maxvex);
  this.vertexs = vertexs;
}
//添加边,构造无向边
Mgraph.prototype.addArc = function(start,end,length){
  var i = this.vertexs.indexOf(start);
  var j = this.vertexs.indexOf(end);
  this.arc.data[i][j] = length;
  this.arc.data[j][i] = length;
  this.arc.arcnum++;
}
Mgraph.prototype.shortPath_Floyd = function(v0){
  console.info('开始初始化:准备计算'+v0.name+'到各个节点的最短路径');
  var v0_index = this.vertexs.indexOf(v0);
  var pathmatrix = new Array(this.arc.maxvex);//最短路径下标数组
  var shortpathtable = new Array(this.arc.maxvex);//存储到各点的最短路径的权值和
  for (var i = 0; i < this.arc.maxvex; i++) {
    pathmatrix[i] = new Array(this.arc.maxvex);
    shortpathtable[i] = new Array(this.arc.maxvex);
  }
  for (var i = 0; i < this.arc.maxvex; i++) {
    for (var j = 0; j < this.arc.maxvex; j++) {
      shortpathtable[i][j] = this.arc.data[i][j];
      pathmatrix[i][j] = j;
    }
  }
  console.info('初始化完毕:pathmatrix:\n'+JSON.stringify(pathmatrix));
  console.info('初始化完毕:shortpathtable:\n'+shortpathtable);
  for (var i = 0; i < this.arc.maxvex; i++) {
    for (var j = 0; j < this.arc.maxvex; j++) {
      for (var k = 0; k < this.arc.maxvex; k++) {
        //以下代码用于调试
        var itemp = this.vertexs[0].name;
        for (var m = 1; m < i; m++) {
          itemp += ','+this.vertexs[m].name;
        }
        console.info('检查点'+this.vertexs[j].name+'到'+this.vertexs[k].name+'是否通过点'
          +itemp+'来降低路径');
         //以上代码用于调试
        if(shortpathtable[j][k]>shortpathtable[j][i]+shortpathtable[i][k]){
          console.info('发现由点'+this.vertexs[j].name+'到'+this.vertexs[k]
            .name+'的路径是'+shortpathtable[j][k]);
          console.info('发现由点'+this.vertexs[j].name+'到'+this.vertexs[i].name+
            '到'+this.vertexs[k].name+'的路径是'+
            (shortpathtable[j][i]+shortpathtable[i][k]));
          shortpathtable[j][k] = shortpathtable[j][i]+shortpathtable[i][k];
          pathmatrix[j][k] = pathmatrix[j][i];
        }
      }
    } 
  }
  var temp;
  var tempString;
  for (var i = 0; i < this.arc.maxvex; i++) {
    for (var j = 0; j < this.arc.maxvex; j++) {
      tempString = '';
      tempString += i+' - '+j+'的最短路径是'+shortpathtable[i][j]+';路径是';
      temp = pathmatrix[i][j];
      tempString += i;
      while(temp!=j){
        tempString += ' -> '+ temp;
        temp = pathmatrix[temp][j];
      }
      tempString += ' -> '+j;
    }
    console.info(tempString);
  }
}
//建造一个
var v0 = new Vertex('V0');
var v1 = new Vertex('V1');
var v2 = new Vertex('V2');
var v3 = new Vertex('V3');
var v4 = new Vertex('V4');
var v5 = new Vertex('V5');
var v6 = new Vertex('V6');
var v7 = new Vertex('V7');
var v8 = new Vertex('V8');
var vertexs = [v0,v1,v2,v3,v4,v5,v6,v7,v8];
var mgraph = new Mgraph(9,vertexs);
mgraph.addArc(v1,v0,10);
mgraph.addArc(v0,v5,11);
mgraph.addArc(v1,v2,18);
mgraph.addArc(v1,v8,12);
mgraph.addArc(v1,v6,16);
mgraph.addArc(v2,v8,8);
mgraph.addArc(v2,v3,22);
mgraph.addArc(v3,v8,21);
mgraph.addArc(v3,v4,20);
mgraph.addArc(v3,v7,16);
mgraph.addArc(v3,v6,24);
mgraph.addArc(v4,v7,7);
mgraph.addArc(v4,v5,26);
mgraph.addArc(v5,v6,17);
//mgraph.shortPath_Dijkstra(v0);
mgraph.shortPath_Floyd(v0);

输出

开始初始化:准备计算V0到各个节点的最短路径
初始化完毕:pathmatrix:
[[0,1,2,3,4,5,6,7,8],[0,1,2,3,4,5,6,7,8],[0,1,2,3,4,5,6,7,8],[0,1,2,3,4,5,6,7,8],[0,1,2,3,4,5,6,7,8],[0,1,2,3,4,5,6,7,8],[0,1,2,3,4,5,6,7,8],[0,1,2,3,4,5,6,7,8],[0,1,2,3,4,5,6,7,8]]
初始化完毕:shortpathtable:
0,10,Infinity,Infinity,Infinity,11,Infinity,Infinity,Infinity,10,0,18,Infinity,Infinity,Infinity,16,Infinity,12,Infinity,18,0,22,Infinity,Infinity,Infinity,Infinity,8,Infinity,Infinity,22,0,20,Infinity,24,16,21,Infinity,Infinity,Infinity,20,0,26,Infinity,7,Infinity,11,Infinity,Infinity,Infinity,26,0,17,Infinity,Infinity,Infinity,16,Infinity,24,Infinity,17,0,Infinity,Infinity,Infinity,Infinity,Infinity,16,7,Infinity,Infinity,0,Infinity,Infinity,12,8,21,Infinity,Infinity,Infinity,Infinity,0
检查点V0到V0是否通过点V0来降低路径
检查点V0到V1是否通过点V0来降低路径
检查点V0到V2是否通过点V0来降低路径
检查点V0到V3是否通过点V0来降低路径
检查点V0到V4是否通过点V0来降低路径
检查点V0到V5是否通过点V0来降低路径
检查点V0到V6是否通过点V0来降低路径
检查点V0到V7是否通过点V0来降低路径
检查点V0到V8是否通过点V0来降低路径
检查点V1到V0是否通过点V0来降低路径
检查点V1到V1是否通过点V0来降低路径
检查点V1到V2是否通过点V0来降低路径
检查点V1到V3是否通过点V0来降低路径
检查点V1到V4是否通过点V0来降低路径
检查点V1到V5是否通过点V0来降低路径
发现由点V1到V5的路径是Infinity
发现由点V1到V0到V5的路径是21
检查点V1到V6是否通过点V0来降低路径
检查点V1到V7是否通过点V0来降低路径
检查点V1到V8是否通过点V0来降低路径
检查点V2到V0是否通过点V0来降低路径
检查点V2到V1是否通过点V0来降低路径
检查点V2到V2是否通过点V0来降低路径
检查点V2到V3是否通过点V0来降低路径
检查点V2到V4是否通过点V0来降低路径
检查点V2到V5是否通过点V0来降低路径
检查点V2到V6是否通过点V0来降低路径
检查点V2到V7是否通过点V0来降低路径
检查点V2到V8是否通过点V0来降低路径
检查点V3到V0是否通过点V0来降低路径
检查点V3到V1是否通过点V0来降低路径
检查点V3到V2是否通过点V0来降低路径
检查点V3到V3是否通过点V0来降低路径
检查点V3到V4是否通过点V0来降低路径
检查点V3到V5是否通过点V0来降低路径
检查点V3到V6是否通过点V0来降低路径
检查点V3到V7是否通过点V0来降低路径
检查点V3到V8是否通过点V0来降低路径
检查点V4到V0是否通过点V0来降低路径
检查点V4到V1是否通过点V0来降低路径
检查点V4到V2是否通过点V0来降低路径
检查点V4到V3是否通过点V0来降低路径
检查点V4到V4是否通过点V0来降低路径
检查点V4到V5是否通过点V0来降低路径
检查点V4到V6是否通过点V0来降低路径
检查点V4到V7是否通过点V0来降低路径
检查点V4到V8是否通过点V0来降低路径
检查点V5到V0是否通过点V0来降低路径
检查点V5到V1是否通过点V0来降低路径
发现由点V5到V1的路径是Infinity
发现由点V5到V0到V1的路径是21
检查点V5到V2是否通过点V0来降低路径
检查点V5到V3是否通过点V0来降低路径
检查点V5到V4是否通过点V0来降低路径
检查点V5到V5是否通过点V0来降低路径
检查点V5到V6是否通过点V0来降低路径
检查点V5到V7是否通过点V0来降低路径
检查点V5到V8是否通过点V0来降低路径
检查点V6到V0是否通过点V0来降低路径
检查点V6到V1是否通过点V0来降低路径
检查点V6到V2是否通过点V0来降低路径
检查点V6到V3是否通过点V0来降低路径
检查点V6到V4是否通过点V0来降低路径
检查点V6到V5是否通过点V0来降低路径
检查点V6到V6是否通过点V0来降低路径
检查点V6到V7是否通过点V0来降低路径
检查点V6到V8是否通过点V0来降低路径
检查点V7到V0是否通过点V0来降低路径
检查点V7到V1是否通过点V0来降低路径
检查点V7到V2是否通过点V0来降低路径
检查点V7到V3是否通过点V0来降低路径
检查点V7到V4是否通过点V0来降低路径
检查点V7到V5是否通过点V0来降低路径
检查点V7到V6是否通过点V0来降低路径
检查点V7到V7是否通过点V0来降低路径
检查点V7到V8是否通过点V0来降低路径
检查点V8到V0是否通过点V0来降低路径
检查点V8到V1是否通过点V0来降低路径
检查点V8到V2是否通过点V0来降低路径
检查点V8到V3是否通过点V0来降低路径
检查点V8到V4是否通过点V0来降低路径
检查点V8到V5是否通过点V0来降低路径
检查点V8到V6是否通过点V0来降低路径
检查点V8到V7是否通过点V0来降低路径
检查点V8到V8是否通过点V0来降低路径
检查点V0到V0是否通过点V0来降低路径
检查点V0到V1是否通过点V0来降低路径
检查点V0到V2是否通过点V0来降低路径
发现由点V0到V2的路径是Infinity
发现由点V0到V1到V2的路径是28
检查点V0到V3是否通过点V0来降低路径
检查点V0到V4是否通过点V0来降低路径
检查点V0到V5是否通过点V0来降低路径
检查点V0到V6是否通过点V0来降低路径
发现由点V0到V6的路径是Infinity
发现由点V0到V1到V6的路径是26
检查点V0到V7是否通过点V0来降低路径
检查点V0到V8是否通过点V0来降低路径
发现由点V0到V8的路径是Infinity
发现由点V0到V1到V8的路径是22
检查点V1到V0是否通过点V0来降低路径
检查点V1到V1是否通过点V0来降低路径
检查点V1到V2是否通过点V0来降低路径
检查点V1到V3是否通过点V0来降低路径
检查点V1到V4是否通过点V0来降低路径
检查点V1到V5是否通过点V0来降低路径
检查点V1到V6是否通过点V0来降低路径
检查点V1到V7是否通过点V0来降低路径
检查点V1到V8是否通过点V0来降低路径
检查点V2到V0是否通过点V0来降低路径
发现由点V2到V0的路径是Infinity
发现由点V2到V1到V0的路径是28
检查点V2到V1是否通过点V0来降低路径
检查点V2到V2是否通过点V0来降低路径
检查点V2到V3是否通过点V0来降低路径
检查点V2到V4是否通过点V0来降低路径
检查点V2到V5是否通过点V0来降低路径
发现由点V2到V5的路径是Infinity
发现由点V2到V1到V5的路径是39
检查点V2到V6是否通过点V0来降低路径
发现由点V2到V6的路径是Infinity
发现由点V2到V1到V6的路径是34
检查点V2到V7是否通过点V0来降低路径
检查点V2到V8是否通过点V0来降低路径
检查点V3到V0是否通过点V0来降低路径
检查点V3到V1是否通过点V0来降低路径
检查点V3到V2是否通过点V0来降低路径
检查点V3到V3是否通过点V0来降低路径
检查点V3到V4是否通过点V0来降低路径
检查点V3到V5是否通过点V0来降低路径
检查点V3到V6是否通过点V0来降低路径
检查点V3到V7是否通过点V0来降低路径
检查点V3到V8是否通过点V0来降低路径
检查点V4到V0是否通过点V0来降低路径
检查点V4到V1是否通过点V0来降低路径
检查点V4到V2是否通过点V0来降低路径
检查点V4到V3是否通过点V0来降低路径
检查点V4到V4是否通过点V0来降低路径
检查点V4到V5是否通过点V0来降低路径
检查点V4到V6是否通过点V0来降低路径
检查点V4到V7是否通过点V0来降低路径
检查点V4到V8是否通过点V0来降低路径
检查点V5到V0是否通过点V0来降低路径
检查点V5到V1是否通过点V0来降低路径
检查点V5到V2是否通过点V0来降低路径
发现由点V5到V2的路径是Infinity
发现由点V5到V1到V2的路径是39
检查点V5到V3是否通过点V0来降低路径
检查点V5到V4是否通过点V0来降低路径
检查点V5到V5是否通过点V0来降低路径
检查点V5到V6是否通过点V0来降低路径
检查点V5到V7是否通过点V0来降低路径
检查点V5到V8是否通过点V0来降低路径
发现由点V5到V8的路径是Infinity
发现由点V5到V1到V8的路径是33
检查点V6到V0是否通过点V0来降低路径
发现由点V6到V0的路径是Infinity
发现由点V6到V1到V0的路径是26
检查点V6到V1是否通过点V0来降低路径
检查点V6到V2是否通过点V0来降低路径
发现由点V6到V2的路径是Infinity
发现由点V6到V1到V2的路径是34
检查点V6到V3是否通过点V0来降低路径
检查点V6到V4是否通过点V0来降低路径
检查点V6到V5是否通过点V0来降低路径
检查点V6到V6是否通过点V0来降低路径
检查点V6到V7是否通过点V0来降低路径
检查点V6到V8是否通过点V0来降低路径
发现由点V6到V8的路径是Infinity
发现由点V6到V1到V8的路径是28
检查点V7到V0是否通过点V0来降低路径
检查点V7到V1是否通过点V0来降低路径
检查点V7到V2是否通过点V0来降低路径
检查点V7到V3是否通过点V0来降低路径
检查点V7到V4是否通过点V0来降低路径
检查点V7到V5是否通过点V0来降低路径
检查点V7到V6是否通过点V0来降低路径
检查点V7到V7是否通过点V0来降低路径
检查点V7到V8是否通过点V0来降低路径
检查点V8到V0是否通过点V0来降低路径
发现由点V8到V0的路径是Infinity
发现由点V8到V1到V0的路径是22
检查点V8到V1是否通过点V0来降低路径
检查点V8到V2是否通过点V0来降低路径
检查点V8到V3是否通过点V0来降低路径
检查点V8到V4是否通过点V0来降低路径
检查点V8到V5是否通过点V0来降低路径
发现由点V8到V5的路径是Infinity
发现由点V8到V1到V5的路径是33
检查点V8到V6是否通过点V0来降低路径
发现由点V8到V6的路径是Infinity
发现由点V8到V1到V6的路径是28
检查点V8到V7是否通过点V0来降低路径
检查点V8到V8是否通过点V0来降低路径
检查点V0到V0是否通过点V0,V1来降低路径
检查点V0到V1是否通过点V0,V1来降低路径
检查点V0到V2是否通过点V0,V1来降低路径
检查点V0到V3是否通过点V0,V1来降低路径
发现由点V0到V3的路径是Infinity
发现由点V0到V2到V3的路径是50
检查点V0到V4是否通过点V0,V1来降低路径
检查点V0到V5是否通过点V0,V1来降低路径
检查点V0到V6是否通过点V0,V1来降低路径
检查点V0到V7是否通过点V0,V1来降低路径
检查点V0到V8是否通过点V0,V1来降低路径
检查点V1到V0是否通过点V0,V1来降低路径
检查点V1到V1是否通过点V0,V1来降低路径
检查点V1到V2是否通过点V0,V1来降低路径
检查点V1到V3是否通过点V0,V1来降低路径
发现由点V1到V3的路径是Infinity
发现由点V1到V2到V3的路径是40
检查点V1到V4是否通过点V0,V1来降低路径
检查点V1到V5是否通过点V0,V1来降低路径
检查点V1到V6是否通过点V0,V1来降低路径
检查点V1到V7是否通过点V0,V1来降低路径
检查点V1到V8是否通过点V0,V1来降低路径
检查点V2到V0是否通过点V0,V1来降低路径
检查点V2到V1是否通过点V0,V1来降低路径
检查点V2到V2是否通过点V0,V1来降低路径
检查点V2到V3是否通过点V0,V1来降低路径
检查点V2到V4是否通过点V0,V1来降低路径
检查点V2到V5是否通过点V0,V1来降低路径
检查点V2到V6是否通过点V0,V1来降低路径
检查点V2到V7是否通过点V0,V1来降低路径
检查点V2到V8是否通过点V0,V1来降低路径
检查点V3到V0是否通过点V0,V1来降低路径
发现由点V3到V0的路径是Infinity
发现由点V3到V2到V0的路径是50
检查点V3到V1是否通过点V0,V1来降低路径
发现由点V3到V1的路径是Infinity
发现由点V3到V2到V1的路径是40
检查点V3到V2是否通过点V0,V1来降低路径
检查点V3到V3是否通过点V0,V1来降低路径
检查点V3到V4是否通过点V0,V1来降低路径
检查点V3到V5是否通过点V0,V1来降低路径
发现由点V3到V5的路径是Infinity
发现由点V3到V2到V5的路径是61
检查点V3到V6是否通过点V0,V1来降低路径
检查点V3到V7是否通过点V0,V1来降低路径
检查点V3到V8是否通过点V0,V1来降低路径
检查点V4到V0是否通过点V0,V1来降低路径
检查点V4到V1是否通过点V0,V1来降低路径
检查点V4到V2是否通过点V0,V1来降低路径
检查点V4到V3是否通过点V0,V1来降低路径
检查点V4到V4是否通过点V0,V1来降低路径
检查点V4到V5是否通过点V0,V1来降低路径
检查点V4到V6是否通过点V0,V1来降低路径
检查点V4到V7是否通过点V0,V1来降低路径
检查点V4到V8是否通过点V0,V1来降低路径
检查点V5到V0是否通过点V0,V1来降低路径
检查点V5到V1是否通过点V0,V1来降低路径
检查点V5到V2是否通过点V0,V1来降低路径
检查点V5到V3是否通过点V0,V1来降低路径
发现由点V5到V3的路径是Infinity
发现由点V5到V2到V3的路径是61
检查点V5到V4是否通过点V0,V1来降低路径
检查点V5到V5是否通过点V0,V1来降低路径
检查点V5到V6是否通过点V0,V1来降低路径
检查点V5到V7是否通过点V0,V1来降低路径
检查点V5到V8是否通过点V0,V1来降低路径
检查点V6到V0是否通过点V0,V1来降低路径
检查点V6到V1是否通过点V0,V1来降低路径
检查点V6到V2是否通过点V0,V1来降低路径
检查点V6到V3是否通过点V0,V1来降低路径
检查点V6到V4是否通过点V0,V1来降低路径
检查点V6到V5是否通过点V0,V1来降低路径
检查点V6到V6是否通过点V0,V1来降低路径
检查点V6到V7是否通过点V0,V1来降低路径
检查点V6到V8是否通过点V0,V1来降低路径
检查点V7到V0是否通过点V0,V1来降低路径
检查点V7到V1是否通过点V0,V1来降低路径
检查点V7到V2是否通过点V0,V1来降低路径
检查点V7到V3是否通过点V0,V1来降低路径
检查点V7到V4是否通过点V0,V1来降低路径
检查点V7到V5是否通过点V0,V1来降低路径
检查点V7到V6是否通过点V0,V1来降低路径
检查点V7到V7是否通过点V0,V1来降低路径
检查点V7到V8是否通过点V0,V1来降低路径
检查点V8到V0是否通过点V0,V1来降低路径
检查点V8到V1是否通过点V0,V1来降低路径
检查点V8到V2是否通过点V0,V1来降低路径
检查点V8到V3是否通过点V0,V1来降低路径
检查点V8到V4是否通过点V0,V1来降低路径
检查点V8到V5是否通过点V0,V1来降低路径
检查点V8到V6是否通过点V0,V1来降低路径
检查点V8到V7是否通过点V0,V1来降低路径
检查点V8到V8是否通过点V0,V1来降低路径
检查点V0到V0是否通过点V0,V1,V2来降低路径
检查点V0到V1是否通过点V0,V1,V2来降低路径
检查点V0到V2是否通过点V0,V1,V2来降低路径
检查点V0到V3是否通过点V0,V1,V2来降低路径
检查点V0到V4是否通过点V0,V1,V2来降低路径
发现由点V0到V4的路径是Infinity
发现由点V0到V3到V4的路径是70
检查点V0到V5是否通过点V0,V1,V2来降低路径
检查点V0到V6是否通过点V0,V1,V2来降低路径
检查点V0到V7是否通过点V0,V1,V2来降低路径
发现由点V0到V7的路径是Infinity
发现由点V0到V3到V7的路径是66
检查点V0到V8是否通过点V0,V1,V2来降低路径
检查点V1到V0是否通过点V0,V1,V2来降低路径
检查点V1到V1是否通过点V0,V1,V2来降低路径
检查点V1到V2是否通过点V0,V1,V2来降低路径
检查点V1到V3是否通过点V0,V1,V2来降低路径
检查点V1到V4是否通过点V0,V1,V2来降低路径
发现由点V1到V4的路径是Infinity
发现由点V1到V3到V4的路径是60
检查点V1到V5是否通过点V0,V1,V2来降低路径
检查点V1到V6是否通过点V0,V1,V2来降低路径
检查点V1到V7是否通过点V0,V1,V2来降低路径
发现由点V1到V7的路径是Infinity
发现由点V1到V3到V7的路径是56
检查点V1到V8是否通过点V0,V1,V2来降低路径
检查点V2到V0是否通过点V0,V1,V2来降低路径
检查点V2到V1是否通过点V0,V1,V2来降低路径
检查点V2到V2是否通过点V0,V1,V2来降低路径
检查点V2到V3是否通过点V0,V1,V2来降低路径
检查点V2到V4是否通过点V0,V1,V2来降低路径
发现由点V2到V4的路径是Infinity
发现由点V2到V3到V4的路径是42
检查点V2到V5是否通过点V0,V1,V2来降低路径
检查点V2到V6是否通过点V0,V1,V2来降低路径
检查点V2到V7是否通过点V0,V1,V2来降低路径
发现由点V2到V7的路径是Infinity
发现由点V2到V3到V7的路径是38
检查点V2到V8是否通过点V0,V1,V2来降低路径
检查点V3到V0是否通过点V0,V1,V2来降低路径
检查点V3到V1是否通过点V0,V1,V2来降低路径
检查点V3到V2是否通过点V0,V1,V2来降低路径
检查点V3到V3是否通过点V0,V1,V2来降低路径
检查点V3到V4是否通过点V0,V1,V2来降低路径
检查点V3到V5是否通过点V0,V1,V2来降低路径
检查点V3到V6是否通过点V0,V1,V2来降低路径
检查点V3到V7是否通过点V0,V1,V2来降低路径
检查点V3到V8是否通过点V0,V1,V2来降低路径
检查点V4到V0是否通过点V0,V1,V2来降低路径
发现由点V4到V0的路径是Infinity
发现由点V4到V3到V0的路径是70
检查点V4到V1是否通过点V0,V1,V2来降低路径
发现由点V4到V1的路径是Infinity
发现由点V4到V3到V1的路径是60
检查点V4到V2是否通过点V0,V1,V2来降低路径
发现由点V4到V2的路径是Infinity
发现由点V4到V3到V2的路径是42
检查点V4到V3是否通过点V0,V1,V2来降低路径
检查点V4到V4是否通过点V0,V1,V2来降低路径
检查点V4到V5是否通过点V0,V1,V2来降低路径
检查点V4到V6是否通过点V0,V1,V2来降低路径
发现由点V4到V6的路径是Infinity
发现由点V4到V3到V6的路径是44
检查点V4到V7是否通过点V0,V1,V2来降低路径
检查点V4到V8是否通过点V0,V1,V2来降低路径
发现由点V4到V8的路径是Infinity
发现由点V4到V3到V8的路径是41
检查点V5到V0是否通过点V0,V1,V2来降低路径
检查点V5到V1是否通过点V0,V1,V2来降低路径
检查点V5到V2是否通过点V0,V1,V2来降低路径
检查点V5到V3是否通过点V0,V1,V2来降低路径
检查点V5到V4是否通过点V0,V1,V2来降低路径
检查点V5到V5是否通过点V0,V1,V2来降低路径
检查点V5到V6是否通过点V0,V1,V2来降低路径
检查点V5到V7是否通过点V0,V1,V2来降低路径
发现由点V5到V7的路径是Infinity
发现由点V5到V3到V7的路径是77
检查点V5到V8是否通过点V0,V1,V2来降低路径
检查点V6到V0是否通过点V0,V1,V2来降低路径
检查点V6到V1是否通过点V0,V1,V2来降低路径
检查点V6到V2是否通过点V0,V1,V2来降低路径
检查点V6到V3是否通过点V0,V1,V2来降低路径
检查点V6到V4是否通过点V0,V1,V2来降低路径
发现由点V6到V4的路径是Infinity
发现由点V6到V3到V4的路径是44
检查点V6到V5是否通过点V0,V1,V2来降低路径
检查点V6到V6是否通过点V0,V1,V2来降低路径
检查点V6到V7是否通过点V0,V1,V2来降低路径
发现由点V6到V7的路径是Infinity
发现由点V6到V3到V7的路径是40
检查点V6到V8是否通过点V0,V1,V2来降低路径
检查点V7到V0是否通过点V0,V1,V2来降低路径
发现由点V7到V0的路径是Infinity
发现由点V7到V3到V0的路径是66
检查点V7到V1是否通过点V0,V1,V2来降低路径
发现由点V7到V1的路径是Infinity
发现由点V7到V3到V1的路径是56
检查点V7到V2是否通过点V0,V1,V2来降低路径
发现由点V7到V2的路径是Infinity
发现由点V7到V3到V2的路径是38
检查点V7到V3是否通过点V0,V1,V2来降低路径
检查点V7到V4是否通过点V0,V1,V2来降低路径
检查点V7到V5是否通过点V0,V1,V2来降低路径
发现由点V7到V5的路径是Infinity
发现由点V7到V3到V5的路径是77
检查点V7到V6是否通过点V0,V1,V2来降低路径
发现由点V7到V6的路径是Infinity
发现由点V7到V3到V6的路径是40
检查点V7到V7是否通过点V0,V1,V2来降低路径
检查点V7到V8是否通过点V0,V1,V2来降低路径
发现由点V7到V8的路径是Infinity
发现由点V7到V3到V8的路径是37
检查点V8到V0是否通过点V0,V1,V2来降低路径
检查点V8到V1是否通过点V0,V1,V2来降低路径
检查点V8到V2是否通过点V0,V1,V2来降低路径
检查点V8到V3是否通过点V0,V1,V2来降低路径
检查点V8到V4是否通过点V0,V1,V2来降低路径
发现由点V8到V4的路径是Infinity
发现由点V8到V3到V4的路径是41
检查点V8到V5是否通过点V0,V1,V2来降低路径
检查点V8到V6是否通过点V0,V1,V2来降低路径
检查点V8到V7是否通过点V0,V1,V2来降低路径
发现由点V8到V7的路径是Infinity
发现由点V8到V3到V7的路径是37
检查点V8到V8是否通过点V0,V1,V2来降低路径
检查点V0到V0是否通过点V0,V1,V2,V3来降低路径
检查点V0到V1是否通过点V0,V1,V2,V3来降低路径
检查点V0到V2是否通过点V0,V1,V2,V3来降低路径
检查点V0到V3是否通过点V0,V1,V2,V3来降低路径
检查点V0到V4是否通过点V0,V1,V2,V3来降低路径
检查点V0到V5是否通过点V0,V1,V2,V3来降低路径
检查点V0到V6是否通过点V0,V1,V2,V3来降低路径
检查点V0到V7是否通过点V0,V1,V2,V3来降低路径
检查点V0到V8是否通过点V0,V1,V2,V3来降低路径
检查点V1到V0是否通过点V0,V1,V2,V3来降低路径
检查点V1到V1是否通过点V0,V1,V2,V3来降低路径
检查点V1到V2是否通过点V0,V1,V2,V3来降低路径
检查点V1到V3是否通过点V0,V1,V2,V3来降低路径
检查点V1到V4是否通过点V0,V1,V2,V3来降低路径
检查点V1到V5是否通过点V0,V1,V2,V3来降低路径
检查点V1到V6是否通过点V0,V1,V2,V3来降低路径
检查点V1到V7是否通过点V0,V1,V2,V3来降低路径
检查点V1到V8是否通过点V0,V1,V2,V3来降低路径
检查点V2到V0是否通过点V0,V1,V2,V3来降低路径
检查点V2到V1是否通过点V0,V1,V2,V3来降低路径
检查点V2到V2是否通过点V0,V1,V2,V3来降低路径
检查点V2到V3是否通过点V0,V1,V2,V3来降低路径
检查点V2到V4是否通过点V0,V1,V2,V3来降低路径
检查点V2到V5是否通过点V0,V1,V2,V3来降低路径
检查点V2到V6是否通过点V0,V1,V2,V3来降低路径
检查点V2到V7是否通过点V0,V1,V2,V3来降低路径
检查点V2到V8是否通过点V0,V1,V2,V3来降低路径
检查点V3到V0是否通过点V0,V1,V2,V3来降低路径
检查点V3到V1是否通过点V0,V1,V2,V3来降低路径
检查点V3到V2是否通过点V0,V1,V2,V3来降低路径
检查点V3到V3是否通过点V0,V1,V2,V3来降低路径
检查点V3到V4是否通过点V0,V1,V2,V3来降低路径
检查点V3到V5是否通过点V0,V1,V2,V3来降低路径
发现由点V3到V5的路径是61
发现由点V3到V4到V5的路径是46
检查点V3到V6是否通过点V0,V1,V2,V3来降低路径
检查点V3到V7是否通过点V0,V1,V2,V3来降低路径
检查点V3到V8是否通过点V0,V1,V2,V3来降低路径
检查点V4到V0是否通过点V0,V1,V2,V3来降低路径
检查点V4到V1是否通过点V0,V1,V2,V3来降低路径
检查点V4到V2是否通过点V0,V1,V2,V3来降低路径
检查点V4到V3是否通过点V0,V1,V2,V3来降低路径
检查点V4到V4是否通过点V0,V1,V2,V3来降低路径
检查点V4到V5是否通过点V0,V1,V2,V3来降低路径
检查点V4到V6是否通过点V0,V1,V2,V3来降低路径
检查点V4到V7是否通过点V0,V1,V2,V3来降低路径
检查点V4到V8是否通过点V0,V1,V2,V3来降低路径
检查点V5到V0是否通过点V0,V1,V2,V3来降低路径
检查点V5到V1是否通过点V0,V1,V2,V3来降低路径
检查点V5到V2是否通过点V0,V1,V2,V3来降低路径
检查点V5到V3是否通过点V0,V1,V2,V3来降低路径
发现由点V5到V3的路径是61
发现由点V5到V4到V3的路径是46
检查点V5到V4是否通过点V0,V1,V2,V3来降低路径
检查点V5到V5是否通过点V0,V1,V2,V3来降低路径
检查点V5到V6是否通过点V0,V1,V2,V3来降低路径
检查点V5到V7是否通过点V0,V1,V2,V3来降低路径
发现由点V5到V7的路径是77
发现由点V5到V4到V7的路径是33
检查点V5到V8是否通过点V0,V1,V2,V3来降低路径
检查点V6到V0是否通过点V0,V1,V2,V3来降低路径
检查点V6到V1是否通过点V0,V1,V2,V3来降低路径
检查点V6到V2是否通过点V0,V1,V2,V3来降低路径
检查点V6到V3是否通过点V0,V1,V2,V3来降低路径
检查点V6到V4是否通过点V0,V1,V2,V3来降低路径
检查点V6到V5是否通过点V0,V1,V2,V3来降低路径
检查点V6到V6是否通过点V0,V1,V2,V3来降低路径
检查点V6到V7是否通过点V0,V1,V2,V3来降低路径
检查点V6到V8是否通过点V0,V1,V2,V3来降低路径
检查点V7到V0是否通过点V0,V1,V2,V3来降低路径
检查点V7到V1是否通过点V0,V1,V2,V3来降低路径
检查点V7到V2是否通过点V0,V1,V2,V3来降低路径
检查点V7到V3是否通过点V0,V1,V2,V3来降低路径
检查点V7到V4是否通过点V0,V1,V2,V3来降低路径
检查点V7到V5是否通过点V0,V1,V2,V3来降低路径
发现由点V7到V5的路径是77
发现由点V7到V4到V5的路径是33
检查点V7到V6是否通过点V0,V1,V2,V3来降低路径
检查点V7到V7是否通过点V0,V1,V2,V3来降低路径
检查点V7到V8是否通过点V0,V1,V2,V3来降低路径
检查点V8到V0是否通过点V0,V1,V2,V3来降低路径
检查点V8到V1是否通过点V0,V1,V2,V3来降低路径
检查点V8到V2是否通过点V0,V1,V2,V3来降低路径
检查点V8到V3是否通过点V0,V1,V2,V3来降低路径
检查点V8到V4是否通过点V0,V1,V2,V3来降低路径
检查点V8到V5是否通过点V0,V1,V2,V3来降低路径
检查点V8到V6是否通过点V0,V1,V2,V3来降低路径
检查点V8到V7是否通过点V0,V1,V2,V3来降低路径
检查点V8到V8是否通过点V0,V1,V2,V3来降低路径
检查点V0到V0是否通过点V0,V1,V2,V3,V4来降低路径
检查点V0到V1是否通过点V0,V1,V2,V3,V4来降低路径
检查点V0到V2是否通过点V0,V1,V2,V3,V4来降低路径
检查点V0到V3是否通过点V0,V1,V2,V3,V4来降低路径
检查点V0到V4是否通过点V0,V1,V2,V3,V4来降低路径
发现由点V0到V4的路径是70
发现由点V0到V5到V4的路径是37
检查点V0到V5是否通过点V0,V1,V2,V3,V4来降低路径
检查点V0到V6是否通过点V0,V1,V2,V3,V4来降低路径
检查点V0到V7是否通过点V0,V1,V2,V3,V4来降低路径
发现由点V0到V7的路径是66
发现由点V0到V5到V7的路径是44
检查点V0到V8是否通过点V0,V1,V2,V3,V4来降低路径
检查点V1到V0是否通过点V0,V1,V2,V3,V4来降低路径
检查点V1到V1是否通过点V0,V1,V2,V3,V4来降低路径
检查点V1到V2是否通过点V0,V1,V2,V3,V4来降低路径
检查点V1到V3是否通过点V0,V1,V2,V3,V4来降低路径
检查点V1到V4是否通过点V0,V1,V2,V3,V4来降低路径
发现由点V1到V4的路径是60
发现由点V1到V5到V4的路径是47
检查点V1到V5是否通过点V0,V1,V2,V3,V4来降低路径
检查点V1到V6是否通过点V0,V1,V2,V3,V4来降低路径
检查点V1到V7是否通过点V0,V1,V2,V3,V4来降低路径
发现由点V1到V7的路径是56
发现由点V1到V5到V7的路径是54
检查点V1到V8是否通过点V0,V1,V2,V3,V4来降低路径
检查点V2到V0是否通过点V0,V1,V2,V3,V4来降低路径
检查点V2到V1是否通过点V0,V1,V2,V3,V4来降低路径
检查点V2到V2是否通过点V0,V1,V2,V3,V4来降低路径
检查点V2到V3是否通过点V0,V1,V2,V3,V4来降低路径
检查点V2到V4是否通过点V0,V1,V2,V3,V4来降低路径
检查点V2到V5是否通过点V0,V1,V2,V3,V4来降低路径
检查点V2到V6是否通过点V0,V1,V2,V3,V4来降低路径
检查点V2到V7是否通过点V0,V1,V2,V3,V4来降低路径
检查点V2到V8是否通过点V0,V1,V2,V3,V4来降低路径
检查点V3到V0是否通过点V0,V1,V2,V3,V4来降低路径
检查点V3到V1是否通过点V0,V1,V2,V3,V4来降低路径
检查点V3到V2是否通过点V0,V1,V2,V3,V4来降低路径
检查点V3到V3是否通过点V0,V1,V2,V3,V4来降低路径
检查点V3到V4是否通过点V0,V1,V2,V3,V4来降低路径
检查点V3到V5是否通过点V0,V1,V2,V3,V4来降低路径
检查点V3到V6是否通过点V0,V1,V2,V3,V4来降低路径
检查点V3到V7是否通过点V0,V1,V2,V3,V4来降低路径
检查点V3到V8是否通过点V0,V1,V2,V3,V4来降低路径
检查点V4到V0是否通过点V0,V1,V2,V3,V4来降低路径
发现由点V4到V0的路径是70
发现由点V4到V5到V0的路径是37
检查点V4到V1是否通过点V0,V1,V2,V3,V4来降低路径
发现由点V4到V1的路径是60
发现由点V4到V5到V1的路径是47
检查点V4到V2是否通过点V0,V1,V2,V3,V4来降低路径
检查点V4到V3是否通过点V0,V1,V2,V3,V4来降低路径
检查点V4到V4是否通过点V0,V1,V2,V3,V4来降低路径
检查点V4到V5是否通过点V0,V1,V2,V3,V4来降低路径
检查点V4到V6是否通过点V0,V1,V2,V3,V4来降低路径
发现由点V4到V6的路径是44
发现由点V4到V5到V6的路径是43
检查点V4到V7是否通过点V0,V1,V2,V3,V4来降低路径
检查点V4到V8是否通过点V0,V1,V2,V3,V4来降低路径
检查点V5到V0是否通过点V0,V1,V2,V3,V4来降低路径
检查点V5到V1是否通过点V0,V1,V2,V3,V4来降低路径
检查点V5到V2是否通过点V0,V1,V2,V3,V4来降低路径
检查点V5到V3是否通过点V0,V1,V2,V3,V4来降低路径
检查点V5到V4是否通过点V0,V1,V2,V3,V4来降低路径
检查点V5到V5是否通过点V0,V1,V2,V3,V4来降低路径
检查点V5到V6是否通过点V0,V1,V2,V3,V4来降低路径
检查点V5到V7是否通过点V0,V1,V2,V3,V4来降低路径
检查点V5到V8是否通过点V0,V1,V2,V3,V4来降低路径
检查点V6到V0是否通过点V0,V1,V2,V3,V4来降低路径
检查点V6到V1是否通过点V0,V1,V2,V3,V4来降低路径
检查点V6到V2是否通过点V0,V1,V2,V3,V4来降低路径
检查点V6到V3是否通过点V0,V1,V2,V3,V4来降低路径
检查点V6到V4是否通过点V0,V1,V2,V3,V4来降低路径
发现由点V6到V4的路径是44
发现由点V6到V5到V4的路径是43
检查点V6到V5是否通过点V0,V1,V2,V3,V4来降低路径
检查点V6到V6是否通过点V0,V1,V2,V3,V4来降低路径
检查点V6到V7是否通过点V0,V1,V2,V3,V4来降低路径
检查点V6到V8是否通过点V0,V1,V2,V3,V4来降低路径
检查点V7到V0是否通过点V0,V1,V2,V3,V4来降低路径
发现由点V7到V0的路径是66
发现由点V7到V5到V0的路径是44
检查点V7到V1是否通过点V0,V1,V2,V3,V4来降低路径
发现由点V7到V1的路径是56
发现由点V7到V5到V1的路径是54
检查点V7到V2是否通过点V0,V1,V2,V3,V4来降低路径
检查点V7到V3是否通过点V0,V1,V2,V3,V4来降低路径
检查点V7到V4是否通过点V0,V1,V2,V3,V4来降低路径
检查点V7到V5是否通过点V0,V1,V2,V3,V4来降低路径
检查点V7到V6是否通过点V0,V1,V2,V3,V4来降低路径
检查点V7到V7是否通过点V0,V1,V2,V3,V4来降低路径
检查点V7到V8是否通过点V0,V1,V2,V3,V4来降低路径
检查点V8到V0是否通过点V0,V1,V2,V3,V4来降低路径
检查点V8到V1是否通过点V0,V1,V2,V3,V4来降低路径
检查点V8到V2是否通过点V0,V1,V2,V3,V4来降低路径
检查点V8到V3是否通过点V0,V1,V2,V3,V4来降低路径
检查点V8到V4是否通过点V0,V1,V2,V3,V4来降低路径
检查点V8到V5是否通过点V0,V1,V2,V3,V4来降低路径
检查点V8到V6是否通过点V0,V1,V2,V3,V4来降低路径
检查点V8到V7是否通过点V0,V1,V2,V3,V4来降低路径
检查点V8到V8是否通过点V0,V1,V2,V3,V4来降低路径
检查点V0到V0是否通过点V0,V1,V2,V3,V4,V5来降低路径
检查点V0到V1是否通过点V0,V1,V2,V3,V4,V5来降低路径
检查点V0到V2是否通过点V0,V1,V2,V3,V4,V5来降低路径
检查点V0到V3是否通过点V0,V1,V2,V3,V4,V5来降低路径
检查点V0到V4是否通过点V0,V1,V2,V3,V4,V5来降低路径
检查点V0到V5是否通过点V0,V1,V2,V3,V4,V5来降低路径
检查点V0到V6是否通过点V0,V1,V2,V3,V4,V5来降低路径
检查点V0到V7是否通过点V0,V1,V2,V3,V4,V5来降低路径
检查点V0到V8是否通过点V0,V1,V2,V3,V4,V5来降低路径
检查点V1到V0是否通过点V0,V1,V2,V3,V4,V5来降低路径
检查点V1到V1是否通过点V0,V1,V2,V3,V4,V5来降低路径
检查点V1到V2是否通过点V0,V1,V2,V3,V4,V5来降低路径
检查点V1到V3是否通过点V0,V1,V2,V3,V4,V5来降低路径
检查点V1到V4是否通过点V0,V1,V2,V3,V4,V5来降低路径
检查点V1到V5是否通过点V0,V1,V2,V3,V4,V5来降低路径
检查点V1到V6是否通过点V0,V1,V2,V3,V4,V5来降低路径
检查点V1到V7是否通过点V0,V1,V2,V3,V4,V5来降低路径
检查点V1到V8是否通过点V0,V1,V2,V3,V4,V5来降低路径
检查点V2到V0是否通过点V0,V1,V2,V3,V4,V5来降低路径
检查点V2到V1是否通过点V0,V1,V2,V3,V4,V5来降低路径
检查点V2到V2是否通过点V0,V1,V2,V3,V4,V5来降低路径
检查点V2到V3是否通过点V0,V1,V2,V3,V4,V5来降低路径
检查点V2到V4是否通过点V0,V1,V2,V3,V4,V5来降低路径
检查点V2到V5是否通过点V0,V1,V2,V3,V4,V5来降低路径
检查点V2到V6是否通过点V0,V1,V2,V3,V4,V5来降低路径
检查点V2到V7是否通过点V0,V1,V2,V3,V4,V5来降低路径
检查点V2到V8是否通过点V0,V1,V2,V3,V4,V5来降低路径
检查点V3到V0是否通过点V0,V1,V2,V3,V4,V5来降低路径
检查点V3到V1是否通过点V0,V1,V2,V3,V4,V5来降低路径
检查点V3到V2是否通过点V0,V1,V2,V3,V4,V5来降低路径
检查点V3到V3是否通过点V0,V1,V2,V3,V4,V5来降低路径
检查点V3到V4是否通过点V0,V1,V2,V3,V4,V5来降低路径
检查点V3到V5是否通过点V0,V1,V2,V3,V4,V5来降低路径
发现由点V3到V5的路径是46
发现由点V3到V6到V5的路径是41
检查点V3到V6是否通过点V0,V1,V2,V3,V4,V5来降低路径
检查点V3到V7是否通过点V0,V1,V2,V3,V4,V5来降低路径
检查点V3到V8是否通过点V0,V1,V2,V3,V4,V5来降低路径
检查点V4到V0是否通过点V0,V1,V2,V3,V4,V5来降低路径
检查点V4到V1是否通过点V0,V1,V2,V3,V4,V5来降低路径
检查点V4到V2是否通过点V0,V1,V2,V3,V4,V5来降低路径
检查点V4到V3是否通过点V0,V1,V2,V3,V4,V5来降低路径
检查点V4到V4是否通过点V0,V1,V2,V3,V4,V5来降低路径
检查点V4到V5是否通过点V0,V1,V2,V3,V4,V5来降低路径
检查点V4到V6是否通过点V0,V1,V2,V3,V4,V5来降低路径
检查点V4到V7是否通过点V0,V1,V2,V3,V4,V5来降低路径
检查点V4到V8是否通过点V0,V1,V2,V3,V4,V5来降低路径
检查点V5到V0是否通过点V0,V1,V2,V3,V4,V5来降低路径
检查点V5到V1是否通过点V0,V1,V2,V3,V4,V5来降低路径
检查点V5到V2是否通过点V0,V1,V2,V3,V4,V5来降低路径
检查点V5到V3是否通过点V0,V1,V2,V3,V4,V5来降低路径
发现由点V5到V3的路径是46
发现由点V5到V6到V3的路径是41
检查点V5到V4是否通过点V0,V1,V2,V3,V4,V5来降低路径
检查点V5到V5是否通过点V0,V1,V2,V3,V4,V5来降低路径
检查点V5到V6是否通过点V0,V1,V2,V3,V4,V5来降低路径
检查点V5到V7是否通过点V0,V1,V2,V3,V4,V5来降低路径
检查点V5到V8是否通过点V0,V1,V2,V3,V4,V5来降低路径
检查点V6到V0是否通过点V0,V1,V2,V3,V4,V5来降低路径
检查点V6到V1是否通过点V0,V1,V2,V3,V4,V5来降低路径
检查点V6到V2是否通过点V0,V1,V2,V3,V4,V5来降低路径
检查点V6到V3是否通过点V0,V1,V2,V3,V4,V5来降低路径
检查点V6到V4是否通过点V0,V1,V2,V3,V4,V5来降低路径
检查点V6到V5是否通过点V0,V1,V2,V3,V4,V5来降低路径
检查点V6到V6是否通过点V0,V1,V2,V3,V4,V5来降低路径
检查点V6到V7是否通过点V0,V1,V2,V3,V4,V5来降低路径
检查点V6到V8是否通过点V0,V1,V2,V3,V4,V5来降低路径
检查点V7到V0是否通过点V0,V1,V2,V3,V4,V5来降低路径
检查点V7到V1是否通过点V0,V1,V2,V3,V4,V5来降低路径
检查点V7到V2是否通过点V0,V1,V2,V3,V4,V5来降低路径
检查点V7到V3是否通过点V0,V1,V2,V3,V4,V5来降低路径
检查点V7到V4是否通过点V0,V1,V2,V3,V4,V5来降低路径
检查点V7到V5是否通过点V0,V1,V2,V3,V4,V5来降低路径
检查点V7到V6是否通过点V0,V1,V2,V3,V4,V5来降低路径
检查点V7到V7是否通过点V0,V1,V2,V3,V4,V5来降低路径
检查点V7到V8是否通过点V0,V1,V2,V3,V4,V5来降低路径
检查点V8到V0是否通过点V0,V1,V2,V3,V4,V5来降低路径
检查点V8到V1是否通过点V0,V1,V2,V3,V4,V5来降低路径
检查点V8到V2是否通过点V0,V1,V2,V3,V4,V5来降低路径
检查点V8到V3是否通过点V0,V1,V2,V3,V4,V5来降低路径
检查点V8到V4是否通过点V0,V1,V2,V3,V4,V5来降低路径
检查点V8到V5是否通过点V0,V1,V2,V3,V4,V5来降低路径
检查点V8到V6是否通过点V0,V1,V2,V3,V4,V5来降低路径
检查点V8到V7是否通过点V0,V1,V2,V3,V4,V5来降低路径
检查点V8到V8是否通过点V0,V1,V2,V3,V4,V5来降低路径
检查点V0到V0是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V0到V1是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V0到V2是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V0到V3是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V0到V4是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V0到V5是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V0到V6是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V0到V7是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V0到V8是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V1到V0是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V1到V1是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V1到V2是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V1到V3是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V1到V4是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V1到V5是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V1到V6是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V1到V7是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V1到V8是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V2到V0是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V2到V1是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V2到V2是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V2到V3是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V2到V4是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V2到V5是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V2到V6是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V2到V7是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V2到V8是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V3到V0是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V3到V1是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V3到V2是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V3到V3是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V3到V4是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V3到V5是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V3到V6是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V3到V7是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V3到V8是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V4到V0是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V4到V1是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V4到V2是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V4到V3是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V4到V4是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V4到V5是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V4到V6是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V4到V7是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V4到V8是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V5到V0是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V5到V1是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V5到V2是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V5到V3是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V5到V4是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V5到V5是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V5到V6是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V5到V7是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V5到V8是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V6到V0是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V6到V1是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V6到V2是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V6到V3是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V6到V4是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V6到V5是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V6到V6是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V6到V7是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V6到V8是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V7到V0是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V7到V1是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V7到V2是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V7到V3是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V7到V4是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V7到V5是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V7到V6是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V7到V7是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V7到V8是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V8到V0是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V8到V1是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V8到V2是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V8到V3是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V8到V4是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V8到V5是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V8到V6是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V8到V7是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V8到V8是否通过点V0,V1,V2,V3,V4,V5,V6来降低路径
检查点V0到V0是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
检查点V0到V1是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
检查点V0到V2是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
检查点V0到V3是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
发现由点V0到V3的路径是50
发现由点V0到V8到V3的路径是43
检查点V0到V4是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
检查点V0到V5是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
检查点V0到V6是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
检查点V0到V7是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
检查点V0到V8是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
检查点V1到V0是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
检查点V1到V1是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
检查点V1到V2是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
检查点V1到V3是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
发现由点V1到V3的路径是40
发现由点V1到V8到V3的路径是33
检查点V1到V4是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
检查点V1到V5是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
检查点V1到V6是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
检查点V1到V7是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
发现由点V1到V7的路径是54
发现由点V1到V8到V7的路径是49
检查点V1到V8是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
检查点V2到V0是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
检查点V2到V1是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
检查点V2到V2是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
检查点V2到V3是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
检查点V2到V4是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
检查点V2到V5是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
检查点V2到V6是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
检查点V2到V7是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
检查点V2到V8是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
检查点V3到V0是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
发现由点V3到V0的路径是50
发现由点V3到V8到V0的路径是43
检查点V3到V1是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
发现由点V3到V1的路径是40
发现由点V3到V8到V1的路径是33
检查点V3到V2是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
检查点V3到V3是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
检查点V3到V4是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
检查点V3到V5是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
检查点V3到V6是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
检查点V3到V7是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
检查点V3到V8是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
检查点V4到V0是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
检查点V4到V1是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
检查点V4到V2是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
检查点V4到V3是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
检查点V4到V4是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
检查点V4到V5是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
检查点V4到V6是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
检查点V4到V7是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
检查点V4到V8是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
检查点V5到V0是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
检查点V5到V1是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
检查点V5到V2是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
检查点V5到V3是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
检查点V5到V4是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
检查点V5到V5是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
检查点V5到V6是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
检查点V5到V7是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
检查点V5到V8是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
检查点V6到V0是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
检查点V6到V1是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
检查点V6到V2是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
检查点V6到V3是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
检查点V6到V4是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
检查点V6到V5是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
检查点V6到V6是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
检查点V6到V7是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
检查点V6到V8是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
检查点V7到V0是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
检查点V7到V1是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
发现由点V7到V1的路径是54
发现由点V7到V8到V1的路径是49
检查点V7到V2是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
检查点V7到V3是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
检查点V7到V4是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
检查点V7到V5是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
检查点V7到V6是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
检查点V7到V7是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
检查点V7到V8是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
检查点V8到V0是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
检查点V8到V1是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
检查点V8到V2是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
检查点V8到V3是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
检查点V8到V4是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
检查点V8到V5是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
检查点V8到V6是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
检查点V8到V7是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
检查点V8到V8是否通过点V0,V1,V2,V3,V4,V5,V6,V7来降低路径
0 - 8的最短路径是22;路径是0 -> 1 -> 8
1 - 8的最短路径是12;路径是1 -> 8
2 - 8的最短路径是8;路径是2 -> 8
3 - 8的最短路径是21;路径是3 -> 8
4 - 8的最短路径是41;路径是4 -> 3 -> 8
5 - 8的最短路径是33;路径是5 -> 0 -> 1 -> 8
6 - 8的最短路径是28;路径是6 -> 1 -> 8
7 - 8的最短路径是37;路径是7 -> 3 -> 8
8 - 8的最短路径是0;路径是8 -> 8
[Finished in 0.2s]

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 211,948评论 6 492
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,371评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 157,490评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,521评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,627评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,842评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,997评论 3 408
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,741评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,203评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,534评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,673评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,339评论 4 330
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,955评论 3 313
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,770评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,000评论 1 266
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,394评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,562评论 2 349

推荐阅读更多精彩内容