/**
* 使用二分法时,首要条件是数组本身是排序的.
*/
function binarySearch(arr, value){
var startIndex = 0,
endIndex = arr.length - 1,
middleIndex = Math.floor((endIndex+startIndex)/2);
while(arr[middleIndex]!= value && startIndex < endIndex){
if(value < arr[middleIndex]) endIndex = middleIndex - 1;
else if(value > arr[middleIndex]) startIndex = middleIndex + 1;
middleIndex = Math.floor((endIndex+startIndex)/2);
}
return arr[middleIndex] != value ? -1 : middleIndex;
}
二分法_JavaScript版
最新推荐文章于 2022-08-04 14:40:10 发布
本文介绍了一种高效的查找算法——二分查找,并提供了其实现代码。该算法适用于已排序的数组,通过不断缩小搜索范围实现快速查找目标值。
266

被折叠的 条评论
为什么被折叠?



