冒泡法排序c语言算法步骤,冒泡排序 - 数据结构与算法教程 - C语言网
时间: 2023-07-16 19:13:35 浏览: 136
冒泡排序是一种简单的排序算法,它的基本思想是通过相邻元素之间的比较和交换来达到排序的目的,每一轮都将未排序序列中最大(或最小)的元素移动到序列的末尾。
以下是冒泡排序的 C 语言实现步骤:
1. 定义一个数组并初始化;
2. 进入排序循环,外层循环控制排序轮数,内层循环控制每轮比较的次数;
3. 在内层循环中,比较相邻元素的大小,如果前面的元素大于后面的元素,则交换它们的位置;
4. 完成一轮排序后,最大(或最小)的元素就会移动到序列的末尾;
5. 继续进行下一轮排序,但是这次要少比较一次,因为最后已经有一个元素已经排好序了;
6. 最后,排序完成后输出排序后的数组。
下面是代码示例:
```c
#include <stdio.h>
void BubbleSort(int arr[], int len) {
int i, j, temp;
for (i = 0; i < len - 1; i++) { //控制排序轮数
for (j = 0; j < len - 1 - i; j++) { //控制每轮比较的次数
if (arr[j] > arr[j + 1]) {
temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
}
int main() {
int arr[] = { 5, 2, 8, 6, 1, 9 };
int len = sizeof(arr) / sizeof(arr[0]);
BubbleSort(arr, len);
int i;
for (i = 0; i < len; i++) {
printf("%d ", arr[i]);
}
return 0;
}
```
输出结果为:1 2 5 6 8 9。
阅读全文