728x90
반응형
삽입 정렬(Insertion Sort)
아직 정렬되어 있지 않은 임의의 데이터를 이미 정렬된 부분의 적절한 위치에 삽입해 가며 정렬하는 방식이다.
삽입 정렬을 반복할 때마다 하나의 입력 요소가 제거되고, 정렬된 list내에서 해당 요소가 속한 위치가 검색되어 삽입된다. ( 입력 요소가 없을 때까지 반복)
class InsertionSort: AbstractSortStrategy() {
override fun <T : Comparable<T>> perform(arr: Array<T>) {
for (i in 1 until arr.size) {
for (j in i downTo 1) {
if (arr[j - 1] < arr[j]) break
arr.exch(j, j - 1)
}
}
}
}
참고
728x90
반응형
'Kotlin > Kotlin Algorithm' 카테고리의 다른 글
[백준] 11659. 구간 합 구하기4 ( Kotlin, Java ) (0) | 2023.02.23 |
---|---|
[백준] 1546. 평균 ( Kotlin, Java ) (0) | 2023.02.22 |
[백준] 11720. 숫자의 합 구하기 ( Kotlin, Java ) (0) | 2023.02.21 |
[백준 Koltin] 2단계. 조건문 (0) | 2022.03.09 |
[백준 Kotlin] 1단계. 입출력과 사칙연산 (0) | 2022.03.04 |