Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 해시맵
- Garbage Collecter
- 백준
- 배열
- 백준 알고리즘
- 알고리즘
- arraylist
- 단어의개수
- 단계별로
- 차이
- 별찍기
- 메모리영역
- 백준알고리즘
- 어레이리스트
- 자바
- 링크드해시맵
- 해시테이블
- java
- 자바 메모리 영역
- 풀어보기
- class area
- array
- 1152
- hashmpa
- 또뭐테그해야하냐
- Stack
- boj
- 정렬
- 데큐
- list
Archives
- Today
- Total
장벚꽃박튤립
삽입정렬 Insertion Sort JAVA 본문
Insertion Sort
- 정렬되어야 하는 원소의 인덱스가 K라 하면, K-1번째까지의 정렬된 배열에 K번째 인덱스가 있어야 할 위치에 적절히 삽입하여 정렬하는 방법.
- 시간복잡도 최선(이미 정렬되어 있을 경우)은 O(N) , 최악은 O(N^2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
public class InsertionSort implements Sort {
@Override
public void sort(int[] arr) {
int temp;
for(int i = 1; i < arr.length; i++) {
for(int j = i; j > 0; j--) {
if(arr[j-1] > arr[j]) {
temp = arr[j];
arr[j] = arr[j-1];
arr[j-1] = temp;
} else
break;
}
}
}
}
|
* i번째 인덱스부터 반대로 버블정렬 한다는 느낌
* i번째까지는 정렬되어 있으므로 스왑하지 않아도 된다면 바로 break로 나가버리기.
'IT일반 > 알고리즘' 카테고리의 다른 글
버블정렬 Bubble Sort JAVA (0) | 2019.06.19 |
---|---|
선택정렬 Selection Sort Java (0) | 2019.06.19 |
합병, 힙 vs 퀵 정렬(Quick sort) (0) | 2018.12.20 |