一、冒泡排序

var  arr=[22,1,33,19,77];

function  bubbleSort(arr){

  for(var i=0;i<arr.length-1;i++){

    for(var j=0;j<arr.length-i-1;j++){

      if(arr[j]>arr[j+1]){

        var temp=arr[j];

        arr[j]=arr[j+1];

        arr[j+1]=arr[j];

      }

    }

}

  return arr;

}

console.log( bubbleSort(arr))

二、快速排序

var arr=[]

function quickSort(arr){

  for(var i=0;i<arr.length;i++){

    for(var j=i+1;j<arr.length;j++){

      if(arr[j]<arr[i]){

        var temp=arr[i];

        arr[i]=arr[j];

        arr[j]=temp;

      }

    }

  }

  return arr;

}

三、选择排序

var arr=[1,5,95,32,7,58,21];
function a(arr){
  for(var i=0;i<arr.length-1;i++){ 
    var temp,minIndedx;
    minIndedx=i;
    for(var j=i+1;j<arr.length;j++){
      if(arr[j]<arr[minIndedx]){
        minIndedx=j;
      }
    }
    temp=arr[i];
    arr[i]=arr[minIndedx];
    arr[minIndedx]=temp;
  }
  return arr;
}
console.log(a(arr))

四、插入排序

var arr=[7,5,6,23,44,6,5,35,2,4,8,32];
function a(arr){

  for(var i=1;i<arr.length;i++){
    var key=arr[i];
    var j=i-1;
    while(arr[j]>key){
      arr[j+1]=arr[j]
      j--
    }
    arr[j+1]=key
  }
return arr;
}
console.log(a(arr))

js中的排序方法的更多相关文章

  1. 关于js中sort()排序方法

    第一次写这个,算是记录自己的学习前端的一点点的历程吧.今天在做一个图片的随机排序遇到了一个问题,部分截图如下 我用的是json格式存储数组,想通过排序实现img数组中的内容升序或是降序发现用sort自 ...

  2. JavaScript -- 时光流逝(二):js中数组的方法

    JavaScript -- 知识点回顾篇(二):js中数组的方法 1. 数组 (1)定义数组,数组赋值 <script type="text/javascript"> ...

  3. js中的tostring()方法

    http://blog.sina.com.cn/s/blog_85c1dc100101bxgg.html js中的tostring()方法 (2013-11-12 11:07:43) 转载▼ 标签: ...

  4. 秒味课堂Angular js笔记------Angular js中的工具方法

    Angular js中的工具方法 angular.isArray angular.isDate angular.isDefined angular.isUndefined angular.isFunc ...

  5. JS中通过call方法实现继承

    原文:JS中通过call方法实现继承 讲解都写在注释里面了,有不对的地方请拍砖,谢谢! <html xmlns="http://www.w3.org/1999/xhtml"& ...

  6. jQuery与JS中的map()方法使用

    1.jquery中的map()方法 首先看一个简单的实例: $("p").append( $("input").map(function(){ return $ ...

  7. ASP.NET#使用母版时,如果要使用js中的getElementById()方法取得某个内容页的元素时要注意的问题

    当使用母版,要使用js中的getElementById()方法取得某个内容页的元素时,所选取的id并不是母版中内容页的id,而是在设计内容页时设定的id例子:母版页: ...... <head ...

  8. JS与OC交互,JS中调用OC方法(获取JSContext的方式)

    最近用到JS和OC原生方法调用的问题,查了许多资料都语焉不详,自己记录一下吧,如果有误欢迎联系我指出. JS中调用OC方法有三种方式: 1.通过获取JSContext的方式直接调用OC方法 2.通过继 ...

  9. JS中split使用方法和数组中元素的删除

    JS中split使用方法和数组中元素的删除 JS中split使用方法 <script language="javascript"> function spli(){ d ...

随机推荐

  1. ORACLE中通过SQL语句(alter table)来增加、删除、修改字段

    1.添加字段: alter table  表名  add (字段  字段类型)  [ default  '输入默认值']  [null/not null]  ; 2.添加备注: comment on ...

  2. virtualenvwrapper虚拟环境

    之前学习过python的虚拟环境virtualenv,而virtualenvwrapper这个软件包可以让我们管理虚拟环境变得更加简单,不用再跑到某个目录下通过virtualenv来创建虚拟环境,并且 ...

  3. Selenium 3----定位一组元素+多表单切换+多窗口切换

    定位一组元素 和定位单个元素类似,WebDriver提供了8种用于定位一组元素的方法.定位一组元素的方法与定位单个元素的方法类似,唯一的区别是在单词element后面多了一个s表示复数. find_e ...

  4. Ubuntu上hi3531交叉编译环境arm-hisiv100nptl-linux搭建过程

    安装SDK 1.Hi3531 SDK包位置 在"Hi3531_V100R001***/01.software/board"目录下,您可以看到一个 Hi3531_SDK_Vx.x.x ...

  5. Elasticsearch学习笔记(十二)filter与query

    一.keyword 字段和keyword数据类型    1.测试准备数据 POST /forum/article/_bulk { "index": { "_id" ...

  6. 什么是一致性Hash算法?

    一.Redis集群的使用 我们在使用Redis的时候,为了保证Redis的高可用,提高Redis的读写性能,最简单的方式我们会做主从复制,组成Master-Master或者Master-Slave的形 ...

  7. C# DataGridView改变行颜色无效问题

    有一个需求是DataGridView中不符合要求的行变为红色,这网上查到的代码是 Row.DefaultCellStyle.BackColor = Color.Red;即可 但是写完之后发现不起作用 ...

  8. mysql--实现oracle的row_number() over功能

    有时候我们想要得到每个分组的前几条记录,这个时候oracle中row_number函数使用非常方便,但可惜mysql没有.网上搜了些实现方法. 表flow_task有phaseno(序列号),obje ...

  9. Jackson流式API

    public class JacksonTester {   public static void main(String args[]){    JacksonTester tester = new ...

  10. FB面经Prepare: Dot Product

    Conduct Dot Product of two large Vectors 1. two pointers 2. hashmap 3. 如果没有额外空间,如果一个很大,一个很小,适合scan小的 ...