3
了解环复杂性
我最近遇到了“ 圈复杂度”问题,我想尝试更好地理解它。 计算复杂度的不同因素有哪些实用的编码示例?具体来说,对于的Wikipedia等式M = E − N + 2P,我想更好地理解以下各个术语的含义: E =图的边数 N =图的节点数 P =连接的组件数 我怀疑E或N可能是代码块中决策点的数量(如果是,则是foreach等),但是我不确定是哪个代表另一个。我还猜测P是指函数调用和类实例化,但是鉴于我可以看到,没有一个明确的定义。如果某人可以通过一些清晰的代码示例来阐明更多信息,那将会有所帮助。 作为后续措施,环复杂性是否与100%路径覆盖所需的单元测试数量直接相关?例如,复杂度为4的方法是否表示需要4个单元测试才能覆盖该方法? 最后,正则表达式会影响环复杂度吗?