javascript实现二分查找法实现代码
2018-10-12 14:04
573 查看
一般二分都用到int[]型上.....在js中可能会更灵活的用到a-z上,或者用到拼音...或者用到......
不过值得深思的一个问题是,如果为了实现对拼音之类的二分查找.而经过如下流程是否值得:
1。对拼音排序,貌似代码量不小吧。
2。然后再二分查找。这又需要识别拼音的大小,貌似也不算太小吧。
找到结果的速度快了,可是别人下你的js文件速度慢多了,呵呵,到底舍弃谁。
下面的代码甚至可以10亿条,一样会很快找到,可是用遍例的模式创建那个数组。。。所以还是别尝试了。只是给个思路,下次我再来发个js的八皇后问题解决方案,呵呵算法很奇妙哦
不过值得深思的一个问题是,如果为了实现对拼音之类的二分查找.而经过如下流程是否值得:
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实现二分查找法实现代码
- javascript代码如何实现打印框架里面的某个网页
- ruby、javascript、php中的观察者模式实现代码
- javascript手风琴下拉菜单实现代码
- Flex Javascript交互实现代码
- 用javascript来实现select标签的美化的代码
- 应用WSH、JavaScript和 bat 实现自动化构建工具改善工作中的代码部署流程!
- javascript 宝宝出生倒计时实现代码
- JavaScript将Table导出到Excel实现思路及代码
- 教你用javascript实现随机标签云效果_附代码
- javascript数组的扩展实现代码集合
- 1、使用javascript代码写出一个函数:实现传入两个整数后弹出较大的整数
- 超酷的鼠标拖拽翻页(分页)效果实现javascript代码
- JavaScript实现的一个图片溶解特效代码
- JavaScript代码简单实现求杨辉三角给定行的最大值
- 9行javascript代码获取QQ群成员具体实现