冒泡排序
冒泡排序算法的原理如下:
- 比较数组中,两个相邻的元素,如果第一个数比第二个数大,我们就交换他们的位置
- 每一次比较,都会产生出一个最大,或者最小的数字;
- 下一轮则可以少一次排序
- 依次循环,直到结果
Bubble.java
package com.sailor.array;
class Bubble {
public int[] sort(int[] array) {
int temp = 0;
for (int i = 0; i < array.length - 1; i++) {
int flag = 0;
for (int j = 0; j < array.length - i - 1; j++) {
if (array[j + 1] > array[j]) {
temp = array[j];
array[j] = array[j + 1];
array[j + 1] = temp;
flag = 1;
}
}
if (flag == 0) {
break;
}
}
return array;
}
public static void main(String[] args) {
Bubble bubble = new Bubble();
int[] array = {2, 5, 1, 6, 4, 9, 8, 5, 3, 1, 2, 0};
int[] sort = bubble.sort(array);
for (int num : sort) {
System.out.print(num + "\t");
}
}
}