使用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 相关文章推荐
ASP中进行HTML数据及JS数据编码函数
Nov 11 Javascript
修改js Calendar日历控件 兼容IE9/谷歌/火狐
Jan 04 Javascript
ListBox实现上移,下移,左移,右移的简单实例
Feb 13 Javascript
如何用angularjs制作一个完整的表格
Jan 21 Javascript
JavaScript中的各种操作符使用总结
May 26 Javascript
bootstrap timepicker在angular中取值并转化为时间戳
Jun 13 Javascript
JavaScript仿微信(电话)联系人列表滑动字母索引实例讲解(推荐)
Aug 16 Javascript
在vue项目中使用Nprogress.js进度条的方法
Jan 31 Javascript
VUE DOM加载后执行自定义事件的方法
Sep 07 Javascript
Iview Table组件中各种组件扩展的使用
Oct 20 Javascript
Vue.Draggable拖拽功能的配置使用方法
Jul 29 Javascript
vue.js高德地图实现热点图代码实例
Apr 18 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
一个php作的文本留言本的例子(五)
2006/10/09 PHP
php+mysql查询实现无限下级分类树输出示例
2016/10/03 PHP
PHP生成随机密码4种方法及性能对比
2020/12/11 PHP
textarea的value是html文件源代码,存成html文件的代码
2007/04/20 Javascript
分享27个jQuery 表单插件集合推荐
2011/04/25 Javascript
屏蔽script注入小例子
2013/11/12 Javascript
解决Extjs4中form表单提交后无法进入success函数问题
2013/11/26 Javascript
jQuery中val()方法用法实例
2014/12/25 Javascript
jQuery中insertAfter()方法用法实例
2015/01/08 Javascript
jQuery中noconflict函数的实现原理分解
2015/02/03 Javascript
简介AngularJS中使用factory和service的方法
2015/06/17 Javascript
谈谈Jquery中的children find 的区别有哪些
2015/10/19 Javascript
JQ选择器_选择同类元素的第N个子元素的实现方法
2016/09/08 Javascript
JavaScript中绑定事件的三种方式及去除绑定
2016/11/05 Javascript
nodejs和php实现图片访问实时处理
2017/01/05 NodeJs
jquery easyui DataGrid简单示例
2017/01/23 Javascript
JavaScript获取当前时间向前推三个月的方法示例
2017/02/04 Javascript
详解React Native顶|底部导航使用小技巧
2017/09/14 Javascript
JS动态修改网页body的背景色实例代码
2017/10/07 Javascript
不得不知的ES6小技巧
2018/07/28 Javascript
通过GASP让vue实现动态效果实例代码详解
2019/11/24 Javascript
vant组件中 dialog的确认按钮的回调事件操作
2020/11/04 Javascript
深入理解python中函数传递参数是值传递还是引用传递
2017/11/07 Python
python3 pandas 读取MySQL数据和插入的实例
2018/04/20 Python
python自动化报告的输出用例详解
2018/05/30 Python
总结python中pass的作用
2019/02/27 Python
Python实现根据日期获取当天凌晨时间戳的方法示例
2019/04/09 Python
Python实现王者荣耀自动刷金币的完整步骤
2021/01/22 Python
Servlet的实例是在生命周期什么时候创建的?配置servlet最重要的是什么?
2012/05/30 面试题
护士辞职信范文
2014/01/19 职场文书
致全体运动员广播稿
2014/02/01 职场文书
计算机大学生职业生涯规划书范文
2014/02/19 职场文书
大学生工作自荐书
2014/06/16 职场文书
岗位说明书标准范本
2014/07/30 职场文书
承诺书模板大全
2015/05/04 职场文书
豆瓣2021评分最高动画剧集-豆瓣评分最高的动画剧集2021
2022/03/18 日漫