中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

C語言冒泡升序排序怎么實現

小億
82
2024-01-03 11:38:52
欄目: 編程語言

在C語言中,可以使用冒泡排序算法來對數組進行升序排序。冒泡排序的基本思想是重復地交換相鄰的元素,使較大的元素逐漸向右移動到數組的末尾。

以下是使用冒泡排序算法實現升序排序的示例代碼:

#include <stdio.h>

void bubbleSort(int arr[], int n) {

    int i, j;

    for (i = 0; i < n-1; i++) {

        // 每次遍歷都將最大的元素移動到右端

        for (j = 0; j < n-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 n = sizeof(arr) / sizeof(arr[0]);

    printf("原始數組: ");

    for (int i = 0; i < n; i++) {

        printf("%d ", arr[i]);

    }

    bubbleSort(arr, n);

    printf("\n排序后的數組: ");

    for (int i = 0; i < n; i++) {

        printf("%d ", arr[i]);

    }

    return 0;

}

輸出結果:

原始數組: 5 2 8 12 3

排序后的數組: 2 3 5 8 12

在上述示例代碼中,`bubbleSort()`函數接受一個整數數組和數組的大小作為參數。它使用兩個嵌套的循環來遍歷數組,并將較大的元素向右移動。最后,`main()`函數通過調用`bubbleSort()`函數對數組進行排序,并輸出排序后的結果。

請注意,在實際應用中,冒泡排序算法可能不是最優的選擇,因為它的時間復雜度為O(n^2),在處理大型數據集時效率較低。更高效的排序算法如快速排序或歸并排序可以用于替代冒泡排序。

0
吴忠市| 迭部县| 蓬溪县| 建湖县| 金山区| 黄龙县| 安阳县| 宁乡县| 分宜县| 台东县| 舒城县| 鹤峰县| 广昌县| 惠东县| 磐安县| 张家口市| 贞丰县| 两当县| 平山县| 绥滨县| 鱼台县| 尖扎县| 雅安市| 惠水县| 钦州市| 集贤县| 孟村| 银川市| 衡南县| 鄂托克前旗| 盖州市| 邯郸市| 会东县| 公主岭市| 格尔木市| 丘北县| 浑源县| 鄱阳县| 隆安县| 永平县| 山西省|