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 相关文章推荐
用AJAX返回HTML片段中的JavaScript脚本
Jan 04 Javascript
jQuery学习笔记之jQuery选择器的使用
Dec 22 Javascript
cnblogs 代码高亮显示后的代码复制问题解决实现代码
Dec 14 Javascript
Firefox和IE兼容性问题及解决方法总结
Oct 08 Javascript
加随机数引入脚本不让浏览器读取缓存
Sep 04 Javascript
用C/C++来实现 Node.js 的模块(一)
Sep 24 Javascript
JS中的Replace方法使用经验分享
May 20 Javascript
微信小程序 require机制详解及实例代码
Dec 14 Javascript
node.js 抓取代理ip实例代码
Apr 30 Javascript
vue轮播图插件vue-awesome-swiper的使用代码实例
Jul 10 Javascript
详解利用 Express 托管静态文件的方法
Sep 18 Javascript
JS使用for in有序获取对象数据
May 19 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
PHP在XP下IIS和Apache2服务器上的安装
2006/09/05 PHP
php提示Failed to write session data错误的解决方法
2014/12/17 PHP
PHP中调用C/C++制作的动态链接库的教程
2016/03/10 PHP
jquery ajax 同步异步的执行示例代码
2010/06/23 Javascript
jQuery学习总结之元素的相对定位和选择器(持续更新)
2011/04/26 Javascript
jQuery移动和复制dom节点实用DOM操作案例
2012/12/17 Javascript
js变换显示图片的实例
2013/04/16 Javascript
实用的Jquery选项卡TAB示例代码
2013/08/28 Javascript
jQuery使用addClass()方法给元素添加多个class样式
2015/03/26 Javascript
jquery实现简单的自动播放幻灯片效果
2015/06/13 Javascript
jQuery操作json常用方法示例
2017/01/04 Javascript
node.js中axios使用心得总结
2017/11/29 Javascript
jQuery获取所有父级元素及同级元素及子元素的方法(推荐)
2018/01/21 jQuery
Vue数据双向绑定的深入探究
2018/11/27 Javascript
Javascript原型链及instanceof原理详解
2020/05/25 Javascript
python多线程threading.Lock锁用法实例
2014/11/01 Python
python字符串的常用操作方法小结
2016/05/21 Python
在 Python 应用中使用 MongoDB的方法
2017/01/05 Python
解决python3在anaconda下安装caffe失败的问题
2017/06/15 Python
基于Python和Scikit-Learn的机器学习探索
2017/10/16 Python
Python配置文件处理的方法教程
2019/08/29 Python
在Python中通过threshold创建mask方式
2020/02/19 Python
pytorch中 gpu与gpu、gpu与cpu 在load时相互转化操作
2020/05/25 Python
阿玛尼美妆俄罗斯官网:Giorgio Armani Beauty RU
2020/07/19 全球购物
Java程序员综合测试题
2014/04/25 面试题
销售主管岗位职责范本
2014/02/14 职场文书
父母对孩子的寄语
2014/04/09 职场文书
我的中国梦演讲稿1000字
2014/08/19 职场文书
中秋节国旗下演讲稿
2014/09/13 职场文书
采购员岗位职责
2015/02/03 职场文书
英文慰问信
2015/02/14 职场文书
工厂仓库管理员岗位职责
2015/04/09 职场文书
培训学校2015年度工作总结
2015/07/20 职场文书
2019员工保密协议书(3篇)
2019/09/23 职场文书
如何判断微信付款码和支付宝付款码
2021/04/01 PHP
Win10 和 Win11可以共存吗? win10/11产品生命周期/服务更新介绍
2021/11/21 数码科技