要求生成一個(gè)10個(gè)元素的隨機(jī)數(shù)數(shù)組,隨機(jī)數(shù)取值范圍(1-100)
冒泡排序
//先寫(xiě)出這個(gè)隨機(jī)數(shù)組
var arr = [];
for(i=0;i<10;i++){
arr[i]=Math.round(Math.random()*100);
}
console.log(arr);
//假如數(shù)組中有10個(gè)元素,則需要循環(huán)9遍
//所以最大循環(huán)循環(huán)次數(shù)為arr.length-1
for(var i = 0;i<arr.length-1;i++){
//外層for循環(huán)是整體循環(huán)的次數(shù)叁熔,i代表當(dāng)前循環(huán)到第幾次
//外層for循環(huán)每循環(huán)一圈都能確定一個(gè)最大值
for(var j = 0;j<arr.length-i-1;j++){
//內(nèi)層for循環(huán)眯勾,負(fù)責(zé)兩兩元素之間的對(duì)比
//由于外層每循環(huán)一圈肝陪,都能確定一個(gè)最大值紧唱,所以?xún)?nèi)層for循環(huán)的 循環(huán)次數(shù)是length-i-1
//讓相鄰元素之間做對(duì)比
if(arr[j]>arr[j+1]){
//如果前一個(gè)元素大于后一個(gè)元素一疯,則將它們的位置互換
//位置互換其實(shí)就是值的互換
var a = arr[j];
arr[j]=arr[j+1];
arr[j+1]=a;
}
}
}
console.log(arr);