JS冒泡排序
1.用循环
var arr=[4,1,3,5,6,2];
function stors(arr){
var len=arr.length-1;
for(var i=0;i<len;i++){
for(j=0;j<len-i;j++){
if(arr[j]>arr[j+1]){
var temp=arr[j+1];
arr[j+1]=arr[j];
arr[j]=temp;
}
}
}
}
stors(arr);
console.log(arr);
在这里,将arr[ j ]和arr[ j+1 ]作比较,当前者大于后者时,两者交换。
2.arr.sort()
var arr=[0,1,4,2,7,2,5,8,10,4,5,7,3,8,9];
arr.sort();
// arr.sort(function(后一项,前一项){})
arr.sort(function(a,b){
// console.log(a,b);
// return a-b 从小到大 arr[j+1]-arr[j]
// return b-a 从大到小 arr[j]-arr[j+1]
return a-b;
})
console.log(arr)
arr.sort()方法仅适用于数值型,其中,a代表数组中的后一项,b代表数组中的前一项,return a-b为从小到大排列,return b-a为从大到小排列。
注:当有字符需要进行排序时,将字符使用charCodeAt()转换为Unicode编码再进行比较。