Notice
Recent Posts
Recent Comments
Link
개발 무지렁이
[코테 알고리즘] 버블(Bubble) 정렬 본문
버블(Bubble) 정렬
(한번 돌면 가장 큰값이 가장 뒤로 오게 된다, 뒤부터 정렬)
🕑 시간복잡도: O(N^2)
[비교연산 횟수: N-1 + N-2 + N-3 + ... + 1 = (N^2)/2번]
[비교연산 횟수: N-1 + N-2 + N-3 + ... + 1 = (N^2)/2번]
버블(Bubble) 정렬 코드 구현
1. 루프loop를 돌면서 이웃한 값 간의 swap연산으로 정렬한다.
<백준 알고리즘, 2750번>
🎯 N이 1000보다 작음으로 시간복잡도가 O(N^2)인 알고리즘을 써도 풀 수 있다.
(1억번의 연산 = 1초)
(1억번의 연산 = 1초)
import java.util.*;
class Main {
public static void main(String[] args) {
Scanner scannner = new Scanner(System.in);
int N = scanner.nextInt();
int A[] = new int[N];
for(int i = 0; i < N; i++) {
A[i] = scanner.nextInt();
}
for(int i = 0; i < N-1; i++) {
for(int j = 0; j < N-1-i; j++) {
if(A[j+1] < A[j]) {
int temp = A[j];
A[j] = A[j+1];
A[j+1] = temp;
}
}
}
for(int i = 0; i < N; i++) {
System.out.println(A[i]);
}
}
}
'코딩 테스트' 카테고리의 다른 글
[코테 알고리즘] 객체비교에 사용되는 인터페이스 Comparable (0) | 2022.12.14 |
---|---|
[코테 알고리즘] 다익스트라 (Dijkstra) 알고리즘 (0) | 2022.12.14 |
[코테 알고리즘] 그리디(Greedy) 알고리즘 (0) | 2022.12.13 |
[코테 알고리즘] 큐(Queue)의 구현과 메서드 (0) | 2022.12.13 |
[코테 알고리즘] BFS (Breadth First Search) (0) | 2022.12.13 |
Comments