快速可达矩阵计算(先获得所有有序的回路,再进行一次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层

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



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

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

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

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

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

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

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

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

运行 20 次的集合运算,
运行 19 次的集合直接赋值,

得到的新矩阵为



   子丑寅卯辰巳午未申酉戌亥
子 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    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 把#替换成 @