基本思想
从第0个元素到第n-1个元素进行遍历,若前一元素大于后一元素,则交换两元素,这样可以将序列中最大值冒泡到最后;然后从第0个到第n-2个元素进行遍历,以此往复,直到只剩一个元素。
算法步骤
- 从第0个元素到第n-1个元素进行遍历,比较相邻元素,若前一元素大于后一元素,则交换两元素;
- 遍历第0个到n-2个元素,重复步骤#1;
- 重复上面的步骤直到只剩一个元素。
代码示例
java
public void bubbleSort(int[] a){
for(int i = 0; i < a.length - 1; i++){
for(int j = 0; j < a.length - 1 - i; j++){
if(a[j] > a[j + 1]){
int temp = a[j];
a[j] = a[j + 1];
a[j + 1] = temp;
}
}
}
}