버블정렬(Bubble Sort)의 비교적 쉬운 알고리즘으로 기본 개념은 이웃한 데이터들을 서로 비교하여 차례로 정렬합니다.
[자바 소스코드]
public class BubbleSort {- int data[] = { 74, 45, 25, 90, 12, 65, 24, 40, 9, 80 }; // 원본값을 배열로 설정
- printArray original_data = new printArray(data);
- Bubble_Sort i = new Bubble_Sort(data);
- printArray sorted_data = new printArray(data);
- }
- }
- class printArray {
- public printArray(int arrayData[]){
- for(int i=0; i<arrayData.length; i++){
- }
- }
- }
- class Bubble_Sort {
- public Bubble_Sort (int[] arrayData) {
- int temp;
- for (int i=arrayData.length-1; i>0; i--) {
- printArray sorting_data = new printArray(arrayData);
- for (int j=0; j<i; j++) {
- if(arrayData[j] > arrayData[j+1] ) {
- temp = arrayData[j];
- arrayData[j] = arrayData[j+1];
- arrayData[j+1] = temp;
- }
- }
- }
- }
- }
[실행 결과]
- 정렬 이전 원 데이타 : 74 45 25 90 12 65 24 40 9 80
- ----------------------------------------------------
- 9번째 선택 정렬 중 데이타 : 74 45 25 90 12 65 24 40 9 80
- 8번째 선택 정렬 중 데이타 : 45 25 74 12 65 24 40 9 80 90
- 7번째 선택 정렬 중 데이타 : 25 45 12 65 24 40 9 74 80 90
- 6번째 선택 정렬 중 데이타 : 25 12 45 24 40 9 65 74 80 90
- 5번째 선택 정렬 중 데이타 : 12 25 24 40 9 45 65 74 80 90
- 4번째 선택 정렬 중 데이타 : 12 24 25 9 40 45 65 74 80 90
- 3번째 선택 정렬 중 데이타 : 12 24 9 25 40 45 65 74 80 90
- 2번째 선택 정렬 중 데이타 : 12 9 24 25 40 45 65 74 80 90
- 1번째 선택 정렬 중 데이타 : 9 12 24 25 40 45 65 74 80 90
- -----------------------------------------------------
- 선택 정렬 후 데이타 : 9 12 24 25 40 45 65 74 80 90
'재미있는 프로그래밍 > 알고리즘 소스 코드' 카테고리의 다른 글
삽입 정렬 - 오름차순 정렬 (0) | 2017.03.05 |
---|---|
선택 정렬 - 오름 차순 정렬 (0) | 2017.03.04 |