使用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 相关文章推荐
web页面数据展示新想法(json)
Jun 08 Javascript
使用jQuery+HttpHandler+xml模拟一个三级联动的例子
Aug 09 Javascript
判断对象是否Window的实现代码
Jan 10 Javascript
JavaScript中的稀疏数组与密集数组[译]
Sep 17 Javascript
js onkeypress与onkeydown 事件区别详细说明
Dec 13 Javascript
JavaScript动态插入script的基本思路及实现函数
Nov 11 Javascript
jquery缓动swing liner控制动画过程不同时刻的速度
May 29 Javascript
Spring mvc 接收json对象
Dec 10 Javascript
JavaScript数组的定义及数字操作技巧
Jun 06 Javascript
基于jQuery选择器之表单对象属性筛选选择器的实例
Sep 19 jQuery
vue中使用better-scroll实现滑动效果及注意事项
Nov 15 Javascript
vue3.0生命周期的示例代码
Sep 24 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
phpstorm配置Xdebug进行调试PHP教程
2014/12/01 PHP
php数字每三位加逗号的功能函数
2015/10/22 PHP
Zend Framework实现多服务器共享SESSION数据的方法
2016/03/22 PHP
PHP+Session防止表单重复提交的解决方法
2018/04/09 PHP
PHP连接MySQL数据库并以json格式输出
2018/05/21 PHP
PHP安装BCMath扩展的方法
2019/02/13 PHP
我见过最全的个人js加解密功能页面
2007/12/12 Javascript
通用JS事件写法实现代码
2009/01/07 Javascript
Javascript load Page,load css,load js实现代码
2010/03/31 Javascript
js操作二级联动实现代码
2010/07/27 Javascript
在Javascript中 声明时用&quot;var&quot;与不用&quot;var&quot;的区别
2013/04/15 Javascript
jQuery中:lt选择器用法实例
2014/12/29 Javascript
纯JavaScript实现的分页插件实例
2015/07/14 Javascript
老生常谈JavaScript数组的用法
2016/06/10 Javascript
JS解决iframe之间通信和自适应高度的问题
2016/08/24 Javascript
bootstrap daterangepicker汉化以及扩展功能
2017/06/15 Javascript
如何使用JS在HTML中自定义字符串格式化
2017/07/20 Javascript
Vue.js实现价格计算器功能
2020/03/30 Javascript
bootstrap Table的一些小操作
2017/11/01 Javascript
javascript中call()、apply()的区别
2019/03/21 Javascript
微信小程序可滑动月日历组件使用详解
2019/10/21 Javascript
[04:11]2014DOTA2国际邀请赛 CIS遗憾出局梦想不灭
2014/07/09 DOTA
[02:50]【扭转乾坤,只此一招】DOTA2永雾林渊版本开启新篇章
2020/12/22 DOTA
[01:12:40]DOTA2-DPC中国联赛 正赛 DLG vs XG BO3 第三场 1月25日
2021/03/11 DOTA
Python计算程序运行时间的方法
2014/12/13 Python
Python压缩和解压缩zip文件
2015/02/14 Python
利用pandas将numpy数组导出生成excel的实例
2018/06/14 Python
Python爬虫代理池搭建的方法步骤
2020/09/28 Python
英国乡村时尚和宠物用品专家:Pet & Country
2018/07/02 全球购物
在职人员函授期间自我评价分享
2013/11/08 职场文书
生物医学工程专业学生求职信范文分享
2013/12/14 职场文书
初中政治教学反思
2014/01/17 职场文书
经典而简洁的婚礼主持词
2014/03/13 职场文书
小学生倡议书范文
2014/05/13 职场文书
2015年植树节活动总结
2015/02/06 职场文书
女性健康知识讲座主持词
2015/07/04 职场文书