1、二分查找,就是把要查找的数组分成两部分,分别查找,如同快速查找。(前提:查找的数组必须是有序数组);
2、代码:
private int binarySearch(int [] old,int low,int height,int search){ if(low<height){ int middle = (low+height)>>1; if(search == old[middle]){ return middle; }else if(search>old[middle]){ return binarySearch(old,middle+1,height,search); }else { return binarySearch(old,low,middle-1,search); } } return -1; }
总结:和快速查找相似,在有序数组中查找目表数值,若找不到目标数据,返回-1;