冒泡排序代码
#include <iostream>
using namespace std;
void BubbleSort(int32_t numList[], int32_t len) {
for (auto i = 0; i < len - 1; i++) { //只需遍历len-1个元素
auto isChanged = false;
for (auto j = 0; j < len - 1 - i; j++) {//每一次都将已排好的不用再比较数剔除
if (numList[j] > numList[j + 1]) {
auto tmp = numList[j];
numList[j] = numList[j + 1];
numList[j + 1] = tmp;
isChanged = true;
}
}
if (!isChanged) {
return;
}
}
}
void main() {
int32_t numList[] = { 31, 41, 59, 26, 41, 58, 12 };
int32_t count = sizeof(numList) / sizeof(numList[0]);
BubbleSort(numList, count);
for (auto num : numList) {
std::cout << num << " ";
}
std::cout << std::endl;
}
返回排序算法分析总结