冒泡排序:
冒泡排序是一种简单直观的排序方法,它重复的走访过要排序的序列,一次比较两个相邻的元素,如果它们的顺序错误就把它们交换过来
算法步骤:
- 比较相邻的元素,如果第一个比第二个大(小),就交换它们
- 对每一对相邻元素做同样的工作,从开始第一对,到结尾最后一对。在这一点,最后的元素应该会是最大(小)的数。
- 针对所有的元素重复以上的步骤,除去最后一个
- 持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数组需要比较
代码实现:
C++代码实现:
void bubble_sort(int num[], int length){
for (int i = 0; i < length - 1; i++) {
for (int j = 0; j < length - 1 -i; j++) {//第二轮开始实现最后一个数不做比对
if(num[j] > num[j + 1]){ //升序排列,符号相反就是降序排列
int temp = num[j];
num[j] = num[j+1];
num[j+1] = temp;
}
}
}
}