我想在一個input透過陣列中使用二分搜尋,找到最相近的值,
並在input變換成最相近的數值,該如何實現呢?
假設陣列是 [ 4, 7, 8 ] 在input中輸入5 他會自動變成4.
求助大神!
//二分搜尋法
Array.prototype.binary_search = function(low, high, khey) {
if (low > high)
return -1;
var mid = parseInt((high + low) / 2);
if (this[mid] > khey)
return this.binary_search(low, mid - 1, khey);
if (this[mid] < khey)
return this.binary_search(mid + 1, high, khey);
return mid;
};
手掌心
相关分类