선택은 나의 것

[Algorithm] 버블 정렬(Bubble Sort) C++ 코드 본문

☽ Computer Science/Algorithm

[Algorithm] 버블 정렬(Bubble Sort) C++ 코드

Algoribi 2020. 8. 5. 14:33

버블 정렬(Bubble Sort)

비교 방식 알고리즘(Comparisons Sorting Algorithm)

버블 정렬은 인접한 두 개의 데이터를 비교하며 가장 큰 값을 배열의 맨 끝으로 이동시키면서 정렬하는 방식이다. 따라서 정렬하고자 하는 원소의 개수(N)만큼을 두 번 반복함으로 시간 복잡도O(n^2)이다.

#include <iostream>
#include <vector>

using namespace std;

int main() {
    // ex
    vector<int> arr = {9, 2, 7, 3, 1};
    //버블 정렬
    for (int i = 0; i < arr.size(); i++) {
        for (int j = 0; j < arr.size() - 1 - i; j++) {
            if (arr[j] > arr[j + 1]) {
                int temp = arr[j];
                arr[j] = arr[j + 1];
                arr[j + 1] = temp;
            }
        }
    }
    // 출력
    for (int i = 0; i < arr.size(); i++) {
        cout << arr[i] << " ";
    }
    return 0;
}

 

정렬과 관련해 다른 알고리즘을 배우고 싶다면 정렬 알고리즘(Sorting Algorithm) 포스트를 참고하길 바란다.

 

 

Comments