溫馨提示×

c語言中的選擇排序法怎么用

小億
88
2024-01-03 11:47:56
欄目: 編程語言

在 C 語言中,可以使用選擇排序算法對一個數(shù)組進行排序。選擇排序的基本思想是每次從未排序部分選擇最?。ɑ蜃畲螅┑脑?,并將其放置在已排序部分的末尾。

下面是使用選擇排序算法對一個整數(shù)數(shù)組進行排序的示例代碼:

#include <stdio.h>

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

    int i, j, min_idx, temp;

    // 遍歷整個數(shù)組

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

        // 找到未排序部分的最小元素位置

        min_idx = i;

        for (j = i + 1; j < n; j++) {

            if (arr[j] < arr[min_idx])

                min_idx = j;

        }

        // 將最小元素與當前位置交換

        temp = arr[i];

        arr[i] = arr[min_idx];

        arr[min_idx] = temp;

    }

}

int main() {

    int arr[] = {64, 25, 12, 22, 11};

    int n = sizeof(arr) / sizeof(arr[0]);

    int i;

    printf("原始數(shù)組:");

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

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

    selectionSort(arr, n);

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

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

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

    return 0;

}

在上述代碼中,`selectionSort()` 函數(shù)用于實現(xiàn)選擇排序算法。`main()` 函數(shù)中創(chuàng)建了一個整數(shù)數(shù)組 `arr`,并計算出數(shù)組的長度 `n`。然后,原始數(shù)組被輸出,并調(diào)用 `selectionSort()` 函數(shù)對數(shù)組進行排序。最后,排序后的數(shù)組被輸出。

以上代碼將輸出:

原始數(shù)組:64 25 12 22 11 

排序后的數(shù)組:11 12 22 25 64

這就是使用選擇排序算法在 C 語言中對一個數(shù)組進行排序的示例。

0