Bubble sort algorithm
Example: 10,8,9,6,4,20,5 from small to large
The first round 1) 10> 8 exchanging data obtained: 8,10,9,6,4,20,5
2) 10> switched data 9 obtained: 8,9,10,6,4,20,5
3) 10> 6 exchanging data obtained: 8,9,6,10,4,20,5
4) 10> 4 exchanges data obtained: 8,9,6,4,10,20,5
5) 10 <20 does not exchange data obtained: 8,9,6,4,10,20,5
6) 20> 5-switched data obtained: 8,9,10,6,4,5,20
Results: 8,9,10,6,4,5,20
The second round 1) 8 <9 does not exchange data obtained: 8,9,10,6,4,5,20
2) 9 <10 does not exchange data obtained: 8,9,10,6,4,5,20
3) 10> 6 exchanging data obtained: 8,9,6,10,4,5,20
4) 10> 4 exchanges data obtained: 8,9,6,4,10,5,20
5) 10> 5 exchanging data obtained: 8,9,6,4,5,10,20
Results: 8,9,6,4,5,10,20
A third round) 8 <9 does not exchange data obtained: 8,9,6,4,5,10,20
2) 9> to give 6-switched data: 8,6,9,4,5,10,20
3) 9> 4-switched data obtained: 8,6,4,9,5,10,20
4) 9> to give 5-switched data: 8,6,4,5,9,10,20
Results: 8,6,4,5,9,10,20
Fourth Round 1) 8> 6 exchanging data obtained: 6,8,4,5,9,10,20
2) 8> 4 exchanges data obtained: 6,4,8,5,9,10,20
3) 8> 5 for exchanging data obtained: 6,4,5,8,9,10,20
Results: 6,4,5,8,9,10,20
Fifth wheel 1) 6> 4 exchanges data obtained: 4,6,5,8,9,10,20
2) 6> 5-switched data obtained: 4,5,6,8,9,10,20
Results: 4,5,6,8,9,10,20
Sixth round 1) 4 <5 does not exchange data obtained: 4,5,6,8,9,10,20
Analyze the results JS bubble sort algorithm is as follows
function sort(data){
var i=0;
while(i<data.length-1){
for(var j=0;j<data.length-i-1;j++){
if(data[j]>data[j+1]){
var x=data[j];
data[j]=data[j+1];
data[j+1]=x;
}
}
i++;
}
}
var data=[10,8,9,6,4,20,5];
console.log('before:'+data);
sort(data);
console.log('after:'+data);