버블정렬

배지원·2022년 10월 13일
0

알고리즘

목록 보기
1/16

1. 분석

  • 서로 인접한 두 원소를 검사하여 정렬하는 알고리즘
  • 인접한 2개의 레코드를 비교하여 크기가 순서대로 되어 있지 않으면 서로 교환한다.

2. 기능

  • 앞에서부터 n번 원소와 n+1번 원소를 비교한다.

  • n번 원소가 n+1번 원소보다 크면 원소를 교환한다.

  • 다음 원소로 이동하여 해당 원소와 그 다음원소를 비교한다.

3. 구현

public class BubbleSort {

        public int[] sort(int[] arr){
            for(int i=1; i<arr.length; i++) {
                for (int j = 0 ; j < arr.length-i; j++) {
                    if (arr[j] > arr[j+1]) {
                        int temp = arr[j];
                        arr[j] = arr[j+1];
                        arr[j+1] = temp;
                    }
                    System.out.println(Arrays.toString(arr));
                }
            }
            return arr;
        }

        public static void main(String[] args) {
            int[] arr = {7,2,3,9,28,11};
            BubbleSort b = new BubbleSort();
            int[] result = b.sort(arr);

            System.out.println(Arrays.toString(result));
        }
}   
--- 결과 ---
입력값 : [7, 2, 3, 9, 28, 11]
결과값 : [2, 3, 7, 9, 11, 28]

※ 참고자료 : https://en.wikipedia.org/wiki/Bubble_sort

profile
Web Developer

0개의 댓글