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 生成指定范围数值随机数
Jan 09 Javascript
原生js实现类似弹窗抖动效果
Apr 02 Javascript
jQuery实现仿腾讯微博滑出效果报告每日天气的方法
May 11 Javascript
深入探讨Vue.js组件和组件通信
Sep 12 Javascript
通过jquery实现页面的动画效果(实例代码)
Sep 18 Javascript
详解用vue编写弹出框组件
Jul 04 Javascript
JS实现验证码倒计时的注册页面
Jan 02 Javascript
详解浏览器缓存和webpack缓存配置
Jul 06 Javascript
JS解析后台返回的JSON格式数据实例
Aug 06 Javascript
实例详解带参数的 npm script
May 28 Javascript
vue路由切换之淡入淡出的简单实现
Oct 31 Javascript
jQuery实现增删改查
Dec 22 jQuery
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 session实现多级目录存放实现代码
2016/02/03 PHP
Zend Framework动作助手FlashMessenger用法详解
2016/03/05 PHP
ThinkPHP3.2.3框架实现的空模块、空控制器、空操作,跳转到错误404页面图文详解
2019/04/03 PHP
php输出控制函数和输出函数生成静态页面
2019/06/27 PHP
解决PHP使用CURL发送GET请求时传递参数的问题
2019/10/11 PHP
setInterval,setTimeout与jquery混用的问题
2013/04/08 Javascript
js的延迟执行问题分析
2014/06/23 Javascript
使用时间戳解决ie缓存的问题
2014/08/20 Javascript
手机号码,密码正则验证
2014/09/04 Javascript
JS模拟bootstrap下拉菜单效果实例
2016/06/17 Javascript
javascript实现的全国省市县无刷新多级关联菜单效果代码
2016/08/01 Javascript
浅谈时钟的生成(js手写简洁代码)
2016/08/20 Javascript
利用React-router+Webpack快速构建react程序
2016/10/27 Javascript
ajax异步请求详解
2017/01/06 Javascript
原生JS上传大文件显示进度条 php上传文件代码
2020/03/27 Javascript
[03:52]显微镜下的DOTA2第三期——英雄在无聊的时候干什么
2014/06/20 DOTA
python生成验证码图片代码分享
2016/01/28 Python
Python网络编程之TCP套接字简单用法示例
2018/04/09 Python
python操作redis方法总结
2018/06/06 Python
python梯度下降法的简单示例
2018/08/31 Python
Python3实现获取图片文字里中文的方法分析
2018/12/13 Python
Python实现线性判别分析(LDA)的MATLAB方式
2019/12/09 Python
Tensorflow之梯度裁剪的实现示例
2020/03/08 Python
PyCharm 2020.2下配置Anaconda环境的方法步骤
2020/09/23 Python
Django自定义YamlField实现过程解析
2020/11/11 Python
python 制作磁力搜索工具
2021/03/04 Python
整理的15个非常有用的 HTML5 开发教程和速查手册
2011/10/18 HTML / CSS
这76道Java面试题及答案,祝你能成功通过面试
2016/04/16 面试题
教师岗位职责
2013/11/17 职场文书
《王二小》教学反思
2014/02/27 职场文书
支部书记四风对照材料
2014/08/28 职场文书
优秀班集体事迹材料
2014/12/25 职场文书
2015年后备干部工作总结
2015/05/15 职场文书
干货分享:推荐信写作技巧!
2019/06/21 职场文书
2019年二手房买卖合同范本
2019/10/14 职场文书
使用Python开发贪吃蛇游戏 SnakeGame
2022/04/30 Python