精华内容
下载资源
问答
  • 数组排序sort
    千次阅读
    2019-12-10 11:11:12

    数组排序sort

    sort里面不加参数,默认是升序排序

    let arr = [1, 8, 2, 9];
    arr.sort();
    console.log(arr); // [1, 2, 8, 9]
    

    如果想要降序排序,可以加参数改变,如下所示:

    let arr = ['a', 'b', 'd', 'c'];
    arr.sort(function (a, b) {
    	if(a > b){
    		return -1;
    	}else if(b > a){
    		return 1;
    	}else{
    		return 0;
    	}
    });
    

    如果数组中的元素是数值类型,如果需要升序排序,那么就返回a - b;如果需要降序排序,那么就返回b-a;,如下所示:

    let arr = [1, 5, 3, 7, 6];
    arr.sort(function (a, b) {
    	return a - b;
    });
    

    如果要以数组中字符串长度进行排序,如下所示:

    let arr = ['1234', '56', '23980', '234', '7'];
    arr.sort(function (a, b) {
    	return a.length - b.length;
    });
    

    如果要比较数组中的对象中的某个属性值进行排序,如下所示:

    let arr = [
    {name: 'ww', age: 12},
    {name: 'gg', age: 8},
    {name: 'uu', age: 69}
    ];
    arr.sort(function (a, b) {
    	return a.age - b.age;
    });
    
    更多相关内容
  • java数组排序sort排序 Arrays 是java的util包下的数组工具类,其中提供默认的sort排序. public class Main { public static void main(String args[]) { int[] arr = {1, 4, 612, 333, -8, 2, -12, 4534, 0}; Arrays...

    import java.lang.*;

    import java.util.*;

    public class Main {

    public static void main(String args[]) {

    int a[] = new int[]{1, 4, 612, 333, -8, 2, -12, 4534, 0};

    for (int i = 0; i < a.length; i++) { //直接选择排序(两重for循环排序)

    for (int j = i + 1; j < a.length; j++) {

    if (a[i] > a[j]) {

    int temp = a[j];

    a[j] = a[i];

    a[i] = temp;

    }

    }

    }

    for (int i = 0; i < a.length; i++)

    System.out.print(a[i] + "\t");

    System.out.println();

    }

    }

    运行结果

    -12 -8 0 1 2 4 333 612 4534

    2. java数组排序sort排序

    Arrays 是java的util包下的数组工具类,其中提供默认的sort排序.

    public class Main {

    public static void main(String args[]) {

    int[] arr = {1, 4, 612, 333, -8, 2, -12, 4534, 0};

    Arrays.sort(arr); //默认从小到大进行sort()排序

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

    System.out.print(arr[i] + "\t");

    System.out.println();

    }

    }

    结果

    -12 -8 0 1 2 4 333 612 4534

    3. javasort降序排序

    可以将升序的数组倒序输出,即可实现降序排序了。

    或者实现一个自己的数组反转方法.

    public class Main {

    public static void main(String args[]) {

    int[] arr = {1, 4, 612, 333, -8, 2, -12, 4534, 0};

    Arrays.sort(arr); //默认从小到大进行sort()排序

    // 逆序输出

    for (int i = arr.length - 1; i >= 0; i--)

    System.out.print(arr[i] + "\t");

    System.out.println();

    }

    }

    结果

    4534 612 333 4 2 1 0 -8 -12

    展开全文
  • 主要介绍了js中数组排序sort方法的原理,以实例形式分析了sort排序方法的运行机制,具有一定的参考借鉴价值,需要的朋友可以参考下
  • 数组排序sort()方法详解

    千次阅读 2022-04-18 11:10:05
    sort() 方法用原地算法对数组的元素进行排序,并返回数组。默认排序顺序是在将元素转换为字符串,然后比较它们的UTF-16代码单元值序列时构建的。 一、sort()方法基本介绍 1.语法 arr.sort([compareFunction]) 2.参数...

    sort() 方法用原地算法对数组的元素进行排序,并返回数组。默认排序顺序是在将元素转换为字符串,然后比较它们的UTF-16代码单元值序列时构建的。

    一、sort()方法基本介绍

    1.语法

    arr.sort([compareFunction])

    2.参数

    compareFunction可选

    用来指定按某种顺序进行排列的函数。如果省略,元素按照转换为的字符串的各个字符的Unicode位点进行排序。

    a,b 两个将要被比较的元素。

    如果 compareFunction(a, b) 小于 0 ,那么 a 会被排列到 b 之前。

    如果 compareFunction(a, b) 等于 0 , a 和 b 的相对位置不变。

    如果 compareFunction(a, b) 大于 0 , b 会被排列到 a 之前。

    3.返回值

    排序后的数组。请注意,数组已原地排序,并且不进行复制。

    二、应用
    1.未指明compareFunction,那么元素会按照转换为的字符串的诸个字符的Unicode位点进行排序

    var arr = [15,68,3,2,89];
    arr.sort();
    console.log(arr)  //[15, 2, 3, 68, 89]
    

    2.如果指明了 compareFunction ,那么数组会按照调用该函数的返回值排序

    • 比较数字而非字符串,可以简单的以a和b的结果排序,a-b 升序 b-a 降序
    var arr = [15,68,3,2,89];
    arr.sort((a,b)=>a-b);
    console.log(arr)  // [2, 3, 15, 68, 89] 升序
     
    var arr = [15,68,3,2,89];
    arr.sort((a,b)=>b-a);
    console.log(arr)  // [89, 68, 15, 3, 2] 降序
    
    • 字符串排序,可直接使用sort()方法
    var arr = ['h','a','k','c','e'];
    arr.sort();
    console.log(arr)  // ["a", "c", "e", "h", "k"]
    
    • 依据对象的某个属性排序
    var arr = [
      { name: 'Edward', age: 21 },
      { name: 'Sharpe', age: 37 },
      { name: 'And', age: 45 },
      { name: 'The', age: -12 },
      { name: 'Magnetic', age: 15},
      { name: 'Zeros', age: 37 }
     ];
    //依据age排序
      arr.sort(function(a,b){
        return(a.age-b.age)
    });
    console.log(arr);//[{…}, {…}, {…}, {…}, {…}, {…}]
                     // 0: {name: "The", age: -12}
                     // 1: {name: "Magnetic", age: 15}
                     // 2: {name: "Edward", age: 21}
                     // 3: {name: "Sharpe", age: 37}
                     // 4: {name: "Zeros", age: 37}
                     // 5: {name: "And", age: 45}
    //依据name排序
      arr.sort(function(a,b){
        var nameA=a.name;
        var nameB=b.name;
        if(nameA<nameB){
          return -1;
        }
        if(nameA>nameB){
          return 1;
        }
          return 0;
       })
        console.log(arr); //[{…}, {…}, {…}, {…}, {…}, {…}]
                          // 0: {name: "Zeros", age: 37}
                          // 1: {name: "The", age: -12}
                          // 2: {name: "Sharpe", age: 37}
                          // 3: {name: "Magnetic", age: 15}
                          // 4: {name: "Edward", age: 21}
                          // 5: {name: "And", age: 45}
    
    • 非ASCII字符排序(如类似 e, é, è, a, ä 等字符的字符串),一些非英语语言的字符串需要使用 String.localeCompare
    var items = ['réservé', 'premier', 'cliché', 'communiqué', 'café', 'adieu'];
    items.sort(function (a, b) {
      return a.localeCompare(b);
    });
    console.log(items);//["adieu", "café", "cliché", "communiqué", "premier", "réservé"]
    
    • 使用映射改善排序
        // 需要被排序的数组
        var list = ['Delta', 'alpha', 'CHARLIE', 'bravo'];
     
        // 对需要排序的数字和位置的临时存储
        var mapped = list.map(function(el, i) {
          return { index: i, value: el.toLowerCase() };
        })
     
        // 按照多个值排序数组
        mapped.sort(function(a, b) {
          return +(a.value > b.value) || +(a.value === b.value) - 1;
        });
        // 根据索引得到排序的结果
        var result = mapped.map(function(el){
          return list[el.index];
        });
        console.log('result',result);
    
    展开全文
  • JS中数组排序sort()

    千次阅读 2020-09-24 11:05:29
    sort()方法使数组中的元素按照一定的顺序排列。 语法: arrayObject.sort(方法函数) 参数说明: 1.如果不指定<方法函数>,则按unicode码顺序排列。 2.如果指定<方法函数>,则按<方法函数>所指定的...

    sort()方法使数组中的元素按照一定的顺序排列。

    语法:

    arrayObject.sort(方法函数)
    

    参数说明:

    1.如果不指定<方法函数>,则按unicode码顺序排列。

    2.如果指定<方法函数>,则按<方法函数>所指定的排序方法排序。

    myArray.sort(sortMethod);
    

    注意: 该函数要比较两个值,然后返回一个用于说明这两个值的相对顺序的数字。比较函数应该具有两个参数 a 和 b,其返回值如下:

    若返回值<=-1,则表示 A 在排序后的序列中出现在 B 之前。 若返回值>-1 && <1,则表示 A 和 B
    具有相同的排序顺序。 若返回值>=1,则表示 A 在排序后的序列中出现在 B 之后。

    1.使用sort()将数组进行排序,代码如下:

    <script type="text/javascript">
      var myarr1 = new Array("Hello","John","love","JavaScript"); 
      var myarr2 = new Array("80","16","50","6","100","1");
      document.write(myarr1.sort()+"<br>");
      document.write(myarr2.sort());
    </script>
    

    运行结果:

    Hello,JavaScript,John,love 
    1,100,16,50,6,80
    

    注意:上面的代码没有按照数值的大小对数字进行排序。

    2.如要实现这一点,就必须使用一个排序函数,代码如下:

    <script type="text/javascript">
      function sortNum(a,b) {
      return a - b;
     //升序,如降序,把“a - b”该成“b - a”
    }
     var myarr = new Array("80","16","50","6","100","1");
      document.write(myarr + "<br>");
      document.write(myarr.sort(sortNum));
    </script>
    

    运行结果:

    80,16,50,6,100,1
    1,6,16,50,80,100
    
    展开全文
  • 数组排序sort()方法

    千次阅读 2021-01-22 22:35:35
    sort()方法用原地算法对数组的元素进行排序,并返回数组。默认排序顺序是在将元素转换为字符串,然后比较它们的UTF-16代码单元值序列时构建的。 一、sort()方法基本介绍 1.语法 arr.sort([compareFunction]) 2....
  • JS中数组排序sort方法

    千次阅读 2020-11-24 16:19:32
    一、按照字符串方法排序 arr=[1,14,3,4]; arr.sort(); console.log(arr); 二、数值升序排序 let arr = [1,22,11,2,4] arr.sort(function (a,b) { return a-b }) console.log(arr); 三、数值降序排序 let...
  • js代码-JS数组排序 sort用法
  • js中数组排序sort方法的原理分析.docx
  • 我们知道在js中默认提供了sort函数,但是这个函数默认是按照数组内容的ascii码升序进行排列的,如果我们要对二维数组排序要如何做呢?在php中是有multi_sort函数可供调用的,但是在js中似乎没有这种函数,但是没关系...
  • 数组sort()排序

    千次阅读 2021-06-21 15:01:36
    目录1、 sort函数的基本用法2、sort函数接受一个函数作为参数3、数组中包含对象进行排序 1、 sort函数的基本用法 数组sort方法,默认按照字母顺序升序排序,更准确地说是按照ASCII码顺序排序; let arr1 = ['b', '...
  • 数字索引数组: bool usort( array &$array, callback $cmp_function ) usort函数对指定数组(参数1)按指定方式(参数2)进行排序。 当我们想对多维数组进行排序时,多维数组的每个元素又是一数组类型,而两个数组如何...
  • JS数组排序sort方法)

    千次阅读 2022-01-20 16:31:28
    数组排序
  • 数组对象排序sort

    2019-11-18 17:23:35
    arr = [{type:2,age:15},{type:9,age:14},{type:1,age:27}] arr.sort((a,b)=>{ return a.type-b.type}) console.log(arr) 则可以根据数组内对象里面type的值对整个数组进行排序
  • 二维数组进行sort排序

    2021-05-22 10:19:56
    对于直接对二维数组排序的话应该是有几项就列几项。但这样太麻烦了。 在这里给大家介绍一种方法(进行转化) int id[100],snow[100][100];#记得将这个二维数组设置为全局变量 for(int i = 0 ; i < 3; i++){//这个...
  • reverse方法将一个Array对象中的元素位置进行反转,sort方法返回一个元素已经进行了排序的 Array 对象,下面为大家介绍下
  • python数组排序方法详解(sort, sorted,argsort)

    万次阅读 多人点赞 2021-09-27 10:51:26
    argsort 是用在 numpy 数据类型中的排序方法( numpy 里也有一个 sort 方法,下面会讲) sort 和 sorted 的区别如下???? 先看两个简单的升序排序,分别使用 sorted 和 sort 方法 # sorted num_list = [1, 8, 2, 3, ...
  • 如果是一个二维数组,也可以是用sort,我们可以选择根据某一列来进行排序,如果我们不重写cmp函数,那么默认的是根据第一列来排序,当然我们可以通过重写来根据其他列来排序: /* Input matrix m = [ 1 4 2 0 8...
  • 数组sort 排序

    千次阅读 2019-04-23 17:39:23
    sort 默认排序是按照字符串的编码排序的,所以出现了下面奇怪的现象 所以我们要自定义排序算法,语法如下
  • ES6 sort数组排序

    万次阅读 2020-02-06 17:18:37
    sort数组排序 <script> let arr = [2,1,3,5,4]; arr= arr.sort((n1,n2)=>{ // return -1; //返回负值 交换顺序 // return 0 或者 1 //返回正值 保持顺序不变 ...
  • 本文实例讲述了C#实现对二维数组排序的方法。分享给大家供大家参考。具体实现方法如下: /// /// A generic routine to sort a two dimensional array of a specified type based on the specified column. /// /...
  • 1.纯字符串数组排序 let myArray = ["people","person","apple","ziv"] console.log(myArray.sort()) // 打印结果[ 'apple', 'people', 'person', 'ziv' ]   其对于字符串数组直接按照字典顺序进行排序。注意:大...
  • Java数组:使用sort()方法对数组进行排序
  • js 二维sort数组排序

    千次阅读 2020-08-17 13:55:17
    冒泡排序: var arr=[1,22,1,23,52,32,12]; function bubble(arr){ var i,j,d; for(i = 0; i < arr.length; i ++){ for(j = 0; j < arr.length; j ++){ if(arr[i] < arr[j]){ d=...
  • 数组排序sort()方法--按数字大小

    万次阅读 2016-12-28 09:05:07
    数组排序sort() sort()方法使数组中的元素按输入代码照一定的顺序排列。 语法: arrayObject.sort(方法函数) 参数说明: 1.如果不指定,则按unicode码顺序排列。 2.如果指定,则按所指定的排序方法...
  • /**作用: 二维数组排序函数,支持多键名排序 * 返回: 排序好的数组 * 使用: array_msort(数组,需要排序的键名,排序方式); * 例子: array_msort($cflist,"chapter_orderid","SORT_ASC"); * array_msort($arr,"name...
  • 本文实例讲解了PHP数组排序sort、asort与ksort的用法,供大家参考借鉴之用。具体实例如下所示: <?php $arr = array('d'=>'sdf', 'r'=>'sdf', 'a'=> 'eee'); //sort($arr); // 对数组的值进行重排, 删除之前的...
  • int数组排序—Array.sort()

    千次阅读 2018-10-09 21:11:24
    import java.util.Arrays; public class ArraySort { public static void main(String[] args) { // TODO Auto-generated method stub int[] array={2,3,4,1,... Arrays.sort(array); for(In...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 505,716
精华内容 202,286
关键字:

数组排序sort

友情链接: 小车资料.zip