快速可达矩阵计算(先获得所有有序的回路,再进行一次Warshall法就可以)


论文写作或者计算需要帮助可发邮件到 hwstu # sohu.com 把 #替换成@,请说清来意,不必拐弯抹角,浪费相互之间的时间。

返回首页


此处输入要素的个数:



显示的是一个随机 12 * 12 的方阵



  
      1       1    1            
      1    1                1   
                                   
                  1             1
                              1   
                  1               
            1          1         
   1                              
                                   
                  1               
                                   
            1       1    1      

利用深搜算法获得所有环路,该环路的着色矩阵显示为



  
                                   
                                   
   1                              
                                   
      1 1                        
            1                     
1 1 1                           
                  1               
1             1    1            
            1                     
      1             1    1      
            1                1   

得到了一个有序的环,所有环路,是一个有序图



子要素
丑要素
寅要素
卯要素
辰要素
巳要素
午要素
未要素
申要素
酉要素
戌要素
亥要素
第0层
第1层
第2层
第3层
第4层
第5层
第6层
第7层
第8层
第9层
第10层
第11层

根据层级由上往下进行计算,最上的层级为0



当前为:0 层,包含有 1 个要素
        当前层的可达集合为 2
       0层的可达集合为2 。
       因此要素2可达集合为2 。

当前为:1 层,包含有 1 个要素
        当前层的可达集合为 10
       1层的可达集合为10 。
       因此要素10可达集合为10 。

当前为:2 层,包含有 1 个要素
        当前层的可达集合为 10,4
        除了本层的要素还有10 开始处理10 指向层级的可达集合
           处理完了10 得到的可达集合为 。
       2层的可达集合为10,4 。
       因此要素4可达集合为10,4 。

当前为:3 层,包含有 1 个要素
        当前层的可达集合为 8
       3层的可达集合为8 。
       因此要素8可达集合为8 。

当前为:4 层,包含有 1 个要素
        当前层的可达集合为 4,8,6
        除了本层的要素还有4,8 开始处理4,8 指向层级的可达集合
           处理完了4,8 得到的可达集合为10,4 。
       4层的可达集合为4,8,6,10 。
       因此要素6可达集合为4,8,6,10 。

当前为:5 层,包含有 1 个要素
        当前层的可达集合为 6,5
        除了本层的要素还有6 开始处理6 指向层级的可达集合
           处理完了6 得到的可达集合为4,8,6,10 。
       5层的可达集合为6,5,4,8,10 。
       因此要素5可达集合为6,5,4,8,10 。

当前为:6 层,包含有 1 个要素
        当前层的可达集合为 2,4,10,1
        除了本层的要素还有2,4,10 开始处理2,4,10 指向层级的可达集合
           处理完了2,4,10 得到的可达集合为10,4 。
       6层的可达集合为2,4,10,1 。
       因此要素1可达集合为2,4,10,1 。

当前为:7 层,包含有 1 个要素
        当前层的可达集合为 1,7
        除了本层的要素还有1 开始处理1 指向层级的可达集合
           处理完了1 得到的可达集合为2,4,10,1 。
       7层的可达集合为1,7,2,4,10 。
       因此要素7可达集合为1,7,2,4,10 。

当前为:8 层,包含有 1 个要素
        当前层的可达集合为 2,5,7,0
        除了本层的要素还有2,5,7 开始处理2,5,7 指向层级的可达集合
           处理完了2,5,7 得到的可达集合为1,7,2,4,10,6,5,8 。
       8层的可达集合为2,5,7,0,1,4,10,6,8 。
       因此要素0可达集合为2,5,7,0,1,4,10,6,8 。

当前为:9 层,包含有 1 个要素
        当前层的可达集合为 6,9
        除了本层的要素还有6 开始处理6 指向层级的可达集合
           处理完了6 得到的可达集合为4,8,6,10 。
       9层的可达集合为6,9,4,8,10 。
       因此要素9可达集合为6,9,4,8,10 。

当前为:10 层,包含有 1 个要素
        当前层的可达集合为 4,7,9,11
        除了本层的要素还有4,7,9 开始处理4,7,9 指向层级的可达集合
           处理完了4,7,9 得到的可达集合为6,9,4,8,10,1,7,2 。
       10层的可达集合为4,7,9,11,6,8,10,1,2 。
       因此要素11可达集合为4,7,9,11,6,8,10,1,2 。

当前为:11 层,包含有 1 个要素
        当前层的可达集合为 6,11,3
        除了本层的要素还有6,11 开始处理6,11 指向层级的可达集合
           处理完了6,11 得到的可达集合为4,7,9,11,6,8,10,1,2 。
       11层的可达集合为6,11,3,4,7,9,8,10,1,2 。
       因此要素3可达集合为6,11,3,4,7,9,8,10,1,2 。

运行 21 次的集合运算,
运行 24 次的集合直接赋值,

得到的新矩阵为



  
1 1 1    1 1 1 1 1    1   
   1 1    1                1   
      1                           
   1 1 1 1    1 1 1 1 1 1
            1                1   
            1 1 1    1    1   
            1    1    1    1   
   1 1    1       1       1   
                        1         
            1    1    1 1 1   
                              1   
   1 1    1    1 1 1 1 1 1

原始矩阵的可达矩阵为



  
1 1 1    1 1 1 1 1    1   
   1 1    1                1   
      1                           
   1 1 1 1    1 1 1 1 1 1
            1                1   
            1 1 1    1    1   
            1    1    1    1   
   1 1    1       1       1   
                        1         
            1    1    1 1 1   
                              1   
   1 1    1    1 1 1 1 1 1

化学加平台
解释结构模型
感谢化学加提供单独服务器服务器!请大家多支持化学加平台,可以多介绍人关注化学加!
对解释结构模型在线计算有什么意见与建议请发电子邮件到, hwstu #sohu.com 把#替换成 @