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 输入框数字限制插件
Nov 10 Javascript
Javascript事件实例详解
Nov 06 Javascript
给ListBox添加双击事件示例代码
Dec 02 Javascript
JavaScript中的object转换函数toString()与valueOf()介绍
Dec 31 Javascript
javascript实现显示和隐藏div方法汇总
Aug 14 Javascript
跟我学习javascript的undefined与null
Nov 17 Javascript
js eval函数使用,js对象和字符串互转实例
Mar 06 Javascript
vue使用混入定义全局变量、函数、筛选器的实例代码
Jul 29 Javascript
解决vuex数据异步造成初始化的时候没值报错问题
Nov 13 Javascript
JS实现横向轮播图(初级版)
Jun 24 Javascript
基于Vue的侧边目录组件的实现
Feb 05 Javascript
vue实现滑动解锁功能
Mar 03 Vue.js
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
自动分页的不完整解决方案
2007/01/12 PHP
destoon在360浏览器下出现用户被强行注销的解决方法
2014/06/26 PHP
Web层改进II-用xmlhttp 无声息提交复杂表单
2007/01/22 Javascript
QQ邮箱的一个文本编辑器代码
2007/03/14 Javascript
JS 树形递归实例代码
2010/05/18 Javascript
jQuery ajax 路由和过滤器使用说明
2011/08/02 Javascript
瀑布流布局并自动加载实现代码
2013/03/12 Javascript
js中一维数组和二位数组中的几个问题示例说明
2014/07/17 Javascript
web前端设计师们常用的jQuery特效插件汇总
2014/12/07 Javascript
JavaScript常用函数工具集:lao-utils
2016/03/01 Javascript
使用AJAX实现Web页面进度条的实例分享
2016/05/06 Javascript
DOM操作和jQuery实现选项移动操作的简单实例
2016/06/07 Javascript
jQuery的ajax中使用FormData实现页面无刷新上传功能
2017/01/16 Javascript
Vue使用枚举类型实现HTML下拉框步骤详解
2018/02/05 Javascript
Swiper 4.x 使用方法(移动端网站的内容触摸滑动)
2018/05/17 Javascript
深入解析微信小程序开发中遇到的几个小问题
2020/07/11 Javascript
[47:38]Optic vs VGJ.S 2018国际邀请赛小组赛BO2 第二场 8.17
2018/08/20 DOTA
python之import机制详解
2014/07/03 Python
python复制文件的方法实例详解
2015/05/22 Python
python开发之tkinter实现图形随鼠标移动的方法
2015/11/11 Python
python学习 流程控制语句详解
2016/06/01 Python
Python脚本打包成可执行文件过程解析
2020/10/20 Python
美国殿堂级滑板、冲浪、滑雪服装品牌:Volcom(钻石)
2017/04/20 全球购物
为什么使用接口?
2014/08/13 面试题
安踏广告词改编版
2014/03/21 职场文书
2014离婚协议书范文两篇
2014/09/15 职场文书
学生实习证明范文
2014/09/28 职场文书
检察院院长群众路线教育实践活动个人整改措施
2014/10/04 职场文书
单位租房协议范本
2014/12/03 职场文书
水电施工员岗位职责
2015/04/11 职场文书
初中开学典礼新闻稿
2015/07/17 职场文书
施工安全协议书
2016/03/22 职场文书
子女赡养老人协议书
2016/03/23 职场文书
导游词之上饶龟峰
2019/10/25 职场文书
SpringBoot2零基础到精通之数据与页面响应
2022/03/22 Java/Android
Spring Boot优化后启动速度快到飞起技巧示例
2022/07/23 Java/Android