冒泡排序:讓數(shù)組中的當(dāng)前項和后一項進(jìn)行比較,如果當(dāng)前項比后一項大,則兩項交換位置(讓大的靠后)即可。比較完第一輪的時候,最后一個元素是最大的元素。這時候最后一個元素是最大的,所以最后一個元素就不需要參與比較大小。
var arr = [36, 18, 12, 8, 16, 1];
// 外層循環(huán)控制比較的輪數(shù),6個元素比較5輪
function bubble(arr) {
for (let i = 0; i < arr.length - 1;i++) {
// 內(nèi)層循環(huán)控制比較的次數(shù),有五個元素時比較四次,每一輪結(jié)束后,最大的會被放到最后
for (let j = 0; j < arr.length - 1 - i; j++) {
if(arr[j] > arr[j+1]) {
let temp = arr[j];
arr[j] = arr[j+1] ;
arr[j+1] = temp;
}
}
}
return arr;
}
console.log(bubble(arr));