C语言冒泡排序

C语言冒泡排序
kelly
2023年11月21日
|
浏览 138
Java

C语言中的冒泡排序是一种简单的排序算法,它通过多次比较和交换相邻元素的方式将最大(或最小)的元素逐渐移动到数组的末尾。下面是一个实现冒泡排序的示例代码:

复制代码
#include <stdio.h>

void bubbleSort(int arr[], int size) {
    for (int i = 0; i < size - 1; i++) {
        for (int j = 0; j < size - i - 1; j++) {
            if (arr[j] > arr[j + 1]) {
                // 交换相邻元素
                int temp = arr[j];
                arr[j] = arr[j + 1];
                arr[j + 1] = temp;
            }
        }
    }
}

int main() {
    int arr[] = {5, 2, 8, 12, 3};
    int size = sizeof(arr) / sizeof(arr[0]);

    bubbleSort(arr, size);

    printf("排序结果:");
    for (int i = 0; i < size; i++) {
        printf("%d ", arr[i]);
    }

    return 0;
}

这段代码使用了两层循环,外层循环控制比较的轮数,内层循环用于比较相邻元素并进行交换。通过多次循环,将最大的元素逐渐移到数组的末尾,从而实现排序。

请注意,这只是一个基本的冒泡排序实现示例,实际应用中可能会有更高效的排序算法可供选择。

我要提问
复制内容
分享给好友
AI编程问答网 免责声明:
以上内容除特别注明外均来源于网友提问,AI编程问答网回答,权益归原著者所有;