您的位置:首页 > 编程语言 > Java开发

Java二分查找算法

2016-05-29 12:07 246 查看
二分查找又称折半查找,将待查找的键key与数组中间值array[mid]比较,如果相等,则查找成功,

如果key小于数组中间值,则在数组前半段查找,如果key大于数组中间值,则在数组后半段查找,

如果没有则查找失败。

优点:查找速度快,比较次数少,平均性能好

缺点:要求待查表是有序表,插入、删除困难

递归方法:

public static int search(int[] arr,int key){

int begin = 0,end = arr.length-1;

while(begin<=end){
<pre name="code" class="java">                        int mid = (begin+end)/2;
  if(arr[mid] == key)return mid;//查找成功返回key值下标else if(arr[mid] > key){end = mid-1;}else {begin = mid+1;}}return -1;//查找失败返回-1}

                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: