1. 삽입정렬
- 필요할때만 각 데이터를 적절한 위치에 삽입하는 정렬(앞에 있는 원소들이 이미 정렬되어있다고 가정)
- 두번째 원소부터 시작하여 그 앞의 원소들과 비교해 삽입할 위치를 지정한 후 원소를 뒤로 옮기로 지정된 자리에 자료를 삽입하는 정렬하는 알고리즘
2. 정렬방법
- 현재 타겟이 되는 숫자와 이전 위치에 있는 원소들을 비교.(첫번째 타켓은 두 번쨰 원소부터 시작)
- 타겟이 되는 숫자가 이전 위치에 있던 원소보다 작다면 위치를 서로 교환
- 그 다음 타겟을 찾아 위와 같은 방법으로 반복
3. 특징
장점
- 안정적 정렬방법
- 레코드 수가 적을 경우, 알고리즘 자체가 매우 간단해 다른 정렬보다 유리
- 대부분 레코드가 이미 정렬되어 있는 경우 효율적
- 버블 정렬이나 선택정렬에 비해 상대적으로 빠름
단점
- 비교적 많은 레코드들의 이동을 포함
- 레코드 수가 많고 레코드 크기가 클 경우 부적합
더보기
참고)
https://gmlwjd9405.github.io/2018/05/06/algorithm-insertion-sort.html
[알고리즘] 삽입 정렬(insertion sort)이란 - Heee's Development Blog
Step by step goes a long way.
gmlwjd9405.github.io
[알고리즘] #4. 삽입정렬 :: 개발일기🌷 (tistory.com)
[알고리즘] #4. 삽입정렬
1. 삽입정렬(Insertion Sort) 알고리즘 필요할 때만 각 데이터를 적절한 위치에 삽입하는 정렬(앞에 있는 원소들이 이미 정렬되어 있다고 가정) → 무조건 위치를 교환하는 버블 정렬, 선택 정렬에 비
beatitudo31.tistory.com
'CS지식 > 알고리즘' 카테고리의 다른 글
[CS지식 - 알고리즘] 탐욕 알고리즘 (0) | 2023.03.15 |
---|---|
[CS지식 - 알고리즘]퀵정렬 (0) | 2023.01.25 |
[CS 지식 - 알고리즘] 선택정렬 (0) | 2023.01.20 |
[CS 지식 - 알고리즘]버블정렬(거품정렬) (0) | 2023.01.20 |
[CS 지식 - 알고리즘] DFS와 BFS (0) | 2023.01.19 |