#include<stdio.h>
//二分查找的递归法
void Search(int p[],int low,int height,int key)
{
int middle=(low+height)/2;
if(low>height)
{
printf("啥都没有");
return;
}
if(p[middle]==key)
{
printf("%d\n",middle);
return;
}
else if(p[middle]>key)
{
Search(p,low,middle-1,key);
}
else if(p[middle]<key)
{
Search(p,middle+1,height,key);
}
}
int main()
{
int p[5]={1,2,3,4,5};
Search(p,0,4,4);
getchar();
return 0;
}
//将斐波那契数列改为递归版本
int Fibonacci(int n)
{
int tmp;
if(n == 1||n == 2)
{
tmp = 1;
return tmp;
}
else
{
tmp=Fibonacci(n-2)+Fibonacci(n-1);
return tmp;
}
}
int main()
{
printf("%2d\n",Fibonacci(6));
getchar();
return 0;
}
C语言:二分查找的递归法、将斐波那契数列改为递归版本
最新推荐文章于 2021-12-05 17:48:00 发布