折半查找(二分法)

来源:互联网 发布:js通过标签名获取元素 编辑:程序博客网 时间:2024/05/01 22:45
折半查找#include <stdio.h>int bin_search(int arr[],int left,int right,int key){int mid=0;while(left<=right){ //mid=(left+right)/2;mid=left-(left-right)>>1;   if(arr[mid]<key)   {     left=mid+1;   }else if(arr[mid]>key)   {     right=mid-1;   }elsereturn mid;     }return -1;}int main(){int arr[]={0,1,2,3,4,5,6,7,8};int sz=sizeof(arr)/sizeof(arr[0])-1;int key=0;int left=0;int right=sz;int ret=0;scanf("%d",&key);ret=bin_search(arr,left,right,key);if(-1==ret)printf("没有找到\n");elseprintf("下标为%d\n",ret);system("pause");return 0;}

1 0
原创粉丝点击