1. 程式人生 > >JavaScript中氣泡排序

JavaScript中氣泡排序

var arr=[23,1,2,0,11];
第一輪比較(0): 比較了4次(arr.length-i-1)
1,23,2,0,11;
1,2,23,0,11;
1,2,0,23,11;
1,2,0,11,23;
第二輪比較(1) 比較了3次(arr.length-i-1)
1,2,0,11,23;
1,0,2,11,23;
1,0,2,11,23;
第三輪比較(2) 比較了2次(arr.length-i-1)
0,1,2,11,23;
0,1,2,11,23;
第四輪(3) 比較了1次(arr.length-i-1)
0,1,2,11,23;
第一種書寫條件

<script type="text/javascript">
	var str1=[22,2,3,4,25,9,11,8];
	for (var i=0;i<str1.length-1;i++) {
		for (var j=0;j<str1.length-i-1;j++) {
			if(str1[j]>str1[j+1]){
				var temp=str1[j];
				str1[j]=str1[j+1];
				str1[j+1]=temp;
			}
		}
	}
	for (var i=0;i<str1.length;i++) {
		document.writeln(str1[i]);
	}
</script>

第二種書寫條件

<script type="text/javascript">
	var str1=[22,2,3,4,25,9,11,8];
	for (var i=0;i<str1.length-1;i++) {
		for (var j=i+1;j<str1.length;j++) {
			if(str1[i]>str1[j]){
				var temp=str1[i];
				str1[i]=str1[j];
				str1[j]=temp;
			}
		}
	}
	for (var i=0;i<str1.length;i++) {
		document.writeln(str1[i]);//2 3 4 8 9 11 22 25
	}
</script>