삽입 정렬 (Insertion Sort) 자료의 모든 요소를 이미 정렬된 부분과 비교하여, 자신의 위치를 찾아 삽입하는 방식의 정렬이다. 두 번째 자료부터 시작하여, 그 앞의 자료와 비교하여 삽입할 위치를 지정한 후, 삽입 위치 이후의 자료는 하나씩 뒤로 옮기고, 삽입 위치에 자료를 삽입하여 정렬한다. 아래의 그립으로 쉽게 이해할 수 있다. 계산 복잡도는 선택 정렬과 동일하게 $$ \mbox{O}(n^2) $$ 코드 코드로 표현하면 아래 함수와 같다. def insertion_sort(list): for i in range(1, len(list)): for j in range(0, i): if list[i] > list[j]: list.insert(j, list.pop(i)) return list 참고 ..