CS
삽입정렬
YunH2
2023. 7. 5. 02:00
삽입정렬 (Insertion Sort)
- 2번째 원소부터 시작해서 그 앞의 원소들과 값을 비교해 위치를 정한 뒤, 중간에 있는 원소들을 모두 뒤로 한칸씩 이동시킨 후 삽입하는 알고리즘
시간복잡도
- 최선의 경우 : O(N) - 모두 정렬이 되어 있을 경우 한번씩만 비교한다
- 평균, 최악의 경우 : O(N^2)
장점
- 정렬이 어느정도 되어 있는 경우일수록 효율적이다
- 별도의 메모리 공간이 필요없다 (제자리 정렬)
- 안정 정렬이다
단점
- 배열이 길어질수록 비효율적이다
선택 정렬과의 차이
- 선택 정렬은 선택 원소 뒤의 값을 무조건 모두 비교하지만, 삽입정렬은 필요한 만큼만 비교를 하기 때문에 더 효율적이다.
참고 - Gyoogle