JavaScript实现各种排序的代码详解

 更新时间:2017年08月28日 16:41:49   作者:wenjuanzhao  
这篇文章给大家介绍了js实现各种排序功能,包括冒泡排序,选择排序和插入排序,代码简单易懂,非常不错,具有参考借鉴价值,需要的的朋友参考下吧

冒泡排序

 function Bubble(arr){
    var temp;
    for(var i=0;i<arr.length-1;i++){
      for(var j=i+1;j<arr.length;j++){
        if(arr[i]>arr[j]){
          temp=arr[i];
          arr[i]=arr[j];
          arr[j]=temp;
        }
      }
    }
    return arr;
  }
  console.log(Bubble([2,5,1,0,6,2]))  //[0,1,2,2,5,6]

选择排序

function selctor(arr){
    var min;
    for(var i=0;i<arr.length-1;i++){
      min=i;
      //依次找到为最小值的索引
      for(var j=i+1;j<arr.length;j++){
        if(arr[min]>arr[j]){
          min=j;
        }
      }
      //如果最小值不在当前位置上 就交换到位置i
      if(min!=i){
        swap(arr,min,i)
      }
    }
    return arr
  }
  function swap(arr,index1,index2) {
    var temp=arr[index1];
    arr[index1]=arr[index2];
    arr[index2]=temp;
  }

插入排序

 function insert(arr){
    var j,key;
   for(var i=1;i<arr.length;i++){
     j=i;
     key=arr[i];
     while(--j>-1){
       if(arr[j]>key) {
         arr[j + 1] = arr[j];
       }else{
         break;
       }
     }
     arr[j+1]=key;
   }
   return arr
  }

总结

以上所述是小编给大家介绍的JavaScript实现各种排序的代码详解,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

相关文章

  • JavaScript Canvas绘制圆形时钟效果

    JavaScript Canvas绘制圆形时钟效果

    这篇文章主要为大家详细介绍了JavaScript Canvas绘制圆形时钟效果的相关资料,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-04-04
  • JavaScript:ES2019 的新特性(译)

    JavaScript:ES2019 的新特性(译)

    这篇文章主要介绍了JavaScript:ES2019 的新特性(译),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-08-08
  • 利用JS打造黑客代码雨效果

    利用JS打造黑客代码雨效果

    window.onload()方法用于在网页加载完毕后立刻执行的操作,即当 HTML 文档加载完毕后,立刻执行某个方法。本文将用window.onload()打造黑客代码雨效果,感兴趣的可以尝试一下
    2022-06-06
  • 谈谈js中的prototype及prototype属性解释和常用方法

    谈谈js中的prototype及prototype属性解释和常用方法

    prototype是javascript中笔记难理解的一部分内容,下面通过几个关键知识点给大家讲解js中的prototype,对js中的prototype相关知识感兴趣的朋友一起学习吧
    2015-11-11
  • 最常用的12种设计模式小结

    最常用的12种设计模式小结

    最常用的12种设计模式小结,学习js的朋友可以参考下。
    2011-08-08
  • JS简单实现仿百度控制台输出信息效果

    JS简单实现仿百度控制台输出信息效果

    这篇文章主要介绍了JS简单实现仿百度控制台输出信息效果,涉及javascript中console.log函数的简单使用技巧,需要的朋友可以参考下
    2016-09-09
  • 浅谈JavaScript中的分支结构

    浅谈JavaScript中的分支结构

    下面小编就为大家带来一篇浅谈JavaScript中的分支结构。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-07-07
  • JS检测是否可以访问公网服务器功能代码

    JS检测是否可以访问公网服务器功能代码

    检测AC是否放行成功,是否可以访问公网阿里云服务器。下面给大家分享JS检测是否可以访问公网服务器功能代码,需要的的朋友参考下吧
    2017-06-06
  • javascript手机验证、邮箱验证、密码验证的正则表达式简单封装实例

    javascript手机验证、邮箱验证、密码验证的正则表达式简单封装实例

    正则表达式在日常的数据验证中是必不可少的验证方式,这篇文章主要给大家介绍了关于javascript手机验证、邮箱验证、密码验证的正则表达式简单封装的相关资料,需要的朋友可以参考下
    2022-09-09
  • 10道典型的JavaScript面试题

    10道典型的JavaScript面试题

    本文主要介绍了10道典型的JavaScript面试题。具有很好的参考价值。下面跟着小编一起来看下吧
    2017-03-03

最新评论