Given an integer x and a positive number y, write a function that computes xy under following conditions.
a) Time complexity of the function should be O(Log y)
b) Extra Space is O(1)
Input: x = 3, y = 5 Output: 243 Input: x = 2, y = 5 Output: 32
We strongly recommend that you click here and practice it, before moving on to the solution.
We have discussed recursive O(Log y) solution for power. The recursive solutions are generally not preferred as they require space on call stack and they involve function call overhead.
Following is implementation to compute xy.
Power is 243
This article is contributed by Udit Gupta. Please write comments if you find anything incorrect, or you want to share more information about the topic discussed above
- Write a function that generates one of 3 numbers according to given probabilities
- Write a function to get the intersection point of two Linked Lists
- Write a program to calculate pow(x,n)
- Ways to write N as sum of two or more positive integers | Set-2
- Write a program to add two numbers in base 14
- Program for Picard's iterative method | Computational Mathematics
- Space efficient iterative method to Fibonacci number
- Iterative program to generate distinct Permutations of a String
- Write you own Power without using multiplication(*) and division(/) operators
- Write a program to print all permutations of a given string
- Write a program to reverse digits of a number
- Write an Efficient Method to Check if a Number is Multiple of 3
- Write an Efficient C Program to Reverse Bits of a Number
- Write a Program to Find the Maximum Depth or Height of a Tree
- Minimum value possible of a given function from the given set