Donate to Grow My Website (1 $ please)

  • You may choose specified posts to show it as featured posts with automatic sliding effects and keep visitors engaged for long time on your sites.
  • Dec 12, 2018

    Time Complexity of Loop with Powers - Learnengineeringforu

    Time Complexity of Loop with Powers

    What is the time complexity of below function?




    void fun(int n, int k)
    {
        for (int i=1; i<=n; i++)
        {
          int p = pow(i, k); 
          for (int j=1; j<=p; j++)
          {
              // Some O(1) work
          }
        }
    }
    Time complexity of above function can be written as 1k + 2k + 3k + … n1k.
    Let us try few examples:
    k=1
    Sum = 1 + 2 + 3 ... n 
        = n(n+1)/2 
        = n2 + n/2
    
    k=2
    Sum = 12 + 22 + 32 + ... n12.
        = n(n+1)(2n+1)/6
        = n3/3 + n2/2 + n/6
    
    k=3
    Sum = 13 + 23 + 33 + ... n13.
        = n2(n+1)2/4
        = n4/4 + n3/2 + n2/4     
    
    In general, asymptotic value can be written as (nk+1)/(k+1) + Θ(nk)
    Note that, in asymptotic notations like Θ we can always ignore lower order terms. So the time complexity is Θ(nk+1 / (k+1))
    Please write comments if you find anything incorrect, or you want to share more information about the topic discussed above

    No comments:
    Write Comments