バブルソートアルゴリズム
例:10,8,9,6,4,20,5小規模から大規模まで
第1ラウンド)>図8〜図10は得られたデータを交換:8,10,9,6,4,20,5
2)10>データ9が得切り替え:8,9,10,6,4,20,5
3)10> 6交換データが得られた:8,9,6,10,4,20,5
得られる4)10> 4の間でデータの送受信を行う:8,9,6,4,10,20,5
5)10 <20で得られたデータを交換しません。8,9,6,4,10,20,5
6)20> 5交換データを得る:8,9,10,6,4,5,20
結果:8,9,10,6,4,5,20
第1ラウンド)8 <9は、取得したデータを交換しません。8,9,10,6,4,5,20
2)9 <10は、取得したデータを交換しません。8,9,10,6,4,5,20
3)10> 6交換データが得られた:8,9,6,10,4,5,20
得られる4)10> 4の間でデータの送受信を行う:8,9,6,4,10,5,20
5)> 5 10は、取得したデータを交換:8,9,6,4,5,10,20
結果:8,9,6,4,5,10,20
第三ラウンド)8 <9は、得られたデータを交換しない:8,9,6,4,5,10,20
2)9> 6交換データを得た:8,6,9,4,5,10,20を
3)9> 4交換データを得る:8,6,4,9,5,10,20
4)9> 5交換データを得た:8,6,4,5,9,10,20を
結果:8,6,4,5,9,10,20
第4ラウンド1)>図6〜図8は、得られたデータを交換:6,8,4,5,9,10,20
得られた2)8> 4の間でデータの送受信を行う:6,4,8,5,9,10,20
得られたデータを交換するための3)8> 5:6,4,5,8,9,10,20
結果:6,4,5,8,9,10,20
五番車1)得られた6> 4の間でデータの送受信を行う:4,6,5,8,9,10,20
2)6> 5交換データを得る:4,5,6,8,9,10,20
結果:4,5,6,8,9,10,20
第1ラウンド)4 <5は、得られたデータを交換しない:4,5,6,8,9,10,20
次のような結果のJSのバブルソートのアルゴリズムである分析
関数ソート(データ){
VAR I = 0。
{(私はdata.length-1 <)しながら
ため(VARのJ = 0; J <data.length-I-1、J ++){
IF(データ[J]>データ[J + 1]){
VAR X =データ[J]。
データ[J] =データ[J + 1]。
データ[J + 1] = xと;
}
}
I ++。
}
}
VARデータ= [10,8,9,6,4,20,5]。
console.log( 'の前に:' +データ);
ソート(データ);
console.log( 'の後に' +データ);