冒泡排序(Bubble Sort)基本思想:对待排序的序列从前往后,依次比较相邻的元素的值,若发现逆序则交换。
冒泡排序优化:排序过程中,各个元素不断接近有序的位置,如果一趟交换下来没有进行过交换,说明已经有序。可以在排序过程中添加一个flag判断元素是否进行过交换。
代码实现
//冒泡排序 每次选出最大的元素 时间复杂度O(n^2)
public static int[] sort(int[] arr){
//创建临时变量
int temp;
for (int i = 0; i < arr.length-1; i++) {
for (int j = 0; j < arr.length-1-i; j++) {
if(arr[j] > arr[j+1]){
temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
return arr;
}