javascript实现二分查找法实现代码


Posted in Javascript onNovember 12, 2007

一般二分都用到int[]型上.....在js中可能会更灵活的用到a-z上,或者用到拼音...或者用到......

不过值得深思的一个问题是,如果为了实现对拼音之类的二分查找.而经过如下流程是否值得:

1。对拼音排序,貌似代码量不小吧。

2。然后再二分查找。这又需要识别拼音的大小,貌似也不算太小吧。

找到结果的速度快了,可是别人下你的js文件速度慢多了,呵呵,到底舍弃谁。

下面的代码甚至可以10亿条,一样会很快找到,可是用遍例的模式创建那个数组。。。所以还是别尝试了。只是给个思路,下次我再来发个js的八皇后问题解决方案,呵呵算法很奇妙哦

var array = [];  
var key = 482;  
var number = 1000;  for(i=0;i<number;i++){  
 array.push(i);  
}  
//-->>  
var time = new Date();  
var a;  
var left = 0;  
var right= array.length;  
while(left<=right){  
 var center=Math.floor((left+right)/2);  
 if(array[center] == key) a = center;  
 if(key < array[center]){  
  right = center - 1;   
 }else{  
  left = center + 1;  
 }  
}  
alert("二分查找法搜索的结果:"+a);  
alert((new Date() - time)/1000); 
Javascript 相关文章推荐
javascript之卸载鼠标事件的代码
May 14 Javascript
Document 对象的常用方法
Jul 31 Javascript
jQuery使用after()方法在元素后面添加多项内容的方法
Mar 26 Javascript
JS函数的几种定义方式分析
Dec 17 Javascript
浅谈js里面的InttoStr和StrtoInt
Jun 14 Javascript
jquery dataview数据视图插件使用方法
Dec 23 Javascript
Bootstrap实现基于carousel.js框架的轮播图效果
May 02 Javascript
vue 粒子特效的示例代码
Sep 19 Javascript
react-router 路由切换动画的实现示例
Dec 03 Javascript
Smartour 让网页导览变得更简单(推荐)
Jul 19 Javascript
微信小程序点击列表跳转到对应详情页过程解析
Sep 26 Javascript
layui 阻止图片上传的实例(before方法)
Sep 26 Javascript
Auntion-TableSort国人写的一个javascript表格排序的东西
Nov 12 #Javascript
用js实现手把手教你月入万刀(转贴)
Nov 07 #Javascript
不能再简单的无闪刷新验证码原理很简单
Nov 05 #Javascript
才发现的超链接js导致网页中GIF动画停止的解决方法
Nov 02 #Javascript
推荐自用 Javascript 缩图函数 (onDOMLoaded)……
Oct 23 #Javascript
非常漂亮的JS代码经典广告
Oct 21 #Javascript
国外Lightbox v2.03.3 最新版 下载
Oct 17 #Javascript
You might like
在任意字符集下正常显示网页的方法二(续)
2007/04/01 PHP
ASP和PHP都是可以删除自身的
2007/04/09 PHP
学习php设计模式 php实现原型模式(prototype)
2015/12/07 PHP
PDO::inTransaction讲解
2019/01/28 PHP
PHP+jQuery实现即点即改功能示例
2019/02/21 PHP
js实现上传图片之上传前预览图片
2013/03/25 Javascript
jQuery Mobile 导航栏代码
2013/11/01 Javascript
无刷新预览所选择的图片示例代码
2014/04/02 Javascript
JavaScript中的setUTCDate()方法使用详解
2015/06/11 Javascript
jquery实现浮动的侧栏实例
2015/06/25 Javascript
深入理解JavaScript中的并行处理
2016/09/22 Javascript
提高JavaScript执行效率的23个实用技巧
2017/03/01 Javascript
Node.js+ES6+dropload.js实现移动端下拉加载实例
2017/06/01 Javascript
基于vue中解决v-for使用报红并出现警告的问题
2018/03/03 Javascript
vue底部加载更多的实例代码
2018/06/29 Javascript
JS脚本实现定时到网站上签到/签退功能
2020/04/22 Javascript
python 实现归并排序算法
2012/06/05 Python
Python中encode()方法的使用简介
2015/05/18 Python
Python argv用法详解
2016/01/08 Python
实例讲解Python中函数的调用与定义
2016/03/14 Python
Python实现基于TCP UDP协议的IPv4 IPv6模式客户端和服务端功能示例
2018/03/22 Python
python Tcp协议发送和接收信息的例子
2019/07/22 Python
详解Python3 pickle模块用法
2019/09/16 Python
Python json解析库jsonpath原理及使用示例
2020/11/25 Python
5 分钟读懂Python 中的 Hook 钩子函数
2020/12/09 Python
世界经理人咨询有限公司面试
2014/09/23 面试题
幼儿园美术教学反思
2014/01/31 职场文书
幼儿园元旦活动感言
2014/03/02 职场文书
先进事迹报告会主持词
2014/04/02 职场文书
美国留学经济担保书
2014/05/20 职场文书
体育专业自荐书
2014/05/29 职场文书
机关党总支领导班子整改方案
2014/09/20 职场文书
高一学年自我鉴定范文(3篇)
2014/09/26 职场文书
python批量创建变量并赋值操作
2021/06/03 Python
Redis字典实现、Hash键冲突及渐进式rehash详解
2021/09/04 Redis
使用canvas仿Echarts实现金字塔图的实例代码
2021/11/11 HTML / CSS