: 이웃한 두 수끼리 계속 비교하면서 정렬
💥 j=0 ~ 5 💥
13 | 23 | 11 | 7 | 5 | 15 |
a[j] > a[j+1] 뒤의 숫자가 작다면? swap
=> 발견될 때마다 교환이 필요하기 때문에 시간복잡도가 높다!
13 | 11 | 23 | 7 | 5 | 15 |
13 | 11 | 7 | 23 | 5 | 15 |
13 | 11 | 7 | 5 | 23 | 15 |
13 | 11 | 7 | 5 | 15 | 23 |
💥 j=0 ~ 4 💥
13 | 11 | 7 | 5 | 15 | 23 |
11 | 13 | 7 | 5 | 15 | 23 |
11 | 7 | 13 | 5 | 15 | 23 |
11 | 7 | 5 | 13 | 15 | 23 |
💥 j=0 ~ 3 💥
11 | 7 | 5 | 13 | 15 | 23 |
... 똑같이 반복
for(i=0; i<n-1; i++){
for (j=0; j<n-i-1; j++)
//0~5까지-> 0~4까지 -> ... 이렇게 for문이 돌려면
//n-1에서 i를 빼준 범위만 돌면 된다!
**참고자료
https://gmlwjd9405.github.io/2018/05/06/algorithm-bubble-sort.html
[알고리즘] 버블 정렬(bubble sort)이란 - Heee's Development Blog
Step by step goes a long way.
gmlwjd9405.github.io
'스터디 > 알고리즘' 카테고리의 다른 글
[알고리즘][C++] 삽입정렬 (0) | 2022.07.29 |
---|---|
[알고리즘][C++] Special Sort (0) | 2022.07.29 |
[알고리즘][C++] 선택정렬 (0) | 2022.07.26 |
[알고리즘][C++] 3의 개수 (시간제한) 🌟 (0) | 2022.07.25 |
[알고리즘][C++] N!에서 0의 개수 (0) | 2022.07.22 |