function bubbleSort(arr){
var len = arr.length,temp;
for(var i = 0;i < len-1;i++){
var isSorted = true;
for(j = 0;j < len - 1 -i;j++){
if(arr[j] > arr[j+1]){
temp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = temp;
isSorted = false;
}
}
if(isSorted){
break;
}
}
return arr;
}
var arrTest = [10,9,7,8,6,4,3,12,40];
console.log(bubbleSort(arrTest));我有一个问题,这里i循环里面len不减一效果是一样的,如果不减是不是多了一次多余的比较,然后不使用bool来判断与使用效果也是一样的,使用是能提前中止排序很顺利的情况来提高效率?
信者得救
anet
橋本奈奈未
相关分类