# 삽입 정렬
## 목차
---
1. 무엇?
2. 특징?
3. 알고리즘
## 1. 무엇?
---
기초 제자리 알고리즘의 하나. 아래와 같은 흐름
1. 정렬된 리스트와 비정렬 리스트로 나눔.
2. 비정렬 리스트 요소 하나를 정렬된 리스트에 넣는다.
3. 이를 반복한다.
## 2. 특징?
---
- 구현 간단
- 추가 메모리 필요 X
- 기초 정렬 중 빠름, 복잡도 O(n^2)
- 안정 정렬(같은 값의 원소 순서 유지 O)
## 3. 알고리즘
---

### 소스코드
```
void insertionSort(int[] arr)
{
for(int index = 1 ; index < arr.length ; index++){
int temp = arr[index];
int aux = index - 1;
while( (aux >= 0) && ( arr[aux] > temp ) ) {
arr[aux+1] = arr[aux];
aux--;
}
arr[aux + 1] = temp;
}
}
```