coding_Questioninteriew_basic
coding_Questioninteriew_basic
Example 1:
Input: n = 2
Output: 1
Explanation: F(2) = F(1) + F(0) = 1 + 0 = 1.
Example 2:
Input: n = 3
Output: 2
Explanation: F(3) = F(2) + F(1) = 1 + 1 = 2.
Example 3:
Input: n = 4
Output: 3
Explanation: F(4) = F(3) + F(2) = 2 + 1 = 3.
Constraints:
0 <= n <= 30
Solution:-
1. recursion
class Solution {
public int fib(int n) {
if(n==0)
{
return 0;
}
if(n==1)
{
return 1;
}
return fib(n-1)+fib(n-2);
}}
2. loop with extra space
class Solution {
public int fib(int n) {
if(n==0)
{
return 0;
}
if(n==1)
{
return 1;
}
int fib[]=new int [n+1];
fib[0]=0;
fib[1]=1;
for(int i=2;i<=n;i++)
{
fib[i]=fib[i-1]+fib[i-2];
}
return fib[n];
}}
class Solution {
public int fib(int n) {
if(n==0)
{
return 0;
}
int slast=0;
int last=1;
int temp=0;
for(int i=2;i<=n;i++) {
temp=last+slast;
slast=last;
last=temp;
}
return temp;
//return fib[n];
}
}