728x90

버블 정렬은 시간복잡도가 n의 제곱으로 늘어나기 때문에 시간이 굉장히 오래 걸린다.
정렬에 걸리는 시간은 오래 걸리지만 알고리즘이 단순하기 때문에 자주 사용된다.




class BubbleSort {
    public static void main(String[] args) {
        int[] data = {25,3,21,64,65,78,9,5,76,34,8,32,76};
        // bubble sort
        int n = data.length;
        for(int i = n-1; i>0; i--){
            for(int j=0; j < i; j++){
                if(data[j] > data[j+1]){ // 첫번째 수가 더 크면 데이터를 서로 교체하라.
                    int tmp = data[j]; // 첫번째 수를 임시 저장
                    data[j] = data[j+1];
                    data[j+1] = tmp;
                }
            }
        }

        System.out.print("\n\n====== Sorted Data =========\n");
        for(int k=0; k<n;k++)
            System.out.print(data[k] + ", ");

    }
}


문자열 버블 정렬

static void bubbleSort(){
    for(int i = n-1; i>0; i++){
        for(int j=0; j<i; j++){
            if(name[j].compareTo(name[j+1]) > 0){
                Strimg tmp = name[j];
                name[j] = name[j+1];
                name[j+1] = tmp;
            }
        }
    }
}


'안드로이드 > Java 문법' 카테고리의 다른 글

자바 클래스 개념 이해 예제  (0) 2019.05.27
자바 Arraylist  (0) 2019.05.26
java Singleton Design Pattern  (0) 2018.09.24
[Java] instanceof 연산자  (0) 2017.10.24
Java static 변수 이해하기  (0) 2017.10.20
블로그 이미지

Link2Me

,