原生 javascript 数组排序

2025-04-06 18:49:05

1、获取数组中最大的元素:var arr=[1,2,4,6,3,7,5];var max=0;for(var i=0;i<arr.length;i++){ if(max<=arr[i]){ max=arr[i]; }}

2、把最大值放到数组最后:定义一个中间变量来交换最大值和最后一个元素的值;定义一个变量来保存最大值所在的位置;var arr=[1,2,4,6,3,7,5];var len=arr.length;var max=0;var num=0;var mid=0;for(var i=0;i<len;i++){ if(max<=arr[i]){ max=arr[i]; num=i; }}mid=arr[len-1]; //将数组最后一个元素的值赋给中间变量;arr[num]=mid; //将中间变量赋给最大值的元素;arr[len-1]=max; //将最大值赋给数组最后一个元素;//[1,2,4,6,3,5,7];

3、使用第二重循环来执行第2步:var arr=[1,2,4,6,3,7,5];var len=arr.length;var max=0;var num=0;var mid=0;for(var i=len-1;i>0;i--){ max=arr[0]; for(var j=0;j<=i;j++){ if(max<=arr[j]){ max=arr[j];// 获取数组中最大值 num=j; } }mid=arr[li];arr[num]=mid;arr[i]=max;

4、把第3步封装在函数中:function order(arr){var len=arr.length;var max=0; // 定义一邗锒凳审个变量max,用于保存数组中的最大值。var num=0; // 定义一个变量num,用于保存数组中最大值的位置。var mid=0; // 定义一个变量mid,用于交换最大值和最后一个值。for(var i=len-1;i>0;i--){ max=arr[0]; for(var j=0;j<=i;j++){ if(max<=arr[j]){ max=arr[j];// 获取数组中最大值 num=j; } }mid=arr[i]; // 将数组最后一个元素的值赋给中间变量;arr[num]=mid; // 将中间变量赋给最大值的元素;arr[i]=max; // 将最大值赋给数组最后一个元素;}return arr;}

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
相关推荐
  • 阅读量:73
  • 阅读量:86
  • 阅读量:80
  • 阅读量:89
  • 阅读量:75
  • 猜你喜欢