纯C语言:折半查找源码分享
纯C语言:折半查找源码分享
发布时间:2016-12-28 来源:查字典编辑
摘要:复制代码代码如下:#includeintbin_search(intkey[],intlow,inthigh,intk){intmid;if...

复制代码 代码如下:

#include <stdio.h>

int bin_search(int key[],int low, int high,int k)

{

int mid;

if(low>high)

{

return -1;

}

else

{

mid = (low+high) / 2;

if(key[mid]==k)

return mid;

if(k>key[mid])

return bin_search(key,mid+1,high,k); /*在序列的后半部分查找*/

else

return bin_search(key,low,mid-1,k); /*在序列的前半部分查找*/

}

}

int main()

{

int n , i , addr;

int A[10] = {2,3,5,7,8,10,12,15,19,21};

printf("The contents of the Array A[10] aren");

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

printf("%d ",A[i]); /*显示数组A中的内容*/

printf("nPlease input a interger for searchn");

scanf("%d",&n); /*输入待查找的元素*/

addr = bin_search(A,0,9,n);

if(-1 != addr)/*查找成功*/

{

printf("%d is at the %dth unit is array An ",n,addr);

}

else

{

printf("There is no %d in array An",n); /*查找失败*/

}

getchar();

return 0;

}

推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
相关阅读
网友关注
最新C语言学习
热门C语言学习
编程开发子分类