为了账号安全,请及时绑定邮箱和手机立即绑定

数组排序

标签:
AngularJS


今天总结一下常用的四种数组排序方法:

1.使用sort()对数组排序:

var arr=[11,45,2,32,89,0];

        arr.sort(function(a,b){

            return a-b;

        })

        document.write(arr);

sort方法中的参数是一个函数,function的参数(a,b),如果函数的返回值是return a-b;则表示升序。如果函数的返回值是return b-a,则表示数组按降序排列。

2. reverse()逆序

var arr=[11,45,2,32,89,0];

arr.reverse(arr);

document.write(arr);

数组排序

3.冒泡排序:

概念:数组中相邻元素两两比较,如果第一个元素大于第二元素,交换第一个元素和第二个元素的位置,第一轮比较结束,能确定一个最大值,然后进行第二轮...

数组排序

        var arr=[11,45,2,32,89,0];

        for(var i=1;i<arr.length;i++){     //第一轮循环表示循环的轮数

                for(var j=0;j<arr.length-i;j++){  //这轮的for循环指的是每次循环的次数

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

                        var temp=arr[j];

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

                        arr[j+1]=temp;

                    }

                }

             }

            document.write(arr);

4.选择排序

概念:

1.先假定数组中的第一个元素为最小值,对应的索引为minIndex,让该值与剩余元素比较,如果有比该值小的,改变minIndex的指向,让其指向较小的值的索引,让minIndex对应的值和剩下的值进行比较

2.第一轮比较完成之后,我们能确定最小值对应的minIndex,然后让其与第一个元素进行交换

3.假定数组中的第二个元素为最小值,以此类推...

数组排序

var arr=[11,45,2,32,89,0];

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

                var minIndex=i;

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

                    if(arr[minIndex]>arr[j]){

                        minIndex=j;

                    }

                }

                var temp=arr[i];

                arr[i]=arr[minIndex];

                arr[minIndex]=temp;

             }

            document.write(arr);


点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消