Rei’s Tech diary

[정렬] 버블 정렬 : Bubble Sort 본문

프로그래밍/Algorithm

[정렬] 버블 정렬 : Bubble Sort

Reiger 2025. 1. 9. 15:34

 

📌 버블 정렬 : Bubble Sort

✅인접한 두 요소를 비교하여 정렬

✅시간복잡도 : O(\(n^2\))

📢 효율성이 가장 낮기 때문에 대규모 데이터에서는 사용하지 않는다.

import java.util.Arrays;

public class BubbleSort {
    public static void main(String[] args) {
        int[] arr = {1, 10, 5, 8, 7, 6, 4, 3, 2, 9};
        bubbleSort(arr);
        System.out.println("결과 : " + Arrays.toString(arr));
    }

    public static void bubbleSort(int[] arr){
        int n = arr.length;

        for(int i = 0; i < n - 1; i++){

            //인접한 두 요소 비교
            for(int j = 0; j < n - i - 1; j++){
                if(arr[j] > arr[j + 1]){
                    //교환
                    int temp = arr[j];
                    arr[j] = arr[j + 1];
                    arr[j + 1] = temp;
                }
            }
        }
    }
}

 

 


버블정렬 과정

 

 반복문이 끝나고나면, 차례대로 가장 큰 수가 배열의 맨 끝으로 이동한다.