冒泡排序:
一、数组的原生中有很多方法其中一个方法就是
->
[].sort():用于对数组的元素进行排序;
注意:
1、该方法直接作用于 原数组;
2、该方法默认可以不传参数,如果不传参数则默认排序方式为按照字符编码Unicode的顺序进行排序;
3、如果想按照其他方式进行排序则需要传一个参数(必须是一个函数(回调函数)可以称为比较函数该函数需要两个参数)
//如果返回一个大于0 的值,元素会交换位置
//如果返回一个小于0 的值,元素位置不变
//如果返回一个等于0 的值,认为两个元素相等,不交换位置
[].sort(function(a,b){
if(a>b){ //降序
return -1
}else if(){ //升序
return 1
}else{
return 0
}
})
二、不利用数组的方法进行冒泡排序
//外层控制循环的轮数(高)
for(var i = 0; i<sortArr.length-1;i++){
//内层循环控制次数()
for(var j = 0;j<sortArr.length-1-i;j++){
//判断前一个大于后一个数时进行交换
if(sortArr[j]>sortArr[j+1]){
//借助第三方变量交换两个变量的值
var temp = sortArr[j];
sortArr[j] = sortArr[j+1];
sortArr[j+1] = temp;
}
}
}
console.log(sortArr)