Compute the factorial of a given input non-negative integer.
- Design and implement a method that computes factorial of the input non-negative integer and returns it.
- Factorial of a number, 'n' is represented as n! and is defined as follows:
- 0! = 1
- n! = n * (n-1)! if n > 0
-
= *n * (n-1) * (n-2) * ... * 1*
- For example, 3! = 3 * 2 * 1 = 6. 6! = 720.
- Share and explain the time and space complexities for your solution.
- If you think of multiple approaches to solve the problem, implement the solution which minimizes space complexity. Explain the other approaches, and your decision in comments above the code.
Further reading: Learn more on Factorial to be prepared to answer similar questions to the one we did in this exercise.