계발자 블로그
[알고리즘] 선택정렬 본문
선택정렬(Selection Sort)이란 ?
선택정렬은 데이터를 정렬 할 때 가장 작은 수를 선택 하여 맨 앞자리의 수와 바꿔주는 정렬입니다.
9 1 8 4 2 3 5 6 7 이런 배열이 있다면
1 9 8 4 2 3 5 6 7
1 2 8 4 9 3 5 6 7
1 2 3 4 9 8 5 6 7
...
1 2 3 4 5 6 7 9 8
1 2 3 4 5 6 7 8 9
순으로 정렬 되는 것이 선택정렬입니다.
public int[] solution(int n, int[] arr) {
for(int i=0; i<n; i++) {
int idx = i;
for(int j=i+1; j<n; j++) {
if(arr[j] < arr[idx]) {
idx = j;
}
}
int tmp = arr[i];
arr[i] = arr[idx];
arr[idx] = tmp;
}
return arr;
}
이와 같이 코드로 나타낼 수 있습니다.
'Algorithm' 카테고리의 다른 글
[알고리즘] 삽입정렬 (0) | 2022.05.18 |
---|---|
[알고리즘] 버블정렬 (0) | 2022.05.17 |
[알고리즘] 에라토스테네스의 체 (0) | 2022.05.16 |
[알고리즘] BFS(Breadth-First Search) 너비 우선 탐색 (0) | 2022.04.20 |
[알고리즘] DFS(Depth-First Search) 깊이 우선 탐색 (0) | 2022.04.19 |