버블 정렬이란 인접한 두 개의 데이터를 비교해가면서 정렬을 진행하는 방식이다.
예를 들어 3, 2, 4, 1 이 순서대로 저장되어 있을 때 다음 배열을 오름차순으로 정렬하는 과정을 그림으로 나타내었다.
다음 그림처럼 맨 앞에서부터 맨 끝까지 정렬의 과정이 진행되었다고 해서 정렬이 완료되는 것이 아니라
다시 숫자를 비교하여 정렬을 완료될 때까지 과정을 반복해야 한다.
▼버블 정렬 코드
import java.io.*;
import java.util.*;
public class Main {
public static void BubbleSort(int arr[], int n)
{
int temp;
for(int i=0;i<n-1;i++)
{
for(int j=0;j<n-1;j++)
{
if(arr[j]>arr[j+1])
{
temp = arr[j];
arr[j]=arr[j+1];
arr[j+1]=temp;
}
}
}
}
public static void main(String[] args){
int arr[] = {3, 2, 4, 1};
BubbleSort(arr,4);
for(int i=0;i<arr.length;i++)
System.out.print(arr[i]+" ");
}
}
결과
1 2 3 4
'CS > 자료구조' 카테고리의 다른 글
자료구조 - 삽입 정렬 (1) | 2024.01.23 |
---|---|
자료구조 - 선택 정렬 (1) | 2024.01.23 |
자료구조 - 우선순위 큐 (0) | 2024.01.22 |
자료구조 - 트리 순회(전위/중위/후위) (0) | 2024.01.22 |
자료구조 - 트리 (0) | 2024.01.18 |