JavaScript使用二分查找算法在数组中查找数据的方法


本文实例讲述了JavaScript使用二分查找算法在数组中查找数据的方法。分享给大家供大家参考。具体分析如下:

二分查找又称折半查找,优点是比较次数少,查找速度快,平均性能好;其缺点是要求待查表为有序表,且插入删除困难。因此,折半查找方法适用于不经常变动而查找频繁的有序列表。首先,假设表中元素是按升序排列,将表中间位置记录的关键字与查找关键字比较,如果两者相等,则查找成功;否则利用中间位置记录将表分成前、后两个子表,如果中间位置记录的关键字大于查找关键字,则进一步查找前一子表,否则进一步查找后一子表。重复以上过程,直到找到满足条件的记录,使查找成功,或直到子表不存在为止,此时查找不成功。

var Arr = [3,5,6,7,9,12,15];
function binary(find,arr,low,high){
if(low <= high){
if(arr[low] == find)
return low;
if(arr[high] == find)
return high;
var mid = Math.ceil((high + low)/2);
if(arr[mid] == find){
return mid;
}else if(arr[mid] > find){
return binary(find,arr,low,mid-1);
}else{
return binary(find,arr,mid+1,high);
}
}
return -1;
}
binary(15,Arr,0,Arr.length-1);

希望本文所述对大家的javascript程序设计有所帮助。



相关阅读:
Javascript的表单验证-揭开正则表达式的面纱
全面解析Objective-C中的block代码块的使用
基于Bootstrap重置输入框内容按钮插件
Javascript 多浏览器兼容总结(实战经验)
javascript框架设计之类工厂
JavaScript实现查找字符串中第一个不重复的字符
mysql错误处理之ERROR 1786 (HY000)
Linux下快速批量修改文件夹下的图片名称的方法
C#伪彩色处理的具体方法
Oracle Number型数值存储与转换的实现详解
Win7下Chrome字体渲染颜色太淡颜色不够黑的解决方法
Android中实现下载URL地址的网络资源的实例分享
微软重申:Windows 10升级仅对Insider会员免费
使用GruntJS构建Web程序之合并压缩篇
快速导航
PHP MySQL HTML CSS JavaScript MSSQL AJAX .NET JSP Linux Mac ASP 服务器 SQL jQuery C# C++ java Android IOS oracle MongoDB SQLite wamp 交通频道 作文范文 只求醉在属于自己的梦里 2015年浙江中考作文热点话题:一封家书 经典英文爱情句子 自主招生面试技巧 繁星点点,春水潺潺 给琼瑶阿姨的一封信作文900字 建国六十周年征文:扬眉吐气的中国人 关于象棋大战的小学生作文_星期天的“象棋大战” “六·一”,一颗甜美的冰作文1500字 曾经爱过,现在又剩下什么 《绿山墙的安妮》500字读后感2篇 因为太在乎,所以我输了。 长辈生日祝福语大全您的黑发却似枫叶上的寒霜, 老爷爷的故事 小学四年级作文600字:游七宝古镇 我不想让你那么孤单 人世间有种情感叫喜欢,另一种叫 LOVE 盈一眸清凉,捻一指荷香 圣诞节祝福语 情义谢滑,荒芜了春夏 由躁入静作文600字 庆六一节亲情座谈会致词 鄙视人的话 “四大文明古国”为何没有希腊 迷途(小说) 蛇年元旦对领导的感谢祝福语 党支部2016年工作计划 我的老实好友作文700字 冬天的济南爱我家园作文800字 师德师风培训感悟文章 看开心情才会明媚 相思入诗 教师个人年度考核总结 金雕200字 书籍,带给我快乐作文700字 是先有鸡还是先有鸡蛋 篱笆边的桃树 关于介绍傣族的作文 通用物业管理合同格式 寻隐者不遇魏野 经典儿童教育心理学书籍推荐 今冬的第一场大雪 社区残联2009年工作总结2010年工作计划 感恩节初中 载歌载舞庆“六一”550字 《但愿人长久》 梦女孩250字 小学二年级作文秋天 歌曲老男孩串词 2012.12.14

Copyright © 2016 phpStudy |