function test(arr){
for(let j = 0; j<arr.length -1 ;j++){
let flag = false;
// arr.length -j 减去已经排好的数组减少循环次数
for(let i = 0; i< arr.length -j;i++){
let temp = null;
if(arr[i] > arr[i+1]){
temp = arr[i]
arr[i] = arr[i+1]
arr[i+1] = temp;
flag = true
}
}
// 没有进行交换就证明已经是排好的,跳出循环
if(!flag){
break
}
}
最优冒泡法
最新推荐文章于 2023-03-16 09:39:29 发布