标签:pre 增强 item 查询 null 地方 列表 list int start
适用地方:在排序后的列表中查找对应的值 大大增强查询命中效率/**
* 二分查找 增快循环效率
* @param list 排序后的列表
* @param start 开始索引
* @param end 结束索引
* @param value 对照值
* @return
*/
public Integer efFind(List<Integer> list ,int start, int end ,int value){
//零界值处理
if(start > end){
return null;
}
int mid = (end-start) / 2 + start;
Integer item =list.get(mid);
if(item<=value && item>=value){
return item;
}else if(item > value){
return efFind(list,start, mid-1,value);
}else if(item < value){
return efFind(list,mid+1,end,value);
}
return null;
}
标签:pre 增强 item 查询 null 地方 列表 list int start
原文地址:https://blog.51cto.com/5013162/2392239