버블 정렬이란?
인접한 두 원소를 비교하며, 큰 수를 계속하여 뒤로 보내 정렬하는 방식.
간단히 구현할 순 있지만, 시간복잡도는 O(n^2)로 다른 정렬 알고리즘보다 속도가 느린 편이다.
자바 구현
public class bubbleSort {
public static void main(String[] args) throws IOException {
Scanner sc = new Scanner(System.in);
int[] arr = new int[5];
for(int i=0; i<arr.length; i++){
arr[i] = sc.nextInt();
}
for(int i=0;i<arr.length;i++) {
for (int j = 0; j < arr.length-i-1; j++) {
if (arr[j] > arr[j + 1]) {
swap(arr, j, j + 1);
}
}
}
System.out.println("Bubble Sort : " + Arrays.toString(arr));
}
public static void swap(int[] arr, int i, int j){
int temp = arr[i];
arr[i] = arr[j];
arr[j] = temp;
}
}
[ 알고리즘 ] 이분=이진 탐색 ( Binary Search ) (0) | 2024.04.08 |
---|---|
[ 알고리즘 ] 너비 우선 탐색 (BFS) (0) | 2024.04.08 |
[ 알고리즘 ] 깊이 우선 탐색 (DFS) (0) | 2024.03.20 |
[ 알고리즘 ] 퀵 정렬 (Quick Sort) (1) | 2024.03.18 |
[ 알고리즘 ] 투 포인터 (Two Pointer) (0) | 2024.03.10 |