js实现二分查找

简介: 二分查找,也称为折半查找,是指在有序的数组里找出指定的值,返回该值在数组中的索引。查找步骤如下: (1)从有序数组的最中间元素开始查找,如果该元素正好是指定查找的值,则查找过程结束。

二分查找,也称为折半查找,是指在有序的数组里找出指定的值,返回该值在数组中的索引。查找步骤如下: 

(1)从有序数组的最中间元素开始查找,如果该元素正好是指定查找的值,则查找过程结束。否则进行下一步; 

(2)如果指定要查找的元素大于或者小于中间元素,则在数组大于或小于中间元素的那一半区域查找,然后重复第一步的操作; 

(3)重复以上过程,直到找到目标元素的索引,查找成功;或者直到子数组为空,查找失败。

优点是比较次数少,查找速度快,平均性能好;其缺点是要求待查表为有序表,且插入删除困难。因此,折半查找方法适用于不经常变动而查找频繁的有序列表。

img_e1dc244ef465634e7a4e306f80fd6b81.png
img_4821fdf521a590c725b9f57e79df9b3a.png
相关文章
|
10月前
|
算法 JavaScript 前端开发
JavaScript算法和数据结构:写一个二分查找的函数。
JavaScript算法和数据结构:写一个二分查找的函数。
63 0
|
JavaScript
js实现二分查找
js实现二分查找
58 0
|
8月前
|
算法 JavaScript
JS 【算法】二分查找
JS 【算法】二分查找
48 0
|
JavaScript 算法 前端开发
【前端算法】JS实现数字千分位格式化
JS实现数字千分位格式化的几种思路,以及它们之间的性能比较
369 1
|
存储 前端开发 算法
一行代码解决LeetCode实现 strStr()使用JavaScript解题|前端学算法
一行代码解决LeetCode实现 strStr()使用JavaScript解题|前端学算法
186 0
一行代码解决LeetCode实现 strStr()使用JavaScript解题|前端学算法
|
前端开发 算法 JavaScript
LeetCode二分查找使用JavaScript破解|前端学算法
LeetCode二分查找使用JavaScript破解|前端学算法
106 0
LeetCode二分查找使用JavaScript破解|前端学算法
|
存储 机器学习/深度学习 JavaScript
JS 你最少用几行代码实现深拷贝?
JS 你最少用几行代码实现深拷贝?
JS 你最少用几行代码实现深拷贝?
|
JavaScript 前端开发 算法
JavaScript实现一段时间之后关闭广告
简介:通过JavaScript实现在一段时间之后,广告消失。
147 0
JavaScript实现一段时间之后关闭广告
|
JavaScript 前端开发 算法
JS实现鼠标悬停变色
本文实现的是利用JS实现当鼠标悬停在表格上的时候,表格发生变色。 CSS渲染 JS逻辑 `
240 0
JS实现鼠标悬停变色
|
JavaScript 前端开发 数据安全/隐私保护
JS实现关闭图片窗口
通过事件的绑定来实现,关闭二维码的效果。
178 0
JS实现关闭图片窗口

热门文章

最新文章