본문 바로가기
카테고리 없음

버블 정렬

by zhsus 2023. 3. 18.
반응형

🤔 버블 정렬이란?

  • 버블 정렬은 두 인접한 데이터의 크기를 정렬하는 방법이다.
  • 시간 복잡도는 O(n^2)으로 속도가 느린 편이다.

👉 버블 정렬 수행 방식

✔️ 버블 정렬 과정

  1. 정렬이 필요한 루프 범위를 설정한다.
  2. 인접한 데이터끼리 비교한다.
  3. swap할 조건에 맞다면, swap을 수행한다.
  4. 루프 범위가 끝날 때까지, 2, 3번을 반복 수행한다.
  5. 파란색 영역은 정렬이 끝났기 때문에, 다음 루프에서는 영역을 제외한다.
  6. 비교할 대상이 없을 때까지 위의 순서를 반복한다.

🏷️ 만약, 루프 범위에서 swap이 한번도 일어나지 않았다면, 해당 범위는 이미 정렬이 끝났다는 의미이므로, 루프를 종료해도 된다.

👨‍💻 연습 문제

 

백준 - 버블 소트 (Python 풀이)

https://www.acmicpc.net/problem/1377 1377번: 버블 소트 첫째 줄에 N이 주어진다. N은 500,000보다 작거나 같은 자연수이다. 둘째 줄부터 N개의 줄에 A[1]부터 A[N]까지 하나씩 주어진다. A에 들어있는 수는 1,000,0

zhsusegg.tistory.com

 

반응형