javascript 折半查找字符在數(shù)組中的位置(有序列表)
更新時間:2010年12月09日 18:21:05 作者:
折半查找字符在數(shù)組中的位置(有序列表),需要的朋友可以參考下。
復制代碼 代碼如下:
/**
* 折半查找字符在數(shù)組中的位置(有序列表)
* @param array 被檢索的數(shù)組
* @param x 要查找的字符
* @type int
* @returns 字符在數(shù)組中的位置,沒找到返回-1
*/
function binarySearch(array,x){
var lowPoint=1;
var higPoint=array.length;
var returnValue=-1;
var midPoint;
var found=false;
while ((lowPoint<=higPoint)&&(!found)){
midPoint=Math.ceil((lowPoint+higPoint)/2);
//console.log(lowPoint+"===="+midPoint+"===="+higPoint);
if(x>array[midPoint-1]){
lowPoint=midPoint+1;
}
else if(x<array[midPoint-1]){
higPoint= midPoint-1;
}
else if(x=array[midPoint-1]){
found=true;
}
}
if(found){
returnValue=midPoint;
}
return returnValue;
}
/*var array2=[1,2,3,4,5,6,7,8,9,100,109];*/
var array2=['a','b','c','d','e','f','g'];
console.log(binarySearch(array2,'c'));
您可能感興趣的文章:
- JS查找數(shù)組中重復元素的方法詳解
- 利用js查找數(shù)組中指定元素并返回該元素的所有索引示例
- 使用indexOf等在JavaScript的數(shù)組中進行元素查找和替換
- javascript實現(xiàn)查找數(shù)組中最大值方法匯總
- JavaScript使用二分查找算法在數(shù)組中查找數(shù)據(jù)的方法
- JavaScript實現(xiàn)在數(shù)組中查找不同順序排列的字符串
- js中數(shù)組結合字符串實現(xiàn)查找(屏蔽廣告判斷url等)
- JS算法題之查找數(shù)字在數(shù)組中的索引位置
- JavaScript遍歷查找數(shù)組中最大值與最小值的方法示例
- JS實現(xiàn)查找數(shù)組中對象的屬性值是否存在示例
相關文章
javascript實現(xiàn)對話框功能警告(alert 消息對話框)確認(confirm 消息對話框)
這篇文章主要介紹了javascript:警告(alert 消息對話框),確認(confirm 消息對話框)的實現(xiàn)代碼,本文通過實例代碼給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下2019-05-05mint-ui的search組件在鍵盤顯示搜索按鈕的實現(xiàn)方法
這篇文章主要介紹了mint-ui的search組件在鍵盤顯示搜索按鈕的實現(xiàn)方法,需要的朋友可以參考下2017-10-10Javascript的console['''']常用輸入方法匯總
本文給大家?guī)砹耸畮追NJavascript的console['']常用輸入方法,每種方法給大家介紹的都很詳細,需要的朋友參考下吧2018-04-04JavaScript實現(xiàn)封閉區(qū)域布爾運算的示例代碼
這篇文章主要介紹了JavaScript實現(xiàn)封閉區(qū)域布爾運算的示例代碼,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-06-06