冒泡排序是内部排序中交换排序的一种。
算法思想
对当前还未排序好的范围内的全部数,自上而下对相邻的两个数进行比较和调整,大的下沉,小的上浮。
空间复杂度
只是互换,为O(1)
时间复杂度
两次循环,故为O(n^2)
算法实现思想
每当两相邻的数比较后发现它们的排序与排序要求相反时,就将它们互换。
java实现
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| public int[] bubbleSort(int[] array){ int[] arr = array; for(int i = 0; i < array.length - 1; i ++){ for(int j = 0; j < array.length - i - 1; j ++){ if(arr[j] > arr[j+1]){ int temp = arr[j]; arr[j] = arr[j+1]; arr[j+1] = temp; } } } return arr; }
|
c实现
python实现