原理
左边大于右边交换一趟排下来最大的在右边
实现
两个for循环
void Bubble_sort(int *arr, int size)
{
for (int i = 0; i < size-1;i ++){
int flag = 0;
for (int j = 0; j < size-1 - i; j++){
if (arr[j] > arr[j+1]){
int tem = arr[j];
arr[j] = arr[j+1];
arr[j+1] = tem;
flag = 1;
}
}
if (flag == 0)
break;
}
}
时间复杂度:最坏情况:O(N^2)
最好情况:O(N)
空间复杂度:O(1)