정렬 알고리즘 의 직접 선택 정렬

2503 단어 정렬 선택
지난 편 에서 우 리 는 거품 정렬 알고리즘 의 실현 을 기 록 했 는데, 이번 에는 정렬 을 직접 선택 하 는 것 이 어떻게 실현 되 는 지 살 펴 보 자.
 
1. 정렬 을 직접 선택:
기본 사상:
정렬 을 직접 선택 하 는 것 도 정렬 된 서열 을 n - 1 번 옮 겨 다 니 는 것 입 니 다. 거품 정렬 과 달리 이번 옮 겨 다 니 는 서열 에 있 는 요소 두 가 지 를 비교 하지 않 고 비교 결과 에 따라 교환 여 부 를 결정 하 는 것 이 아니 라 이번 옮 겨 다 니 는 서열 에 있 는 요소 의 최소 값 을 찾 아 이번 옮 겨 다 니 는 시작 위 치 를 삽입 하여 순서 가 질서 가 있 을 때 까지 합 니 다.정렬 알고리즘 을 직접 선택 하 는 시간 복잡 도 는 O (n) 입 니 다.²);;
코드 구현:
/// <summary>
///       
/// </summary>
/// <param name="intArray"></param>
/// <param name="length"></param>
public static void SelectSort(int[] intArray, int length)
{
    int i, j, minIndex, temp;
    for (i = 0; i < length-1; i++)
    {
        minIndex=i;
        for (j = i + 1; j < length; j++)
        {
            if (intArray[minIndex] > intArray[j])
                minIndex = j;
        }

        if (i != minIndex) 
        {
            temp = intArray[i];
            intArray[i] = intArray[minIndex];
            intArray[minIndex] = temp;
        }
    }
}

이상 은 정렬 된 내용 을 직접 선택 하 는 것 입 니 다.

좋은 웹페이지 즐겨찾기