代码如下:
void bubbleSort(int arr[], int n) {
int temp;
int swapped; // 用于优化,如果一轮中没有发生交换,数组已经有序,可提前结束排序
for (int i = 0; i < n - 1; i++) {//n个元素只需要比较n-1次
swapped = 0;
for (int j = 0; j < n - 1 - i; j++) {
if (arr[j] > arr[j + 1]) {// 如果当前元素比下一个元素大,进行交换
temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
swapped = 1;
}
}
if (swapped == 0) {// 如果一轮中没有发生交换,数组已经有序,提前结束排序
break;
}
}
}
9万+

被折叠的 条评论
为什么被折叠?



