首頁  >  文章  >  web前端  >  使用 Javascript 的搜尋演算法

使用 Javascript 的搜尋演算法

王林
王林原創
2024-08-18 00:03:321120瀏覽

Searching Algorithm Using Javascript

搜尋演算法有以下兩種。

  1. 線性搜尋
  2. 二分搜尋(我們必須將排序數組當作輸入)
const linearSearch = (arr, value) => {
    for (let item of arr) {
        if (item == value) {
            return true;
        }
    }
    return false;
};

console.log(linearSearch([1,2,3,4,5,6,7,8,9], 7));
console.log(linearSearch([1,2,3,4,5,6,7,8,9], 3));
console.log(linearSearch([1,2,3,4,5,6,7,8,9], 10));
console.log(linearSearch([1,2,3,4,5,6,7,8,9], 9));

二分查找

const binarySearch =  (arr, value, low = 0, high=arr.length-1) => {
    const mid = Math.floor((low + high)/2);
    const midValue = arr[mid];
    if (low > high) {
        return false;
    }
    if (midValue == value) {
        return true;
    } else if (midValue > value) {
        return binarySearch(arr, value, low, mid);
    } else {
        return binarySearch(arr, value, mid+1, high);
    }
}

const arr = [9,8,7,6,5,4,3,2,1];
arr.sort((a,b) => a-b);

console.log(binarySearch(arr, 7));
console.log(binarySearch(arr, 3));
console.log(binarySearch(arr, 10));
console.log(binarySearch(arr, 9));

以上是使用 Javascript 的搜尋演算法的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn