查找算法

参考资料

有序查找

二分查找

循环版

int search(int[] arr,int v){
  int low=0;
  int mid=0;
  int high=arr.length-1;
  
  while(low<=high){
    mid=(low+high)/2;
    if(arr[mid]==v) return mid;
    else if(arr[mid]>v) high=mid-1;
    else if(arr[mid]<v) low=mid+1;
  }
}

递归版

无序查找

顺序查找
int search(int[] arr,int v){
  for(int i=0;i<arr.length;i++){
    if(arr[i]==v)    return i;
  }
  reutrn -1;
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容