::public/알고리즘

선택 정렬(Selection Sort)

해맑은욱 2019. 6. 18. 02:57

시간복잡도

O(n^2)

// 가장 작은 수를 선택하여 좌측으로
void selectionSort(int arr[], int n)
{
    int min;        // 최소값
    int minIndex;    // 최소값 인덱스
    for (int i = 0; i < n - 1; i++)
    {
        min = arr[i];
        minIndex = i;
        for (int j = i + 1; j < n; j++)
        {
            if (arr[j] < min)
            {
                min = arr[j];
                minIndex = j;
            }
        }
        arr[minIndex] = arr[i];
        arr[i] = min;
    }
    cout << "========== selection sort ==========" << endl;
}
cs