//****************二分法与简单遍历法的效率比较
#include <stdio.h>
#include <malloc.h>
#include <time.h>
#define len 100000000
int binary_find(int [], int ,int );
int Normal_find(int [], int ,int );
int array[len]={0};
int main()
{
int num;
time_t t_start,t_end;
for (int i=0;i<len;i++)
{
array[i]=i+1;
}
printf("查找的元素是:");
scanf("%d",&num);
//*********************
t_start = clock();
printf("查找的元素位置在:%d\n",binary_find(array,len,num));
t_end = clock();
printf("二分法用时%.6f s\n",double(t_end-t_start)/CLOCKS_PER_SEC);
//*********************
t_start = clock();
printf("查找的元素位置在:%d\n",Normal_find(array,len,num));
t_end = clock();
printf("简单遍历用时%.6f s\n",double(t_end-t_start)/CLOCKS_PER_SEC);
//********************
return 0;
}
int binary_find(int array[],int length,int value)
{
if(NULL == array || length == 0)
r
二分法与简单遍历的效率比较
最新推荐文章于 2024-05-19 23:17:06 发布