최소 값부터 하나의 원소 씩 정렬 됨.
* 하기 코드는 연습을 위해 작성한 코드로 요만큼도 정리가 되지 않은 코드입니다.
이제 막 자바를 공부하기 시작한 어떤 학생은 저런식으로도 돌리는구나 정도만 생각해주세요. =)
class SelectionSort
{
public static void main(String[] args)
{
int[] array = { 8, 3, 5, 4, 9};
int i,j,k;
int minIndex = 0;
int temp;
System.out.println("Selection Sort : Before Sort");
for(k = 0 ; k < array.length ; k++)
{
System.out.print(array[k]);
}
System.out.println("");
for( i = 0 ; i < array.length ; i++)
{
minIndex = i;
for ( j = i ; j < array.length ; j++)
{
if( array[minIndex] > array[j] )
{
minIndex =j;
}
}
try{
temp = array[minIndex];
array[minIndex] = array[i];
array[i] = temp;
}catch (Exception e){
System.out.println("ERROR");
}
System.out.println("Selection Sort : " + i + " Sort");
for( k = 0 ; k < array.length ; k++)
{
System.out.print(array[k]);
}
System.out.println("");
}
System.out.println("Selection Sort : After Sort");
for(k = 0 ; k < array.length ;k++)
{
System.out.print(array[k]);
}
System.out.println("");
}
}