Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2793217
  • 博文数量: 471
  • 博客积分: 7081
  • 博客等级: 少将
  • 技术积分: 5369
  • 用 户 组: 普通用户
  • 注册时间: 2012-01-04 21:55
文章分类

全部博文(471)

文章存档

2014年(90)

2013年(69)

2012年(312)

分类: C/C++

2012-08-06 08:57:47


点击(此处)折叠或打开

  1. #include<stdio.h>

  2. int binary(int a[],int key,int len)
  3. {
  4.     int low,high,mid;
  5.     low=0,high=len-1;
  6.     while(low<=high)
  7.     {
  8.         mid=(low+high)/2;
  9.         if(key==a[mid]) return mid;
  10.         else if(key>a[mid])
  11.             low=mid+1;
  12.         else
  13.             high=mid-1;
  14.     }
  15.     return -1;
  16. }

  17. int main()
  18. {
  19.     int a[11]={1,2,4,5,10,11,12,13,14,15};
  20.     int key;
  21.     
  22.     while(scanf("%d",&key)!=EOF && key)
  23.     {
  24.     int index= binary(a,key,10);
  25.     printf("%d\n",index);
  26.     }
  27.     return 0;
  28. }

阅读(825) | 评论(0) | 转发(0) |
0

上一篇:hdu OJ 要注意的

下一篇:求解方程逼近区间

给主人留下些什么吧!~~