js实现的二分查找算法实例


Posted in Javascript onJanuary 21, 2016

本文实例讲述了js实现的二分查找算法。分享给大家供大家参考,具体如下:

<!DOCTYPE html>
<html>
  <head>
    <title>demo</title>
    <style type="text/css">
    </style>
    <script type="text/javascript">
      var binarySearch = function(array, start, stop, num) {
        if(stop - start == 1) {
          if(array[start] == num) {
            return start;
          }
          if(array[stop] == num) {
            return stop;
          }
          return -1;
        }  
        var center = Math.floor((start + stop)/2);
        if(num != array[center]) {
          return num > array[center] ? binarySearch(array, center, stop, num) 
            : binarySearch(array, start, center, num);
        }
        return center;
      }
      var array = [1,4,6,12,15,20];
      document.writeln(binarySearch(array, 0, array.length, 2));
    </script>
  </head>
  <body>
  </body>
</html>

运行结果为:

-1

希望本文所述对大家JavaScript程序设计有所帮助。

Javascript 相关文章推荐
jQuery实现原理的模拟代码 -6 代码下载
Aug 16 Javascript
js获取html参数及向swf传递参数应用介绍
Feb 18 Javascript
jQuery渐变发光导航菜单的实例代码
Mar 27 Javascript
jQuery绑定事件不执行但alert后可以正常执行
Jun 03 Javascript
node.js中的console.time方法使用说明
Dec 09 Javascript
jQuery 回调函数(callback)的使用和基础
Feb 26 Javascript
Vue 短信验证码组件开发详解
Feb 14 Javascript
JavaScript实现实时更新系统时间的实例代码
Apr 04 Javascript
基于vue-cli 打包时抽离项目相关配置文件详解
Mar 07 Javascript
JavaScript 斐波那契数列 倒序输出 输出100以内的质数代码实例
Sep 11 Javascript
微信内置浏览器图片查看器的代码实例
Oct 08 Javascript
JavaScript圣杯布局与双飞翼布局实现案例详解
Aug 05 Javascript
jQuery模拟物体自由落体运动(附演示与demo源码下载)
Jan 21 #Javascript
angularjs表格分页功能详解
Jan 21 #Javascript
使用angularjs创建简单表格
Jan 21 #Javascript
Jquery中巧用Ajax的beforeSend方法
Jan 20 #Javascript
Javascript中神奇的this
Jan 20 #Javascript
javascript实现图片轮播效果
Jan 20 #Javascript
JS获取鼠标坐标位置实例分析
Jan 20 #Javascript
You might like
Laravel与CI框架中截取字符串函数
2016/05/08 PHP
php微信开发之音乐回复功能
2018/06/14 PHP
jQuery 表单验证插件formValidation实现个性化错误提示
2009/06/23 Javascript
javascript 面向对象编程 万物皆对象
2009/09/17 Javascript
JavaScript Sort 表格排序
2009/10/31 Javascript
javascript 哈希表(hashtable)的简单实现
2010/01/20 Javascript
jquery URL参数判断,确定菜单样式
2010/05/31 Javascript
Js从头学起(基本数据类型和引用类型的参数传递详细分析)
2012/02/16 Javascript
javascript重复绑定事件造成的后果说明
2013/03/02 Javascript
jquery使用ajax实现微信自动回复插件
2014/04/28 Javascript
jquery阻止后续事件只执行第一个事件
2014/07/24 Javascript
JQuery使用index方法获取Jquery对象数组下标的方法
2015/05/18 Javascript
js 定义对象数组(结合)多维数组方法
2016/07/27 Javascript
canvas实现图像放大镜
2017/02/06 Javascript
JS实现简易刻度时钟示例代码
2017/03/11 Javascript
Vue动态加载异步组件的方法
2018/11/21 Javascript
详解基于iview-ui的导航栏路径(面包屑)配置
2019/02/22 Javascript
javascript实现点亮灯泡特效示例
2019/10/15 Javascript
Python的lambda匿名函数的简单介绍
2013/04/25 Python
Python下singleton模式的实现方法
2014/07/16 Python
Pycharm学习教程(1) 定制外观
2017/05/02 Python
Python 稀疏矩阵-sparse 存储和转换
2017/05/27 Python
python使用pipeline批量读写redis的方法
2019/02/18 Python
Python遍历字典方式就实例详解
2019/12/28 Python
django rest framework serializer返回时间自动格式化方法
2020/03/31 Python
Python sorted排序方法如何实现
2020/03/31 Python
Origins悦木之源英国官网:雅诗兰黛集团高端植物护肤品牌
2017/11/06 全球购物
捷克厨房用品购物网站:Tescoma
2018/07/13 全球购物
继承时候类的执行顺序问题,一般都是选择题,问你将会打印出什么?
2015/11/18 面试题
即兴演讲稿
2014/01/04 职场文书
大学军训感言300字
2014/03/09 职场文书
化工专业求职信
2014/07/01 职场文书
教师党的群众路线教育实践活动剖析材料
2014/10/09 职场文书
单方离婚协议书范本2014
2014/10/28 职场文书
2016年学校十一国庆节活动总结
2016/04/01 职场文书
Win11右下角图标点了没反应怎么办?Win11点击右下角图标无反应解决方法汇总
2022/07/07 数码科技