js中二分搜索的使用

美女程序员鼓励师

1、二分搜索的前提是数组有序,从数组的中间元素开始。如果中间元素恰好是目标值,搜索就结束了。

2、如果目标值大于或小于中间元素,则在大于或小于中间元素的一半中进行搜索。

实例

Array.prototype.binarySearch = function (item) {

  let low = 0;

  let high = this.length - 1;

  while (low <= high) {

    const mid = Math.floor((low + high) / 2);

    const element = this[mid];

    if (element < item) {

      low = mid + 1;

    } else if (element > item) {

      high = mid - 1;

    } else {

      return mid;

    }

  }

  return -1;

};

const arr = [1, 2, 3, 4, 5];

const res = arr.binarySearch(3);

以上就是js中二分搜索的使用,希望对大家有所帮助。更多js学习指路:js教程

推荐操作环境:windows7系统、jquery3.2.1版本,DELL G3电脑。

以上是 js中二分搜索的使用 的全部内容, 来源链接: utcz.com/z/546323.html

回到顶部