zoukankan      html  css  js  c++  java
  • 利用矩阵的n次方求图的连通性

    An x n)为一个图的邻接矩阵,则a(i,j)表示两个点之间是否连通(1:连通,0:不连通)。那么Ak次方中的每一个aij)表示点ij之间长度为k的路的条数。假设一个图能划分成若干个子图,每个子图之间不相连,那么A^1+A^2+...+A^n能表示该图的连通性。为0则不可能在一个子图,为非0则可以在一个子图。

    如下图:


    其邻接矩阵为:

         0     1     0     0     0     0     0     0     0     0

         1     0     1     0     0     0     0     0     0     0

         0     1     0     0     0     0     0     0     0     0

         0     0     0     0     1     0     0     0     0     0

         0     0     0     1     0     0     0     0     0     1

         0     0     0     0     0     0     1     0     0     0

         0     0     0     0     0     1     0     1     0     0

         0     0     0     0     0     0     1     0     0     0

         0     0     0     0     0     0     0     0     0     1

         0     0     0     0     1     0     0     0     1     0

    A的平方为

         1     0     1     0     0     0     0     0     0     0

         0     2     0     0     0     0     0     0     0     0

         1     0     1     0     0     0     0     0     0     0

         0     0     0     1     0     0     0     0     0     1

         0     0     0     0     2     0     0     0     1     0

         0     0     0     0     0     1     0     1     0     0

         0     0     0     0     0     0     2     0     0     0

         0     0     0     0     0     1     0     1     0     0

         0     0     0     0     1     0     0     0     1     0

         0     0     0     1     0     0     0     0     0     2

    可以看到,对角线元素部位零,其几何意义是1点到2点再回到1

    A^1+A^2+A^3+...+A^10=

        31    31    31     0     0     0     0     0     0     0

        31    62    31     0     0     0     0     0     0     0

        31    31    31     0     0     0     0     0     0     0

         0     0     0    55    55     0     0     0    33    88

         0     0     0    55   143     0     0     0    88    88

         0     0     0     0     0    31    31    31     0     0

         0     0     0     0     0    31    62    31     0     0

         0     0     0     0     0    31    31    31     0     0

         0     0     0    33    88     0     0     0    55    55

         0     0     0    88    88     0     0     0    55   143

    就能很方便地求出子图了。为0的表示肯定不能连通。

  • 相关阅读:
    试玩mpvue,用vue的开发模式开发微信小程序
    laravel 整合 swoole ,并简单 ab 测试对比性能以及在 PHPstorm 中利用debug调试配置swoole服务中的PHP代码
    移动端固定头部和固定左边第一列的实现方案(Vue中实现demo)
    PhpStorm 2017.3 版本在 Mac 系统 macOS High Sierra 版本 10.13.3 中运行很卡顿
    xdebug : Debug session was finished without being paused
    SVN checkout 出的项目在PHPstorm中打开没有subversion(SVN)选项按钮怎么办?
    PHP应用的CI/CD流程实践与学习:一、PHP运行环境的准备
    Mac环境下PHPstorm配置xdebug开发调试web程序
    『备忘录』elasticsearch 去重分页查询
    Mac下docker搭建lnmp环境 + redis + elasticsearch
  • 原文地址:https://www.cnblogs.com/maplewizard/p/2942037.html
Copyright © 2011-2022 走看看