admin管理员组文章数量:1516870
查找
二分法查找,递归实现
public static void main(String[] args){int arr[] = {2,12,16,17,19,22,35,37};int index = BinarySearch(35,0,arr.length,arr);System.out.println(index);}public static int BinarySearch(int elem,int low,int high,int arr[]){//二分法查找,递归实现//对于有序集合,如果无序先进行排序if(low > high) return -1;int min = (low + high)/2;if(arr[min] == elem) return min;if(arr[min] > elem) return BinarySearch(elem,low,min-1,arr);if(arr[min] < elem) return BinarySearch(elem,min+1,high,arr);return -1;} 二分法查找实现
//二分法查找实现int arr[] = {2,12,16,17,19,22,35,37};int temp = 36;int start = 0;int end = arr.length;int count = 0;while(true){count ++;if(count > arr.length){System.out.println("没有找到这个数");break;}int min = (start + end)/2;if(arr[min] > temp){end = min;}else if(arr[min] < temp){start = min;}else{System.out.println(min);break;}}
转载于:.html
本文标签: 查找
版权声明:本文标题:查找 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://www.betaflare.com/biancheng/1701740425a472574.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。


发表评论