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 相关文章推荐
document.all与WEB标准
May 13 Javascript
原生javascript实现图片轮播效果代码
Sep 03 Javascript
jquery checkbox 勾选的bug问题解决方案与分析
Nov 13 Javascript
jquery根据一个值来选中select下的option实例代码
Aug 29 Javascript
JQuery中Ajax的操作完整例子
Mar 07 Javascript
Angularjs中使用指令绑定点击事件的方法
Mar 30 Javascript
微信小程序 同步请求授权的详解
Aug 04 Javascript
JS闭包原理与应用经典示例
Dec 20 Javascript
vue数据操作之点击事件实现num加减功能示例
Jan 19 Javascript
微信小游戏之使用three.js 绘制一个旋转的三角形
Jun 10 Javascript
解决antd日期选择组件,添加value就无法点击下一年和下一月问题
Oct 29 Javascript
利用node.js开发cli的完整步骤
Dec 29 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
多重?l件?合查?(二)
2006/10/09 PHP
用PHP来写记数器(详细介绍)
2006/10/09 PHP
PHP常用编译参数中文说明
2014/09/27 PHP
php加密解密字符串示例
2016/10/13 PHP
php 使用curl模拟ip和来源进行访问的实现方法
2017/05/02 PHP
php简单检测404页面的方法示例
2019/08/23 PHP
PHP SESSION跨页面传递失败解决方案
2020/12/11 PHP
javascript控制frame,iframe的src属性代码
2009/12/31 Javascript
JavaScript调用Activex控件的事件的实现方法
2010/04/11 Javascript
Javascript学习笔记 delete运算符
2011/09/13 Javascript
jQuery获取注册信息并提示实现代码
2013/04/21 Javascript
可自己添加html的伪弹出框实现代码
2013/09/08 Javascript
javascript格式化json显示实例分析
2015/04/21 Javascript
基于JavaScript实现移动端点击图片查看大图点击大图隐藏
2015/11/04 Javascript
jQuery实现动态删除LI的方法
2017/05/30 jQuery
JavaScript正则表达式简单实用实例
2017/06/23 Javascript
js指定步长实现单方向匀速运动
2017/07/17 Javascript
vue 国际化 vue-i18n 双语言 语言包
2018/06/07 Javascript
在layui中layer弹出层点击事件无效的解决方法
2019/09/05 Javascript
如何在微信小程序中使用骨架屏的步骤
2020/06/12 Javascript
Vue ​v-model相关知识总结
2021/01/28 Vue.js
Python从零开始创建区块链
2018/03/06 Python
Python实现多属性排序的方法
2018/12/05 Python
python游戏开发之视频转彩色字符动画
2019/04/26 Python
python return逻辑判断表达式实现解析
2019/12/02 Python
Python logging模块进行封装实现原理解析
2020/08/07 Python
CSS3关于z-index不生效问题的解决
2020/02/19 HTML / CSS
课程设计心得体会
2013/12/28 职场文书
高中升旗仪式演讲稿
2014/09/09 职场文书
毕业生党员个人总结
2015/02/14 职场文书
2015年派出所民警工作总结
2015/04/24 职场文书
青年志愿者服务活动总结
2015/05/06 职场文书
初婚未育证明样本
2015/06/18 职场文书
生产设备维护保养制度
2015/08/06 职场文书
2016年秋季运动会加油稿
2015/12/21 职场文书
Mysql中存储引擎的区别及比较
2021/06/04 MySQL