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

 更新时间:2007年11月12日 21:23:45   作者:  
一般二分都用到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数组之展开运算符详解

    这篇文章主要给大家介绍了关于JavaScript数组之展开运算符的相关资料,你可以通过展开操作符(Spread operator)扩展一个数组对象和字符串,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2023-12-12
  • 源码分析Django的message组件

    源码分析Django的message组件

    这篇文章主要介绍了源码分析Django的message组件,本文通过示例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-05-05
  • 使用js获取QueryString的方法小结

    使用js获取QueryString的方法小结

    从网上看到一些使用js获取QueryString的方法,但用起来不是很理想,所以决定自己写一个。主要原理是使用正则表达式匹配location.search中的字符串。
    2010-02-02
  • js 数组去重的四种实用方法

    js 数组去重的四种实用方法

    怎样去掉Javascript的Array的重复项,这个问题看起来简单,但考的不仅仅是实现这个功能,更能看出你对计算机程序执行的深入理解
    2014-09-09
  • JavaScript canvas实现雪花随机动态飘落

    JavaScript canvas实现雪花随机动态飘落

    这篇文章主要为大家详细介绍了JavaScript canvas实现雪花随机动态飘落,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-02-02
  • javascript正则表达式基础知识入门

    javascript正则表达式基础知识入门

    很长时间没看正则表达式了,碰巧今天用到,温故知新了一把,这里记录下来,分享给大家,都是些基础的知识,重点给大家讲解的是正则表达式中4种常用的方法,50% 的举一反三练习中的原创。
    2015-04-04
  • 将json转换成struts参数的方法

    将json转换成struts参数的方法

    下面小编就为大家带来一篇将json转换成struts参数的方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-11-11
  • Javascript中Object和Map之间的转换方法

    Javascript中Object和Map之间的转换方法

    在许多编程语言中,Object和Map都是用于存储键值对的数据结构,下面这篇文章主要给大家介绍了关于Javascript中Object和Map之间的转换方法,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2023-06-06
  • JavaScript实现数字格式化的示例详解

    JavaScript实现数字格式化的示例详解

    在处理数字时,为了提高可读性,我们通常会将整数部分的数字以千分位或百分位分隔,本文将详细介绍如何使用JavaScript来实现数字的千分位和百分位分隔,需要的可以参考下
    2024-04-04
  • Javascript数组与字典用法分析

    Javascript数组与字典用法分析

    这篇文章主要介绍了Javascript数组与字典用法,以实例形式较为详细的分析了Array作为数组与字典的不同用法,具有一定的参考借鉴价值,需要的朋友可以参考下
    2014-12-12

最新评论