相关疑难解决方法(0)

确定递归函数的复杂性(Big O表示法)

我明天有一个计算机科学中期,我需要帮助确定这些递归函数的复杂性.我知道如何解决简单的案例,但我仍然在努力学习如何解决这些更难的案例.这些只是我无法弄清楚的一些示例问题.任何帮助将非常感谢,并将大大有助于我的学习,谢谢!

int recursiveFun1(int n)
{
    if (n <= 0)
        return 1;
    else
        return 1 + recursiveFun1(n-1);
}

int recursiveFun2(int n)
{
    if (n <= 0)
        return 1;
    else
        return 1 + recursiveFun2(n-5);
}

int recursiveFun3(int n)
{
    if (n <= 0)
        return 1;
    else
        return 1 + recursiveFun3(n/5);
}

void recursiveFun4(int n, int m, int o)
{
    if (n <= 0)
    {
        printf("%d, %d\n",m, o);
    }
    else
    {
        recursiveFun4(n-1, m+1, o);
        recursiveFun4(n-1, m, o+1);
    }
}

int recursiveFun5(int n)
{ …
Run Code Online (Sandbox Code Playgroud)

recursion complexity-theory big-o

242
推荐指数
5
解决办法
19万
查看次数

为什么计算Fibonacci系列2 ^ n而不是n ^ 2的复杂性?

我试图找到使用递归树的Fibonacci系列的复杂性,并因此得出height of tree = O(n)最坏情况cost of each level = cncomplexity = n*n=n^2

怎么回事O(2^n)

algorithm recursion big-o fibonacci

24
推荐指数
5
解决办法
5万
查看次数