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居然支持中文(unicode)编程!
Apr 12 Javascript
jQuery.extend 函数详解
Feb 03 Javascript
jQuery ReferenceError: $ is not defined 错误的处理办法
May 10 Javascript
JavaScript实现带箭头标识的多级下拉菜单效果
Aug 27 Javascript
基于JS模仿windows文件按名称排序效果
Jun 29 Javascript
图文详解Javascript中的上下文和作用域
Feb 15 Javascript
javascript+html5+css3自定义提示窗口
Jun 21 Javascript
Angular如何引入第三方库的方法详解
Jul 13 Javascript
vue页面跳转后返回原页面初始位置方法
Feb 11 Javascript
使用JavaScript中的lodash编写双色球效果
Jun 24 Javascript
Vue 组件封装 并使用 NPM 发布的教程
Sep 30 Javascript
Vue.js组件使用props传递数据的方法
Oct 19 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
PHP调用MySQL的存储过程的实现代码
2008/08/12 PHP
php5 apache 2.2 webservice 创建与配置(java)
2011/01/27 PHP
yii2中结合gridview如何使用modal弹窗实例代码详解
2016/06/12 PHP
PHP实现求两个字符串最长公共子串的方法示例
2017/11/17 PHP
PHP addAttribute()函数讲解
2019/02/03 PHP
PHP正则表达式函数preg_replace用法实例分析
2020/06/04 PHP
中止javascript执行的方法
2014/02/14 Javascript
javascript中CheckBox全选终极方案
2015/05/20 Javascript
JS函数的几种定义方式分析
2015/12/17 Javascript
jquery if条件语句的写法
2016/05/19 Javascript
jQuery实现左侧导航模块的显示与隐藏效果
2016/07/04 Javascript
js修改onclick动作的四种方法(推荐)
2016/08/18 Javascript
javascript ES6中箭头函数注意细节小结
2017/02/17 Javascript
无法获取隐藏元素宽度和高度的解决方案
2017/03/07 Javascript
js实现倒计时效果(小于10补零)
2017/03/08 Javascript
如何理解Vue的.sync修饰符的使用
2017/08/17 Javascript
微信小程序实现流程进度的图样式功能
2018/01/16 Javascript
快速解决angularJS中用post方法时后台拿不到值的问题
2018/08/14 Javascript
django使用channels2.x实现实时通讯
2018/11/28 Javascript
vue-cli3环境变量与分环境打包的方法示例
2019/02/18 Javascript
新手快速入门微信小程序组件库 iView Weapp
2019/06/24 Javascript
微信小程序 checkbox使用实例解析
2019/09/09 Javascript
vue 在服务器端直接修改请求的接口地址
2020/12/19 Vue.js
python操作摄像头截图实现远程监控的例子
2014/03/25 Python
python实现的简单FTP上传下载文件实例
2015/06/30 Python
Python3 A*寻路算法实现方式
2019/12/24 Python
pytorch 归一化与反归一化实例
2019/12/31 Python
pycharm配置python 设置pip安装源为豆瓣源
2021/02/05 Python
详解Html5 Canvas画线有毛边解决方法
2018/03/01 HTML / CSS
波兰电子产品购物网站:Vobis
2019/05/26 全球购物
linux系统都有哪些运行级别
2012/04/15 面试题
经管应届生求职信
2013/11/17 职场文书
考试没考好检讨书
2014/01/31 职场文书
先进单位事迹材料
2014/12/25 职场文书
英语教师求职信范文
2015/03/20 职场文书
关于Spring配置文件加载方式变化引发的异常详解
2022/01/18 Java/Android