数组排序

简单的做一组数组由大到小、与小到大的排序

原数据 [33, 23, 45, 13,56 ,75 ,12, 34]

  • 由小到大排序
var arr = [33, 23, 45, 13,56 ,75 ,12, 34];
var temp = 0;
for(var i = 1; i < arr.length; i++) {
    var j = i-1;
    temp = arr[i];
    // 着重理解j值的变化
    for (j; j >= 0 && temp < arr[j]; j--) {
        a[j+1] = a[j];
    }
    a[j+1] = temp;
}
console.log(arr);  // [12, 13, 23, 33, 34, 45, 56, 75]
  • 由大到小排序
var arr = [33, 23, 45, 13,56 ,75 ,12, 34];
var temp = 0;
for(var i = 1; i < arr.length; i++) {
    var j = i-1;
    temp = arr[i];
    // 相较于上面的方法只在 [temp > arr[j]]这块比较符号做了改变
    // 那这是为什么呢?j的值是怎么变化的?
    for (j; j >= 0 && temp > arr[j]; j--) {
        a[j+1] = a[j];
    }
    a[j+1] = temp;
}
console.log(arr);  // [75, 56, 45, 34, 33, 23, 13, 12]

好的,代码就到这里,个中理解大家可以亲自敲敲看!

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 数组排序在日常编程中用到的其实还是比较多的,比如把一组数据按时间排序,按首字母排序,按大小排序等等,那么就让我们一...
    一木_qintb阅读 13,246评论 1赞 2
  • 数组排序在日常编程中用到的其实还是比较多的,比如把一组数据按时间排序,按首字母排序,按大小排序等等,那么就让我们一...
    xueNoble阅读 2,249评论 0赞 9
  • 概述:JDK提供了概述:JDK提供了对于数组排序的库函数,java.util.Arrays类中的一些列重载的sor...
    张晨辉Allen阅读 3,233评论 1赞 5
  • 数组可对其中包含的元素进行排序。 在排序前,我们需要定义一个Model类,将Model类对象添加至数组中。 定义一...
    SkyMing一C阅读 11,101评论 0赞 15
  • 顺序上分为两种:从小到大的排序;从大到小的排序; 方法上分为四种:冒泡排序、快速排序、选择排序、插入排序 (1)冒...
    痛心凉阅读 435评论 0赞 1

友情链接更多精彩内容