버블 정렬은 시간복잡도가 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 |