버블 정렬
이웃요소 끼리 교환하며 순회하는 방식을 버블 정렬이라고 한다.
장점
구현이 쉽다.
단점
n번동안 (n - 1)개를 제외해서 모든 인덱스를 순회하므로 n(n - 1)/2 의 경우의 수를 가진다. 이는 상당히 비효율적이다.
전체 코드
#include <iostream>
#define LENGTH 5
int main(void)
{
using std::cout;
int data[LENGTH] = { 5, 3, 2, 4, 1 };
int temp = 0;
for (int i = 0; i < LENGTH; i++)
{
for (int j = 0; j < (LENGTH - 1) - i; j++)
{
if (data[j] > data[j + 1]) // 오름차순
{
temp = data[j + 1];
data[j + 1] = data[j];
data[j] = temp;
}
if (data[j] < data[j + 1]) // 내림차순
{
temp = data[j + 1];
data[j + 1] = data[j];
data[j] = temp;
}
}
}
for (int i = 0; i < LENGTH; i++)
cout << data[i] << ' ';
return 0;
}
'과거 자료' 카테고리의 다른 글
[#10] Quick Sort : 퀵 정렬 (0) | 2022.08.16 |
---|---|
[#9] Insert Sort : 삽입 정렬 (0) | 2022.08.14 |
[#7] Disjoint Set (분리 집합) (0) | 2022.08.10 |
[#6] Expression Tree (수식 트리) (0) | 2022.08.07 |
[#5] Binary Search Tree (이진 탐색 트리) (0) | 2022.08.05 |