我目前没有安装任何用于测量环码复杂代码的程序。但我想知道递归方法会增加复杂性吗?
e.g。
// just a simple C# example to recursively find an int[]
// within a pile of string[]
private int[] extractInts(string[] s)
{
foreach (string s1 in s)
{
if (s1.ints.length < 0)
{
extractInts(s1);
}
else
{
return ints;
}
}
}
感谢。
答案 0 :(得分:4)
据我了解,不。在您的示例中,只有一条线性独立的递归方法路径,因此不会增加圈复杂度。
答案 1 :(得分:2)
即使递归调用本身不会严格计为增量,保护条件也会如此。这使循环和递归+保护在标准。