JS数组排序方法实例分析

(编辑:jimmy 日期: 2026/1/29 浏览:2)

本文实例讲述了JS数组排序方法。分享给大家供大家参考,具体如下:

方法一.冒泡排序

思路:依次比较数组中的第一个元素和第二个元素,如果第一个元素大于第二个元素,则交换位置,所以需要两个函数:交换位置函数和比较函数

比较轮数为数组长度

var arr=[2,58,49,26,34];
function change(f,s){
  var temp=arr[f];
  arr[f]=arr[s];
  arr[s]=temp;
}
for(var i=0;i<arr.length;i++){
  for(var j=0;j<arr.length-1;j++){
    if(arr[j]>arr[j+1]){
      change(j,+j+1);
    }
  }
}
alert(arr);

方法二.选择排序

从数组中找到最小值,扔到数组第一位,然后从剩下数组中循环操作

var arr=[2,58,49,26,34];
function change(){
  if(arr.length==1){
    return arr;
  }
  var iMin=arr[0];
  var index=0;
  for(var i=0;i<arr.length;i++){
    if(arr[i]<iMin){
      iMin=arr[i];
      index=i;
    }
  }
  var prev=arr.splice(index,1);
  return prev.concat(change(arr));
}
alert(change(arr));

更多关于JavaScript相关内容感兴趣的读者可查看本站专题:《JavaScript数组操作技巧总结》、《JavaScript排序算法总结》、《JavaScript遍历算法与技巧总结》、《JavaScript数学运算用法总结》、《JavaScript数据结构与算法技巧总结》、《JavaScript查找算法技巧总结》及《JavaScript错误与调试技巧总结》

希望本文所述对大家JavaScript程序设计有所帮助。

一句话新闻

高通与谷歌联手!首款骁龙PC优化Chrome浏览器发布
高通和谷歌日前宣布,推出首次面向搭载骁龙的Windows PC的优化版Chrome浏览器。
在对骁龙X Elite参考设计的初步测试中,全新的Chrome浏览器在Speedometer 2.1基准测试中实现了显著的性能提升。
预计在2024年年中之前,搭载骁龙X Elite计算平台的PC将面世。该浏览器的提前问世,有助于骁龙PC问世就获得满血表现。
谷歌高级副总裁Hiroshi Lockheimer表示,此次与高通的合作将有助于确保Chrome用户在当前ARM兼容的PC上获得最佳的浏览体验。