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 相关文章推荐
javaScript - 如何引入js代码
Mar 09 Javascript
几个常用的JavaScript字符串处理函数 - split()、join()、substring()和indexOf()
Jun 02 Javascript
JQuery的一些小应用收集
Mar 27 Javascript
js delete 用法(删除对象属性及变量)
Aug 24 Javascript
BootStrap制作导航条实例代码
May 06 Javascript
微信小程序 location API实例详解
Oct 02 Javascript
JS实现针对给定时间的倒计时功能示例
Apr 11 Javascript
详解小程序输入框闪烁及重影BUG解决方案
Aug 31 Javascript
ios设备中angularjs无法改变页面title的解决方法
Sep 13 Javascript
vue src动态加载请求获取图片的方法
Oct 17 Javascript
vue 实现通过vuex 存储值 在不同界面使用
Nov 11 Javascript
微信小程序实现时间进度条功能
Nov 17 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实现表单提交数据的验证处理功能【防SQL注入和XSS攻击等】
2017/07/21 PHP
Yii2框架中使用PHPExcel导出Excel文件的示例
2017/08/09 PHP
javascript jQuery $.post $.ajax用法
2008/07/09 Javascript
锋利的jQuery 要点归纳(三) jQuery中的事件和动画(下:动画篇)
2010/03/24 Javascript
分享10篇优秀的jQuery幻灯片制作教程及应用案例
2011/04/16 Javascript
解析JavaScript中的不可见数据类型
2013/12/02 Javascript
node.js中的fs.fstatSync方法使用说明
2014/12/15 Javascript
谈谈JavaScript自定义回调函数
2015/10/18 Javascript
EasyUI Pagination 分页的两种做法小结
2016/07/09 Javascript
禁用backspace网页回退功能的实现代码
2016/11/15 Javascript
一道面试题引发的对javascript类型转换的思考
2017/03/06 Javascript
利用JavaScript如何查询某个值是否数组内
2017/07/30 Javascript
vue-cli webpack 引入jquery的方法
2018/01/10 jQuery
解决vue打包项目后刷新404的问题
2018/03/06 Javascript
使用live-server快速搭建本地服务器+自动刷新的方法
2018/03/09 Javascript
详解webpack之图片引入-增强的file-loader:url-loader
2018/10/08 Javascript
js中位运算的运用实例分析
2018/12/11 Javascript
微信小程序自定义单项选择器样式
2019/07/25 Javascript
layer实现弹出层自动调节位置
2019/09/05 Javascript
vue-router 中 meta的用法详解
2019/11/01 Javascript
Vue组件通信入门之Provide和Inject机制
2019/12/29 Javascript
js 解析 JSON 数据简单示例
2020/04/21 Javascript
[02:04]2020年夜魇暗潮预告片
2020/10/30 DOTA
Python中使用asyncio 封装文件读写
2016/09/11 Python
浅析Python 读取图像文件的性能对比
2019/03/07 Python
Django restful framework生成API文档过程详解
2020/11/12 Python
python爬虫scrapy基本使用超详细教程
2021/02/20 Python
纯HTML5+CSS3制作图片旋转
2016/01/12 HTML / CSS
澳大利亚一站式数码相机商店:CameraPro
2020/03/09 全球购物
公务员培训自我鉴定
2013/09/19 职场文书
2014年医院工作总结
2014/11/20 职场文书
2015毕业实习推荐信
2015/03/23 职场文书
2015年审计人员工作总结
2015/05/26 职场文书
年会主持人开场白台词
2015/05/29 职场文书
Python turtle实现贪吃蛇游戏
2021/06/18 Python
海康机器人重磅发布全新算法开发平台VM4.2
2022/04/21 数码科技