美文网首页
js实现二分法查找方法

js实现二分法查找方法

作者: isSunny | 来源:发表于2019-07-24 21:37 被阅读0次

所谓二分法查找法,也就是折半查找,它是一种在有序数组查找特定元素的搜索算法。

参考《前端程序员面试秘籍》

var arr = [1,2,3,4,5,6];
function getIndex1(arr,key){
            var low = 0;
            var high = arr.length-1;
            while(low<=high){
                var mid = Math.floor((low+high)/2);
                if(key===arr[mid]){
                    return mid;
                }else if(key>arr[mid]){
                    low = mid+1;
                }else{
                    height = mid-1;
                }
            }
            return -1;
}
console.log(getIndex1(arr,5));//4

思想:从数组中开始查找,如果该元素是要搜索的目标元素,则循环结束,如果不是继续下一步,如果目标元素大于或者小于中间元素,则在数组大于或者小于中间元素的那一半区域进行查找,进而重复上面操作。如果数组是空的,则找不到该目标元素。

相关文章

  • golang循环递增数组查找值

    循环递增数组查找值 golang 1.实现要求 在循环递增数组中查找某个值 2.实现方法 使用二分法实现查找 使用...

  • 常见算法的 Python 实现

    二分法查找 非递归版本: 递归方法实现: 冒泡排序 选择排序

  • 1.二分法查找(用js学算法)

    二分法查找的必要条件:数据必须是一个有序的列表概述:利用每次都先找到中间值然后排除一半数据的方法进行查找 js实现...

  • js实现二分法查找方法

    所谓二分法查找法,也就是折半查找,它是一种在有序数组查找特定元素的搜索算法。 参考《前端程序员面试秘籍》 思想:从...

  • 刷前端面经笔记(九)

    1.JavaScript实现二分法查找? 二分法查找,也称折半查找,是一种在有序数组中查找特定元素的搜索算法。查找...

  • PHP中实现二分法查找的两种方法

    php实现二分法的查找其实很简单,跟我一起来看看怎么实现吧。 二分法查找需要数组是一个递增的数组。 想要写出二分法...

  • js和JQuery对DOM增删改查的对比

    查找 JS方法1 查找节点1 查找节点组1 JS方法2 查找节点2 查找节点组2 小结 根据JS和JQuery的对...

  • 二分法查找

    二分法查找效率高,其查找次数与总元素数量存在对数关系 原理在进行二分法查找前需要先对数据进行排序(具体排序实现详见...

  • 二分法查找

    二分法基本查找 二分法遍历查找

  • 二分法查找

    二分法查找:当数据量很大适宜采用该方法。采用二分法查找时,数据需是排好序的。二分查找时间复杂度 O(logn)

网友评论

      本文标题:js实现二分法查找方法

      本文链接:https://www.haomeiwen.com/subject/sbtqrctx.html