zoukankan      html  css  js  c++  java
  • 二维数组排序

    工作中碰到需要对二维数组里面的数组的第一维数字大小进行排序,
    直接使用sort();得到的结果是:[[1009,1], [356,2], [798,3
    ]],
    而这显然是不正确的,查看文档得知sort()是可带参数的,
    arrayObject.sort(sortby)  //可选。规定排序顺序。必须是函数。
    • 若 a 小于 b,在排序后的数组中 a 应该出现在 b 之前,则返回一个小于 0 的值。
    • 若 a 等于 b,则返回 0。
    • 若 a 大于 b,则返回一个大于 0 的值。
     


    所以将sort()修改可以实现:
    <html>
        <head>
            <title>二维数组排序</title>
            <script type="text/javascript">
                var numArr = [[1009,1], [356,2], [798,3]];
                numArr.sort(function(a,b){
                    return a[0]-b[0];
                }); 
                document.write(numArr);

           //得到正确结果
    [[356,2], [798,3], [1009,1]];
        </script> 
      </head>
      <body>
      </body>
    </html>

     同样的,一维数组也会这样[22,12,5,7,19],sort后得到[12,19,22,5,7],也可以使用该方法解决


    ps:基础不牢害死人啊!
     
  • 相关阅读:
    freopen
    字符
    map映射
    P3512 [POI2010]PIL-Pilots-洛谷luogu
    快读
    单调队列&单调栈
    简写
    邻接表&链式前向星
    mysql参数详解
    网络管理指南
  • 原文地址:https://www.cnblogs.com/load/p/2740782.html
Copyright © 2011-2022 走看看