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全局函数使用简单说明
Mar 11 Javascript
js中 关于undefined和null的区别介绍
Apr 16 Javascript
jquery中的on方法使用介绍
Dec 29 Javascript
jQuery的each循环用法简单示例
Jun 12 Javascript
jQuery扩展实现text提示还能输入多少字节的方法
Nov 28 Javascript
详解JS去重及字符串奇数位小写转大写
Dec 29 Javascript
Angular 4依赖注入学习教程之Injectable装饰器(六)
Jun 04 Javascript
React Native 搭建开发环境的方法步骤
Oct 30 Javascript
js 客户端打印html 并且去掉页眉、页脚的实例
Nov 03 Javascript
详解如何创建并发布一个 vue 组件
Nov 08 Javascript
Node.js 多进程处理CPU密集任务的实现
May 26 Javascript
vue-cli脚手架打包静态资源请求出错的原因与解决
Jun 06 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中提问频率最高的11个面试题和答案
2014/09/02 PHP
简单的pgsql pdo php操作类实现代码
2016/08/25 PHP
thinkphp中AJAX返回ajaxReturn()方法分析
2016/12/06 PHP
在Laravel中实现使用AJAX动态刷新部分页面
2019/10/15 PHP
模仿百度三维地图的js数据分享
2011/05/12 Javascript
jQuery实现长文字部分显示代码
2013/05/13 Javascript
Extjs4 Treegrid 使用心得分享(经验篇)
2013/07/01 Javascript
JQuery中DOM加载与事件执行实例分析
2015/06/13 Javascript
TypeScript 学习笔记之基本类型
2015/06/19 Javascript
JQuery ztree 异步加载实例讲解
2016/02/25 Javascript
JS实现微信摇一摇原理解析
2017/07/22 Javascript
vue微信分享到朋友圈 vue微信发送给好友
2018/11/28 Javascript
小程序文字跑马灯效果
2018/12/28 Javascript
一篇文章,教你学会Vue CLI 插件开发
2019/04/17 Javascript
JavaScript判断数组类型的方法
2019/10/23 Javascript
使用PreloadJS加载图片资源的基础方法详解
2020/02/03 Javascript
巧用Python装饰器 免去调用父类构造函数的麻烦
2012/05/18 Python
Python中模拟enum枚举类型的5种方法分享
2014/11/22 Python
浅谈python中的面向对象和类的基本语法
2016/06/13 Python
python使用Qt界面以及逻辑实现方法
2019/07/10 Python
pycharm激活码有效到2020年11月底
2020/09/18 Python
python清空命令行方式
2020/01/13 Python
pytorch方法测试——激活函数(ReLU)详解
2020/01/15 Python
Python读取表格类型文件代码实例
2020/02/17 Python
浅谈keras保存模型中的save()和save_weights()区别
2020/05/21 Python
如何在mac版pycharm选择python版本
2020/07/21 Python
Python实现我的世界小游戏源代码
2021/03/02 Python
快速实现一个简单的canvas迷宫游戏的示例
2018/07/04 HTML / CSS
盛大二次面试题
2016/11/18 面试题
《骆驼和羊》教学反思
2014/02/27 职场文书
政法学院毕业生求职信
2014/02/28 职场文书
营销总经理岗位职责范本
2014/09/02 职场文书
有限责任公司股东合作协议书范本
2014/10/30 职场文书
师德先进个人材料
2014/12/20 职场文书
加班费申请报告
2015/05/15 职场文书
pytorch 运行一段时间后出现GPU OOM的问题
2021/06/02 Python