Notice
Recent Posts
Recent Comments
Link
개발 무지렁이
[코테 알고리즘] 선택(Select) 정렬 본문
선택(Select) 정렬
🕑 시간복잡도: O(N^2)
[ 비교연산횟수: N + N-1 + N-2 + ... + 1 = (N+1)N/2번 ]
[ 비교연산횟수: N + N-1 + N-2 + ... + 1 = (N+1)N/2번 ]
선택(Select) 정렬 코드 구현
<백준 알고리즘, 1427번>
import java.util.*;
class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String str = scanner.next();
int[] A = new int[str.length()];
for(int i = 0; i < str.length(); i++) {
A[i] = Integer.parseInt(str.substring(i, i+1));
}
for(int i = 0; i < str.length(); i++) {
int maxIdx = i;
for(int j = i+1; j < str.length(); j++) {
if(A[j] > A[maxIdx]) {
maxIdx = j;
}
}
int temp = A[i];
A[i] = A[maxIdx];
A[maxIdx] = temp;
}
for(int i = 0; i < str.length(); i++) {
System.out.print(A[i]);
}
}
}
'코딩 테스트' 카테고리의 다른 글
[코테 알고리즘] 병합(Merge) 정렬 (2) | 2022.12.15 |
---|---|
[코테 알고리즘] 퀵(Quick) 정렬 (0) | 2022.12.14 |
[코테 알고리즘] 삽입 (Insert) 정렬 (0) | 2022.12.14 |
[코테 알고리즘] 객체비교에 사용되는 인터페이스 Comparable (0) | 2022.12.14 |
[코테 알고리즘] 다익스트라 (Dijkstra) 알고리즘 (0) | 2022.12.14 |
Comments