精华内容
下载资源
问答
  • 可达矩阵

    千次阅读 2018-09-21 11:42:23
    #include <iostream> #include <cstdlib> #include <string> using namespace std; class Matrix{ public:  Matrix();  void Mult();... a1 ,Mat...

    #include <iostream>
    #include <cstdlib>
    #include <string>
    using namespace std;

    class Matrix{
    public:
        Matrix();
        void Mult();
        //friend void operator + (Matrix & a1 ,Matrix & a2);
        void display();
        int Count();
    private:
        int default[4][4];
        int Afo[4][4];
        int Re[4][4];
    };

    Matrix::Matrix(){
        memset(default,0,sizeof(default));
        memset(Afo,0,sizeof(Afo));
        default[0][0] = 1 ,default[0][1] =2 ,default[1][2] = 1,default[2][0] =1 ,default[2][3] = 1,default[3][2]=1;
        Afo[0][0] = 1 ,Afo[0][1] =2 ,Afo[1][2] = 1,Afo[2][0] =1 ,Afo[2][3] = 1,Afo[3][2]=1;
        Re[0][0] = 1 ,Re[0][1] =2 ,Re[1][2] = 1,Re[2][0] =1 ,Re[2][3] = 1,Re[3][2]=1;
    }

    void Matrix::display(){
        for(int i = 0 ; i < 4 ;++i){
            for(int j = 0 ; j < 4 ; ++j){
                cout<<Re[i][j]<<" ";
            }
            cout<<endl;
        }
    }

    void Matrix::Mult(){
        int result[4][4];
        for(int i = 0 ; i < 4 ; ++i){
            for(int j = 0 ; j < 4 ; ++j){
                result[i][j] = Afo[i][0]*default[0][j] + Afo[i][1]*default[1][j] + Afo[i][2]*default[2][j] +Afo[i][3]*default[3][j];
            }
        }
        for(int i = 0 ; i < 4 ; ++i)
            for(int j = 0 ;j < 4 ; ++j)    Afo[i][j] = result[i][j];

    }

    int Matrix::Count(){
        int ans = 0 ;
        for(int i = 0 ; i < 4 ; ++i)
            for(int j = 0 ; j < 4 ; ++ j)
                ans += Afo[i][j];
        return ans ;
    }
    int main(){
        Matrix a ;
        int ans ;
        for(int i = 1 ; i<= 3 ; ++i)
        a.Mult();
        a.display();
        ans = a.Count();
        cout<<ans<<endl;
        system("pause");
        return 0 ;
    }

    展开全文
  • 计算可达矩阵

    2018-02-14 00:11:37
    通过定义,在已知连接矩阵的前提下,计算可达矩阵。理解简单,但计算负责都较高。
  • 该代码是通过C语言编程实现,主要是为了快速求解邻接矩阵对应的可达矩阵,邻接矩阵和可达矩阵是系统工程中表征系统元素之间关系的重要工具之一
  • 已知邻接矩阵,求可达矩阵的MATLAB代码
  • 可达矩阵,指的是用矩阵形式来描述有向图的各节点之间经过一定长度的通路后可达到的程度。可达矩阵的计算方法是利用布尔矩阵的运算性质。可达矩阵对应的是拓扑几何,而不是通常讲的几何。它描述的是要素之间的相对...
  • matlab求可达矩阵

    2018-05-01 10:59:27
    根据MATLAB编程,由邻接矩阵求出可达矩阵。 根据MATLAB编程,由邻接矩阵求出可达矩阵
  • 可达矩阵的算法

    2013-05-02 09:58:16
    可达矩阵的一种算法,可参考,比较实用的。
  • 图论算法及其MATLAB实现[1]_数学_自然...要素集合为A,表达式:A={A1,A2,A3,……A10} 表1 系统构成要素 针对学生学习积极性建立邻接矩阵 通过MATLAB得到可达矩阵、可达集、前因集 可达矩阵为:R = 1 ......为2次可达...

    图论算法及其MATLAB实现[1]_数学_自然科学_专业资料。北京航空航天大学出版社 MA...∑d( 1 . 8 计算有向图的可达矩阵的算法及其 MA T L A B 实现 , …,......

    要素集合为A,表达式:A={A1,A2,A3,……A10} 表1 系统构成要素 针对学生学习积极性建立邻接矩阵 通过MATLAB得到可达矩阵、可达集、前因集 可达矩阵为:R = 1 ......

    为2次可达矩阵;…… 链表(邻接表)表示法 2 4 1 3 5 ( 单1 向链 ...

    7 0 1 0 1 1 0 1 1 一、解释结构模型 表 1 某系统的可达矩阵 8 0 0 0 0 0 0 0 1 已经某系统的可达矩阵如表 1 所示。在 Excel 中 对表 1 ......

    (七) 鸣谢(可略) 感谢同学 MATLAB 的指导。 (八) 参考资料 1. 基于解释结构模型的我国高等教育质量影响因素分析_陈藏 ……案例 (参考了其中对可达矩阵的层级......

    大连交通大学大食堂拥挤问题建立邻接矩阵和可达矩阵; 系统中这11个要素是有机的联...

    可达矩阵 M 的元素 Mij 为“1”代表要素 xi 到 xj 间存在可到达 的路径,即可达矩阵表征了要素间的直接、间接的关 系。通过 Matlab 计算,可得本系统的可达......

    在 Excel 中对表 1 中的可达矩阵用实用方法建立 其递阶结构模型。 二、主成份分析 表 2 为某地区农业生态经济系统各区域单元相关指标数据,运用 Matlab 或 SPSS......

    图的建立与输出 邻接矩阵 CRC校验 严蔚敏数据结构 最小生成树 二叉树遍历 最...

    由于此矩阵中影响因素较多,所以运用 Matlab 软件对邻接矩阵进行求解,程序见 附录一,得 可达矩阵可说明两个因素之间是否存在链接路径,并能清楚说明两因素之间影响 ......

    并根据影响因素间的相互关系构 建邻接矩阵,利用Matlab软件生成可达矩阵,依照...

    word 版本. 第一步:找出主要 因素,判断各因素 间直接(相邻)的 关系 第二步:考虑因果 等关系的传递性, 建立可达矩阵 第三步:保留可达 矩阵的主要代表因 素,......

    (9 分) 2.6 对系统 进行离散化,采样时间为 T,给出差分方程,给出系数矩阵的表 达形式,说明离散系统和连续系统的关系,二者 Matlab 转换关系,说明 T 大小选取......

    大连交通大学大食堂拥挤问题建立邻接矩阵和可达矩阵; 系统中这11个要素是有机的联...

    二、实验内容: 1.已知可达矩阵如下表 1 1 1 2 3 4 5 6 7 8 ...

    ②根据缩减矩阵绘制多级递阶有向图 3 / 25 系统工程实验报告 二.主成份分析 表 1 为某地区农业生态经济系统各区域单元相关指标数据,运用 Matlab 或 SPSS 作主 ......

    ②根据缩减矩阵绘制多级递阶有向图 二.主成份分析表 1 为某地区农业生态经济系统各区域单元相关指标数据,运用 Matlab 或 SPSS 作主 成分分析,描述该地区农业生态......

    1 0 0 0 1 1 0 0 0 A12 0 0 0 1 0 0 0 0 0 0 0 0 由于此矩阵中影响因素较多,所以运用 Matlab 软件对邻接矩阵进行求解, 程序见附录一,得 5 ?...

    000000000110 A9 000000000010 A10 000000000000 A11 000000000000 A12 000010000000 由于此矩阵中影响因素较多,所以运用 Matlab 软件对邻接矩阵进行求解, 程序见附录一,得......

    系 统 工 程 实 验 报告陈慧 109095259 信管 10 级 1 班 2012 年 11 月 18 日 一、 解释结构模型表 1 某系统的可达矩阵 12345678 111010000 201000000 ......

    展开全文
  • 采用Warshall算法,从邻接矩阵求可达矩阵
  • 图论 可达矩阵 课件

    2011-08-02 00:48:24
    可达矩阵 上课的课件 讲的很详细 看了一定用的
  • 可达矩阵求法

    2011-09-17 15:50:25
    VC编写的可达矩阵求法 动态分配一维数组 去掉字符串中的空格和回车 将字符型转换成整型
  • 可达矩阵是判别一个有向图是否为强连通图或弱连通图的有效工具。利用布尔矩阵的运算性质给出了计算有向图可达矩阵的方法。该方法汁算简便。
  • 邻接矩阵A 单位矩阵 I A+I 的表示 可达矩阵计算 程序代码为 n size(S,1; p S; for i 2:n p p+S^i; end p(p~ 0) 1; P 即为所求的可达矩阵
  • 该txt文件记录的是邻接矩阵转化成可达矩阵的源代码。
  • 该可执行文件格式是exe,功能是用于讲邻接矩阵转化成可达矩阵
  • 图论学习笔记——可达矩阵

    千次阅读 2020-05-06 16:09:47
    一般地,设n阶有向图D的邻接矩阵为A,有A可得到图D的可达矩阵,不妨设为P,其步骤如下: 1、求出 2、把矩阵中不为0的元素给为1,而为0的元素不变 这样所改换的矩阵就位图D的可达矩阵P。 (A表示图的邻...

    设有向图D = (V,E),顶点集V = {v1,v2,····,vn}。

    定义矩阵

    P = \left\{\begin{matrix} 0 \\ 1 \end{matrix}\right.(当vi到vj不可达时,p为0;当vi到vj可达时p为1.)

    称矩阵P是图D的可达矩阵

    一般地,设n阶有向图D的邻接矩阵为A,有A可得到图D的可达矩阵,不妨设为P,其步骤如下:

    1、求出B_{}n= A + A^{}2 + ··· + A^{}n

    2、把矩阵B_{}n中不为0的元素给为1,而为0的元素不变

    这样所改换的矩阵就位图D的可达矩阵P。

    (A表示图的邻接矩阵,P表示图的可达矩阵。)

    计算可达矩阵,在MATLAB中实现

    p=dgraf(A)
    function P=dgraf(A)
    n=size(A,1);
    P=A;
    for i=2:n
    P=P+A^i
    end
    P(P~=0)=1
    P  

     

    展开全文
  • 无向图的可达矩阵是怎么写的啊?有向图的两结点可达就为1,不可达就为0,很好写。但是无向图如果没有孤立结点,岂不是整个可达矩阵内全为1?可达矩阵是不是这么回事啊?
  • 题目大意:不多赘述。关键是知道题目如何解决。其实其求的就是可达矩阵(不懂的参看离散数学图论) ...在实际系统建模工程中,有向图D={S,...利用布尔矩阵的运算性质给出了计算有向图可达矩阵的方法,该方法计算简...

    http://acm.hdu.edu.cn/showproblem.php?pid=2157

     

    题目大意:不多赘述。关键是知道题目如何解决。其实其求的就是可达矩阵 (不懂的参看离散数学图论)

    在实际系统建模工程中,有向图D={S,R}中,对于Si,Sj 属于S,如果从Si到Sj有任何一条通路存在,则可称Si可达Sj。
    利用布尔矩阵的运算性质给出了计算有向图可达矩阵的方法,该方法计算简便.

    接下来的解题就是求其K次可达矩阵中[A][B]的值即可。

    AC代码

    #include <iostream>
    #include <algorithm>
    #include <cmath>
    #include <cstring>
    #include <stdlib.h>
    using namespace std;
    typedef long long ll;
    const int MAXN = 1e2+7;
    const int mod = 1000;
    struct martrix {
        int a[MAXN][MAXN];
    }m1,m2;
    ll n, m;
    ll k;
    martrix mul(martrix m1, martrix m2) {
        martrix m3;
        memset(m3.a, 0, sizeof m3.a);
        for(int i = 0;i < n;i++) {
            for(int j = 0; j < n; j++) {
                for(int k = 0;k < n; k++) {
                    m3.a[i][j] += m1.a[i][k]*m2.a[k][j];
                    m3.a[i][j] %= mod;
                }
            }
        }
        return m3;
    }
    martrix mpow(martrix m1) {
        martrix res;
        memset(res.a, 0, sizeof res.a);
        for(int i = 0; i < n; i++) res.a[i][i] = 1;
        while(k!=0) {
            if(k%2!=0) {
                res = mul(res,m1);
                k--;
            }
            else {
                m1 = mul(m1,m1);
                k>>=1;
            }
        }
        return res;
    }
    int main() {
        int q;
        int A,B;
        int s,e;
        while(cin >> n >> m && (n+m)) {
            memset(m1.a,0,sizeof m1.a);
            while(m--) {
                cin >> s >> e;
                m1.a[s][e]= 1;
            }
            cin >> q;
            while(q--) {
                memset(m2.a,0,sizeof m2.a);
                cin >> A >> B >> k;
                m2 = mpow(m1);
                cout << m2.a[A][B] << endl;
            }
        }
    }

     

    展开全文
  • 怎样用C语言表示邻接矩阵求可达矩阵,并且判断图的连通性,急,谢谢帮忙
  • 基于Warshall算法的可达矩阵的算法改进及Python程序实现.pdf
  • 在进行编码前要简单介绍几个知识点:有向图,邻接矩阵,可达矩阵 有向图、邻接矩阵、可达矩阵 有向图 现实中常常会表示从一个地点到另一个地点的路径,这样的带有从起点到终点的路线表示可以用有向图表示。如下图所...
  • R 语言 | 计算可达矩阵

    千次阅读 2017-04-30 18:05:14
    在微博有位朋友问我可达矩阵的计算,于是发了点时间用R语言写出来了。 问题如下: 计算过程: 注意:是矩阵的乘法。代码如下:A (c(0,0,0,0,0,0,0,1,0,0,1,1,0,0,0,0,0,0,0,0,0,0,1,1,0),nrow=5) A1 (5)repeat{ B...
  • 在系统工程书中,建立解释结构模型中求解可达矩阵是必不可少的一环故利用python写了一段求解可达矩阵的代码,只需要输入邻接矩阵便可计算得到可达矩阵代码如下: import numpy as np def change(a): #乘自身并归一 ...
  • 计算有向图可达矩阵Matlab实现

    千次阅读 2017-02-18 19:53:50
    可达矩阵MATLAB实现
  • 我们可以通过邻接矩阵A,计算可达矩阵B,然后经过二值化之后得到可达性矩阵P来判断该图属于以上哪一种。 如果P中元素都为1,说明任意两点之间都可达,那么这是一个强连通图; 如果P′=P∪PTP' = P \cup P^TP′=P∪...
  • 计算图的可达矩阵MATLAB程序

    千次阅读 2019-08-11 17:42:48
    % 计算图的可达矩阵 function P=dgraf(A) n=size(A,1) ; P=A; % 计算矩阵Bn for i=2:n P=P+A^i; end P(P~=0) =1; % 将不为0 的元素变为1 P; end
  • python计算可达矩阵 从别人那里看到的,原代码貌似有些问题,修改了一下 matrix = [[0, 0, 1, 0, 0, 0, 0, 0, 0], [0, 0, 1, 1, 0, 0, 0, 0, 0], [0, 0, 0, 0, 1, 0, 0, 0, 0], [0, 0, 0, 0, 1, 1, 0, 0, 0], .....
  • 【算法导论】有向图的可达矩阵

    万次阅读 2013-12-27 11:05:07
    因此我们可以假设所有边的权值为单位1,在下面的算法中,我们可以在O(n*n*n)的时间内计算出图中任意两点是否可达,我用可达矩阵来表示有向图中两者是否可达。如果可以从i到j,则定义tij=1,否则tij=0。因此我们可以...
  • 计算图的可达矩阵

    2011-04-14 21:32:00
    %% **********计算图的可达矩阵********** % 输入参数: A 图的邻接矩阵 // % 输出: P 图的可达矩阵 // % 功能:计算可达矩阵 // <br /> %% function P = dgraf(A)<b
  • C/C++ 根据有向图、无向图求邻接矩阵的通路、回路,和对应的可达矩阵

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 20,884
精华内容 8,353
关键字:

可达矩阵