해당 포스트는 이지스퍼블리싱, 『알고리즘 코딩테스트 자바 편』, Gene 김종관 을 참고하여 작성하였습니다.
삽입 정렬(insertion sort)은 이미 정렬된 데이터 범위에 정렬되지 않은 데이터를 적절한 위치에 삽입시켜 정렬하는 방식입니다. 평균 시간 복잡도는 O(n²)으로 느린 편이지만 구현하기가 쉽습니다.
선택 데이터를 현재 정렬된 데이터 범위 내에서 적절한 위치에 삽입하는 것이 삽입 정렬의 핵심입니다.
적절한 삽입 위치를 탐색하는 부분에서 이진 탐색(binary serch)등과 같은 탐색 알고리즘을 사용하면 시간 복잡도를 줄일 수 있습니다.
[참고 자료] https://hanhyx.tistory.com/38