java算法学习笔记--穷举算法/递推算法思想

时间:2022-03-31 12:47:26

1穷举法的适用范围

穷举法算法效率并不高,但是适合一些没有明显规律可循的场合。

2穷举法执行步骤

对于一种可能的情况,计算其结果;判断结果是否正确,不满足则执行第一步。

3例子-鸡兔同笼

问题:今有鸡兔同笼,上有35头,下有94足,问鸡兔各几何。

java代码

int qiongjie(int head,int foot)

{

int i ,j;

for(i=0;i<=head;i++)

{

j=head-i;

if(i*2+j*4=foot)

{

re=1;

chicken=i;

rabbit=j;

}

}

}

<---------------------------------------------->

4递推算法适合范围

在数学计算等场合有着广泛的应用,适合有明显公式规律的场合

5递推算法执行过程

一:根据已知结果和关系,求解中间结果。2:判断是否达到要求,是否重服第一步

6例子--兔子产子

第一个月:1对兔子;第2个月1对兔子;第三个月:2对兔子;第四个月:3对兔子;第五个月:5对兔子;。。。。

总结规律,fn=f(n-2)+f(n-1);

java代码表示:

int fiboacci(n){

int t1,t2;

if(n==1||n=2)

{

return 1;

}

else{

t1=fibonacci(n-1);

t2=fibonacci(n-2);

return t1+t2;

}

}