728x90
반응형
선택 정렬 알고리즘
선택 정렬(Selection Sort) 알고리즘은 원소가 앞에서부터 정렬되는 알고리즘입니다.
- 원소들 중에서 최솟값을 찾는다.
- 맨 앞의 값과 최솟값과 교체(Swap) 한다.
- 마지막으로 교체(Swap)한 다음 위치부터 위와 같이 진행한다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
|
public class Selection_Sort {
public static void main(String[] args) {
int[] arr = { 10, 50, 80, 90, 70 };
for (int i = 0; i < arr.length - 1; i++) {
int min = i;
for (int j = i + 1; j < arr.length; j++) {
if (arr[min] > arr[j]) {
/*최솟값의 위치를 변경한다*/
min = j;
}
}
/*맨 앞 부터 최솟값의 원소와 교체한다.*/
int temp = arr[i];
arr[i] = arr[min];
arr[min] = temp;
}
output(arr);
}
private static void output(int[] arr) {
for (int i = 0; i < arr.length; i++) {
System.out.print(arr[i] + " ");
}
}
}
http://colorscripter.com/info#e" target="_blank" style="color:#4f4f4f; text-decoration:none">Colored by Color Scripter
|
728x90
반응형
'알고리즘' 카테고리의 다른 글
[알고리즘] 버블정렬 (Bubble Sort) Java Example (0) | 2019.06.23 |
---|---|
[알고리즘] 삽입정렬 (Insertion Sort) Java Example (0) | 2019.06.16 |
[알고리즘] 퀵정렬 (Quick Sort) Java Example (0) | 2019.06.16 |
[알고리즘] 합병정렬/병합정렬 (Merge Sort) Java Example (0) | 2019.06.16 |
[알고리즘] 이진탐색 (Binary Search) Java Example (0) | 2019.06.16 |