折半查找
来源:互联网 发布:现代汉语词典软件 编辑:程序博客网 时间:2024/04/30 08:49
/*需求:折半查找某元素思路:通过不断的折半,找到目标元素步骤:1.min=0;max=length-1;mid=(min+max)/22.如果mid比key大,那么max改变问mid-1 如果mid比key小,min改为mid+13.找到就立即结束,如果min比max大,那就找不到,返回-1*/class HalfSearch{public static void main(String[] args) {int [] arr={1,2,3,6,7,9};int result=getIndex(arr,1);System.out.println(result);}//遍历查找public static int travelSearch(int [] arr,int key){for(int i=0;i<arr.length;i++){if(arr[i]==key){ return arr[i];}}return -1;}//折半查找public static int halfSearch(int [] arr,int key){int min=0,max=arr.length-1,mid=(min+max)/2;while(min<=max){if(arr[mid]<key)min=mid+1;else if(arr[mid]>key)max=mid-1;else return arr[mid];mid=(min+max)/2;}return -1;}//折半查找插入的位置public static int getIndex(int [] arr,int key){int min=0,max=arr.length-1,mid;if(min<=max){ mid=(min+max)>>1; if(arr[mid]<key) min=mid+1; else if(arr[mid]>key) max=mid-1; else return mid;}return min;}}
0 0
- 折半查找
- 折半查找
- 折半查找
- 折半查找
- 折半查找
- 折半查找
- 折半查找
- 折半查找
- 折半查找
- 折半查找
- 折半查找
- 折半查找
- 折半查找
- 折半查找
- 折半查找
- 折半查找
- 折半查找
- 折半查找
- linux和unix的对比
- fastcgi + nginx + c++ 资料
- 鬼哥 是个孙子。
- Hibernate4实战 之第七部分:最佳实践
- 音悦圈(MusicQuan)
- 折半查找
- c++ 文件写例子
- IOS学习笔记(三)UIView animation
- JavaMail发送邮件
- linux目录介绍
- warning: assignment makes pointer from integer without a cast
- 线段树区间更新——POJ 1436
- codeblocks快捷键
- 专访李运华:程序员如何在技术上提升自己