[알고리즘] 버블정렬
2021. 10. 12. 21:44ㆍ알고리즘/개념 정리
728x90
다음과 같은 5개의 데이터를 버블정렬로 정렬할 때의 순서입니다.
선택정렬의 경우
(1)번지의 값을 기준으로 두고 (2)번지, (3)번지.....순으로
즉
(1)→(2)
(1)→(3)
(1)→(4)
(1)→(5)
순으로 비교했지만
버블정렬의 경우
인접한 다음 번지의 값을 비교합니다.
(1)→(2)
(2)→(3)
(3)→(4)
(4)→(5)
를 비교해 정렬하는 형태입니다.
그렇기 때문에 1회전 시
순으로 진행되다 종료됩니다.
결국 1회전이 끝나면 마지막 번지에 제일 큰 값이 들어갑니다.
각 회전 마다 비교대상은 이렇습니다.
반복값을 표현하면
i = 1, 4, 1
j = 1, 5-i, 1
이 됩니다.
위와 같은 경우는 5개의 데이터로 한정된 경우지만
그렇지 않고 n값으로 설정됐을 때는 결국
i = 1, n-1, 1
j = 1, n-i, 1
이 됩니다.
순서도로 나타내면 이러한 형태입니다.
'알고리즘 > 개념 정리' 카테고리의 다른 글
[알고리즘] 선택정렬 (0) | 2021.10.12 |
---|---|
[알고리즘] 최대공약수, 최소공배수, 유클리드 호제법 (0) | 2021.10.04 |
[알고리즘] 약수, 완전수, 부족수, 과잉수 (0) | 2021.10.01 |
[알고리즘] 이진 검색(Binary Search) (0) | 2021.09.30 |
[알고리즘] 대각선 채우기 (0) | 2021.09.29 |