一、冒泡排序的原理
冒泡排序(Bubble Sort),是一种计算机科学领域的较简单的排序算法。
思想:
依次比较相邻的两个数,将小数放在前面,大数放在后面。即首先比较第1个和第2个数,将小数放前,大数放后。然后比较第2个数和第3个数,将小数放前,大数放后,如此继续,直至比较最后两个数,将小数放前,大数放后。重复以上过程,仍从第一对数开始比较(因为可能由于第2个数和第3个数的交换,使得第1个数不再大于第2个数),将小数放前,大数放后,一直比较到最小数前的一对相邻数,将小数放前,大数放后,第二趟结束,在倒数第二个数中得到一个新的最小数。如此下去,直至最终完成排序。降序反之。
动画演示:
二、JavaScript代码
1.升序
<script>
//升序
function maopao() {
var arr = [9, 2, 33, 66, 55, 34, 1, 91, 88];//定义一个数组;
for (var i = 1; i < arr.length; i++) {
for (var j = 0; j < arr.length - i; j++) {
if (arr[j] > arr[j + 1]) {
var temp = arr[j]; //定义一个临时变量temp
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
return arr; //返回数组
}
document.write("升序:" + maopao());
</script>
2.降序
<script>
//降序
function maopao2() {
var arr = [9, 2, 33, 66, 55, 34, 1, 91, 88];//定义一个数组;
for (var i = 1; i < arr.length; i++) {
for (var j = 0; j < arr.length - i; j++) {
if (arr[j] < arr[j + 1]) {
var temp = arr[j]; //定义一个临时变量temp
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
return arr; //返回数组
}
document.write("降序:" + maopao2());
</script>
三、返回结果