java结构与算法之冒泡排序

时间:2023-12-05 11:25:02

一、什么是冒泡排序:冒泡排序是在从相邻两个数之间进行比较,这里将前面一个值定义为before,后面一个值定义为after;当before>after时i,交换他们的值,如果before<after,则不交换。

  冒泡排序的时间复杂度,用大O法表示:O(N^2),运算效率低,但是算法思想简单,是比较基础的排序方法

  冒泡排序思路图:

        java结构与算法之冒泡排序

    冒泡排序参考代码:

public class PopSort {
int[] array = null; @Test
public void testPopSort() { array = new int[5]; array[0] = 45;
array[1] = 22;
array[2] = 33;
array[3] = 43;
array[4] = 34; int nElmes = array.length;
for (int i = nElmes - 1; i > 1; i--) {
for (int j = 0; j < i; j++) {
if (array[j] > array[j + 1]) {
swap(j, j + 1);
}
}
} System.out.println(Arrays.toString(array));
} private void swap(int one, int two) {
Integer temp = array[one];
array[one] = array[two];
array[two] = temp;
}
}