js實現二分查詢

2021-09-20 00:24:11 字數 454 閱讀 2590

二分查詢,也稱為折半查詢,是指在有序的陣列裡找出指定的值,返回該值在陣列中的索引。查詢步驟如下: 

(1)從有序陣列的最中間元素開始查詢,如果該元素正好是指定查詢的值,則查詢過程結束。否則進行下一步; 

(2)如果指定要查詢的元素大於或者小於中間元素,則在陣列大於或小於中間元素的那一半區域查詢,然後重複第一步的操作; 

(3)重複以上過程,直到找到目標元素的索引,查詢成功;或者直到子陣列為空,查詢失敗。

優點是比較次數少,查詢速度快,平均效能好;其缺點是要求待查表為有序表,且插入刪除困難。因此,折半查詢方法適用於不經常變動而查詢頻繁的有序列表。

js實現二分查詢

二分查詢需要陣列是有序的,1 先從有序陣列的最中間元素開始查詢,如果和要查詢的元素相等,直接返回索引,若不相等則下一步。2 如果指定的元素大於或者小於中間元素,則在大於或小於的那一半區域內查詢,重複第一步直到找到目標元素。不使用遞迴 1 function search arr,key else if...

原生js實現二分查詢

二分查詢需要陣列是有序的,1 先從有序陣列的最中間元素開始查詢,如果和要查詢的元素相等,直接返回索引,若不相等則下一步。2 如果指定的元素大於或者小於中間元素,則在大於或小於的那一半區域內查詢,重複第一步直到找到目標元素。不使用遞迴 function search arr,key else if a...

js 二分查詢的實現

1.遞迴實現 function binarysearch data,dest,start,end if dest data m else return false var arr 34,1,3,4,5,8,34,45,65,87 binarysearch arr,4 32.非遞迴實現 functio...