정렬 알고리즘이란 n개의 숫자를 기준에 맞게 정렬하는 알고리즘을 말한다
대표적인 정렬 6가지의 원리, 구현, 시간복잡도 등을 알아보도록 하겠다
버블정렬(Bubble Sort)
원리
- 매번 연속된 두개의 인덱스의 값을 비교하여, 오름차순의 경우 큰 값을 뒤로 넘긴다
특징
- 추가적인 공간이 필요하지 않은 제자리 정렬이다
- 중복된 값이 입력순서와 동일하게 유지되는 안정정렬이다
- 장점 : 제자리 정렬이라 추가적인 메모리 소모 X, 안정 정렬이다, 구현이 쉽다
- 단점 : 비효율적이다
시간복잡도, 공간복잡도
- 시간복잡도 : Best Case, Worst Case, Average Case ⇒ O(n^2)
- 공간복잡도 : O(1)
구현
