function find2(arr, needle){
var len = arr.length,
s=0,e = len -1, m = parseInt(e/2);
while(s!=e){
if(arr[m]>needle){
e = m;
}
if(arr[m]<needle){
s = m;
}
if(arr[m]==needle){
return m;
}
m = parseInt((s+e)/2);
}
}
var mm = [1,2,3,4,5,6,7,8,9,10];
alert(find2(mm, 3));
alert(find2(mm, 4));
简单的折半查找
最新推荐文章于 2020-02-20 11:48:28 发布