## C 언어 선택 정렬 알고리즘 함수 사용 방식

C 언어에서 선택 정렬 알고리즘을 구현하는 간단한 예제는 다음과 같습니다.

#include <stdio.h>

void selection_sort(int arr[], int n) {
    int i, j, min_idx;

    // One by one move boundary of unsorted subarray
    for (i = 0; i < n-1; i++) {
        // Find the minimum element in unsorted array
        min_idx = i;
        for (j = i+1; j < n; j++)
            if (arr[j] < arr[min_idx])
                min_idx = j;

        // Swap the found minimum element with the first element
        int temp = arr[min_idx];
        arr[min_idx] = arr[i];
        arr[i] = temp;
    }
}

int main() {
    int arr[] = {64, 25, 12, 22, 11};
    int n = sizeof(arr)/sizeof(arr[0]);

    selection_sort(arr, n);

    printf("Sorted array: \n");
    for (int i=0; i < n; i++)
        printf("%d ", arr[i]);

    return 0;
}
정렬된 배열: 
11 12 22 25 64

위 코드에서 selection_sort 함수는 매개변수로 받은 배열을 선택 정렬 알고리즘으로 정렬합니다. for 루프를 사용하여 미정렬 부분에서 최솟값을 찾고, 그 값과 현재 인덱스의 값을 교환하여 정렬하는 방식입니다. main 함수에서는 배열을 선언한 뒤, selection_sort 함수를 호출하여 정렬합니다. 정렬 후 배열의 값을 출력하여 결과를 확인할 수 있습니다.

 

Comments


Comments are closed