단순 교환법( 버블정렬 )이란?
인접한 데이터를 교환하는 처리를 반복하여 전체를 정렬한다.
# 처리과정이 마치 거품이 올라오는것 같이 보여서 버블 정렬이라 불린다함. 창의력 지립니다..
+ 알고리즘이 단순하여 구현하기가 쉽다.
- 처리량이 많아 실행속도가 느리다.
처리구조
1.오른쪽 끝부터 순서대로 앞에 공과 비교하여 오름차순으로 정렬
2. 왼쪽 끝 부터 확정된 최소값을 넣으며 배열크기만큼 확장
코드구현
int[] array = {5,3,4,1,2};
int w = 0;
int k = 0;
while( k < array.length -1 ){ // 전체 반복 구문
int i = 4; // 탐색은 항상 맨끝부터 시작하기에 변수를 초기화
while ( i > k ) {
if(array[i-1] > array[i] ){ //최솟값을 교환하는 처리
w = array[i];
array[i] = array[i-1];
array[i-1] = w;
}
i--;
}
k++;
}
for(int a=0; a < 5; a++){ // 출력구문
System.out.print(array[a]);
}
검품 정렬의 보다 정확한 개념이해가 필요하다면
https://ko.wikipedia.org/wiki/%EA%B1%B0%ED%92%88_%EC%A0%95%EB%A0%AC
위키백과의 언어별로 자세하게 설명하고있다
'Algorithm' 카테고리의 다른 글
에라토스테네스의 체 (소수를 찾는 방법) (0) | 2020.04.04 |
---|---|
퀵정렬 (0) | 2020.03.24 |
단순 삽입법 (삽입 정렬) (0) | 2020.03.23 |
단순 선택법 (선택 정렬) (0) | 2020.03.18 |