728x90
public class Insertion_Sort {
public static void insertion_sort(int[] a) {
insertion_sort(a, a.length);
}
private static void insertion_sort(int[] a, int size) {
for(int i = 1; i < size; i++) {
int target = a[i];
int j = i - 1;
while(j >= 0 && target < a[j]) {
a[j + 1] = a[j];
j--;
}
a[j + 1] = target;
}
}
}
삽입정렬은 시간복잡도가 최선일 때 O(n) 최악일 때 O(n^2)을 가지는 알고리즘이다.

본인 생각을 풀어서 정리한 노트를 첨부하겠으니 참고해도 좋다.

728x90
'알고리즘' 카테고리의 다른 글
[Java] 정렬 알고리즘 - 버블정렬(Bubble Sort) (0) | 2023.02.02 |
---|---|
[Java] 정렬 알고리즘 - 선택정렬(Selection Sort) (0) | 2023.01.27 |