冒泡排序
void BubbleSort(ElemType A[], int n) { // 升序
for(i = 0; i < n - 1; i++) {
flag = false;
for(j = n - 1; j > i; j--) {
if(A[j] < A[j -1]) {
swap(A[j - 1], A[j]); // swap() 是两数交换函数
flag = true;
}
}
if(flag == false) {
return;
}
}
}
- 空间复杂度:O(n)
- 最好时间复杂度:O(n)
最坏时间复杂度:O(n2)
平均时间复杂度:O(n2) - 算法稳定性:稳定
- 适用于顺序表和链表