📅  最后修改于: 2021-01-09 14:58:02             🧑  作者: Mango
循环复杂度是一种用于度量程序复杂度的软件度量。 Thomas J. McCabe于1976年开发了此度量标准。McCabe将计算机程序解释为一组强连接的有向图。节点代表源代码中没有分支的部分,弧代表程序执行期间可能的控制流转移。程序图的概念已用于此度量,它用于度量和控制通过程序的路径数。计算机程序的复杂度可以与图的拓扑复杂度相关。
McCabe提出了图论的圈数V(G)作为软件复杂性的指标。圈数等于在其图形表示中通过程序的线性独立路径的数量。对于程序控制图G,圈数V(G)给出为:
V(G)= E-N + 2 * P
E =图形G中的边数
N =图G中的节点数
P =图形G中连接的组件数。
以下是圈复杂度的属性: