使用javascipt---实现二分查找法


Posted in Javascript onApril 10, 2013
<html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=utf-8">
<script type="text/javascript">    //window.alert(Math.floor(5.7)); //向下取整 输出5

    //二分查找法 数组必须是有序的
    function binarySeach(arr,findval,leftIndex,rightIndex){
        //找到中间的值
        var midIndex=Math.floor((leftIndex+rightIndex)/2);
        var midval=arr[midIndex];
        //防止无穷递归
        if(leftIndex>rightIndex){
            //说明找不到
            document.writeln("找不到");
            return ;
        }
        //进行查找
        if(midval>findval){
            //在左边找
            binarySeach(arr,findval,leftIndex,midIndex-1);
        }else if(midval<findval){
            //说明往右边找
            binarySeach(arr,findval,midIndex+1,rightIndex);
        }else{
            //找到了 输出或者返回
            document.writeln("找到了,下标为:"+midIndex);
            return ;
        }
    }
    var arr=[1,3,12,21,24,44,54,67];
    binarySeach(arr,67,0,arr.length-1);
</script>
</head>
<body></body>
</html>
Javascript 相关文章推荐
jQuery帮助之CSS尺寸(五)outerHeight、outerWidth
Nov 14 Javascript
Three.js源码阅读笔记(物体是如何组织的)
Dec 27 Javascript
javascript实现的DES加密示例
Oct 30 Javascript
使用Sticker.js实现贴纸效果
Jan 28 Javascript
JS实现判断碰撞的方法
Feb 11 Javascript
JS自动倒计时30秒后按钮才可用(两种场景)
Aug 31 Javascript
jQuery如何使用自动触发事件trigger
Nov 29 Javascript
理解JS事件循环
Jan 07 Javascript
功能强大的Bootstrap使用手册(一)
Aug 02 Javascript
解决一个微信号同时支持多个环境网页授权问题
Aug 07 Javascript
微信小程序一周时间表功能实现
Oct 17 Javascript
微信小程序实现下滑到底部自动翻页功能
Mar 07 Javascript
页面使用密码保护代码
Apr 10 #Javascript
jQuery学习笔记(4)--Jquery中获取table中某列值的具体思路
Apr 10 #Javascript
提示$ is not defined错误分析及解决
Apr 09 #Javascript
js 有框架页面跳转(target)三种情况下的应用
Apr 09 #Javascript
关于textarea提交的内容无法换行的解决办法
Apr 09 #Javascript
关于JQuery($.load)事件的用法和分析
Apr 09 #Javascript
关于JS判断图片是否加载完成且获取图片宽度的方法
Apr 09 #Javascript
You might like
第1次亲密接触PHP5(2)
2006/10/09 PHP
用js进行url编码后用php反解以及用php实现js的escape功能函数总结
2010/02/08 PHP
PHP 前加at符合@的作用解析
2015/07/31 PHP
PHP中SERIALIZE和JSON的序列化与反序列化操作区别分析
2016/10/11 PHP
php面向对象之反射功能与用法分析
2017/03/29 PHP
JavaScript高级程序设计(第3版)学习笔记6 初识js对象
2012/10/11 Javascript
setTimeout()与setInterval()方法区别介绍
2013/12/24 Javascript
JavaScript实现获取dom中class的方法
2015/02/09 Javascript
jQuery实现右键菜单、遮罩等效果代码
2016/09/27 Javascript
jquery移除了live()、die(),新版事件绑定on()、off()的方法
2016/10/26 Javascript
原生javascript实现的ajax异步封装功能示例
2016/11/03 Javascript
详解JavaScript基础知识(JSON、Function对象、原型、引用类型)
2018/01/16 Javascript
解决vue-quill-editor上传内容由于图片是base64的导致字符太长的问题
2018/08/20 Javascript
layui 监听select选择 获取当前select的ID名称方法
2019/09/24 Javascript
微信小程序实现分享商品海报功能
2019/09/30 Javascript
[42:39]老党炸弹人试玩视频
2014/09/03 DOTA
[55:42]VG vs VGJ.T 2018国际邀请赛淘汰赛BO1 8.21
2018/08/22 DOTA
深入理解Python中命名空间的查找规则LEGB
2015/08/06 Python
Python下载指定页面上图片的方法
2016/05/12 Python
Python实现带参数的用户验证功能装饰器示例
2018/12/14 Python
python爬虫URL重试机制的实现方法(python2.7以及python3.5)
2018/12/18 Python
python破解bilibili滑动验证码登录功能
2019/09/11 Python
python Tensor和Array对比分析
2020/01/08 Python
PyTorch使用cpu加载模型运算方式
2020/01/13 Python
HTML5 Canvas 破碎重组的视频特效的示例代码
2019/09/24 HTML / CSS
3种方式实现瀑布流布局小结
2019/09/05 HTML / CSS
Turnbull & Asser官网:英国皇室御用的顶级定制衬衫
2019/01/31 全球购物
优秀的计算机专业求职信范文
2013/12/27 职场文书
超市开店计划书
2014/04/26 职场文书
创业女性典型材料
2014/05/02 职场文书
全国文明单位申报材料
2014/05/31 职场文书
2014年银行员工年终自我评价
2014/09/19 职场文书
作文评语集锦
2014/12/25 职场文书
环卫处个人工作总结
2015/03/04 职场文书
让世界充满爱观后感
2015/06/10 职场文书
转变工作作风心得体会
2016/01/23 职场文书