I. 선택 정렬 (Selection Sort)의 개요

가. 선택 정렬의 정의

정렬이 안된 숫자들 중에서 최소 값을 선택하여 배열의 첫 번째 요소와 교환하는 정렬 기법

 

나. 삽입 정렬의 특징

수행시간 복잡도 : O(n2)

안정성을 만족하지 않음.

 

 

Ⅱ. 선택 정렬의 단계 및 사례

가. 선택 정렬의 단계 (Pseudo Code)

 

 

나. 선택 정렬의 사례

 


public static int[] doSelectionSort(int[] arr){


for (int i = 0; i < arr.length - 1; i++)

{
int index = i;
for (int j = i + 1; j < arr.length; j++)
if (arr[j] < arr[index])
index = j;

int smallerNumber = arr[index];
arr[index] = arr[i];
arr[i] = smallerNumber;
}
return arr;
}