1. McCabe认为强连接圈的数量就是图中线性独立环路数的数量。
2. 通常环路复杂性(圈数)可用以下三种方法求得。
<1>. 将环路复杂性定义为控制流图中的区域数。
<2>. 设E 为控制流图的边数,N 为图的结点数,则定义环路复杂性为 V(G)=E-N+2。
<3>. 若设P 为控制流图中的判定结点数,则有 V(G)=P+1。因为圈复杂度所反映的是“判定条件”的数量,所以圈复杂度实际上就是等于判定节点的数量再加上1。
<1>. 将环路复杂性定义为控制流图中的区域数。
<2>. 设E 为控制流图的边数,N 为图的结点数,则定义环路复杂性为 V(G)=E-N+2。
<3>. 若设P 为控制流图中的判定结点数,则有 V(G)=P+1。因为圈复杂度所反映的是“判定条件”的数量,所以圈复杂度实际上就是等于判定节点的数量再加上1。
实例:
一组独立的路径是:
path1:1 - 11
path2:1 - 2 - 3 - 4 - 5 - 10 - 1 - 11
path3:1 - 2 - 3 - 6 - 8 - 9 - 10 - 1 - 11
path4:1 - 2 - 3 - 6 - 7 - 9 - 10 - 1 - 11
path1:1 - 11
path2:1 - 2 - 3 - 4 - 5 - 10 - 1 - 11
path3:1 - 2 - 3 - 6 - 8 - 9 - 10 - 1 - 11
path4:1 - 2 - 3 - 6 - 7 - 9 - 10 - 1 - 11