본문 바로가기
알고리즘

버블정렬

by ho-bolt 2021. 10. 30.

옆에 있는 값과 비교해서 더 작은 값을 앞으로 보내는 것!

1회전 했을 때 가장 큰 값이 가장 뒤로 간다!

 

9번 라인에서 9-i를 해주는 이유는 1회전 할 때 10부터 3까지 다 비교를 하고 

그 다음 9까지 8까지 이렇게 끝에서부터 하나씩 줄기 때문이다. 

11번부터 13번 라인은 선택과 똑같이 서로의 위치를 교환해주는 알고리즘이다. 

 

버블정렬도 선택과 마찬가지로 

데이터 개수가 N개 일때 N * (N+1)/2이다 

따라서 O(N^2) 이다. 

 

그러나 빅오표기법은 똑같지만 버블정렬은 선택정렬보다 오래걸린다. 

그 이유는 11번에서 13번 라인을 계속 비교하기 때문에 수행시간이 선택정렬보다 더 걸린다. 

따라서 가장 비효율적인 알고리즘이라 할 수 있다.

728x90

'알고리즘' 카테고리의 다른 글

C++STL sort()함수  (0) 2021.11.02
병합 정렬(Merge Sort)  (0) 2021.11.01
퀵 정렬  (0) 2021.10.30
삽입정렬  (0) 2021.10.30
선택정렬  (0) 2021.10.29

댓글