선택 정렬은 전체원소들 중에서 기준 위치에 맞는 원소를 선택하여 자리를 교환하는 방식으로 정렬한다. 전체 원소 중에서 가장 작은 원소를 찾아 선택하여 첫 번째 원소와 자리를 교환한다. 그 다음 두 번째로 작은 원소를 찾아 선택하여 두 번째 원소와 자리를 교환하고, 그 다음에는 세 번째로 작은 원소를 찾아서 세 번쨰 원소와 자리를 교환한다. 과정을 반복하면서 정렬을 완성한다.


시간복잡도 O(n^2)



public class selectionSort {


public static void main(String[] args) {

int a[]={69,10,30,2,16,8,31,22};

int min,temp;

for(int i=0  ; i<a.length ; i++){

System.out.print(a[i]+" ");

}

System.out.println("\n");

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

min=i;

for(int j=i+1 ; j<a.length ; j++){

if(a[j]<a[min]) min=j;

}

temp=a[i];

a[i]=a[min];

a[min]=temp;

}

for(int i=0  ; i<a.length ; i++){

System.out.print(a[i]+" ");

}

System.out.println("\n");


}


}

'Algorithm' 카테고리의 다른 글

병합 정렬(Merge Sort)  (0) 2014.12.03
삽입 정렬(Insert Sort)  (0) 2014.12.02
퀵 정렬(Quick Sort)  (0) 2014.12.02
버블 정렬(Bubble Sort)  (0) 2014.12.02
정렬 장소에 따른 분류  (0) 2014.12.02

+ Recent posts