冒泡排序代码
#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;
}
返回排序算法分析总结
本文介绍了一种经典的排序算法——冒泡排序,并通过C++代码实现展示了其工作原理。该算法通过重复遍历要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。

6376

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



