티스토리 뷰
삽입정렬이란?
삽입 정렬(揷入整列, insertion sort)은 자료 배열의 모든 요소를 앞에서부터 차례대로 이미 정렬된 배열 부분과 비교하여, 자신의 위치를 찾아 삽입함으로써 정렬을 완성하는 알고리즘이다.
한마디로 배열의 1번째부터 마지막까지 반복문을 사용하여 Key로 선택해서 앞 배열들과 비교 후 자리를 바꿔주는 정렬이다.
그럼 자바로 구현해 보겠다.
항상 티스토리에서 직접 코드를 작성하기 때문에 오타는 있을 수 있다.
public static void main(String[] args) {
int[] arr = {6,12,3,2,1,3,99,323,3821,129,1};
insertionSort(arr);
System.out.println("arr : " + Arrays.toString(arr));
}
public static void insertionSort(int[] arr) {
for(int i=1; i<arr.length; i++) {
int j = i-1;
while( j>-1 && arr[j] > arr[j+1]) {
int temp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = temp;
j--;
}
}
}
내림차순 정렬을 하려면?? 눈치 채셨겠지만 while의 부호만 바꿔주면 된다.
'알고리즘' 카테고리의 다른 글
퀵소트 ( QuickSort) Java로 구현하기 (0) | 2018.03.17 |
---|---|
합병정렬 ( MergeSort) Java로 구현하기 (0) | 2018.03.17 |
버블 소트 ( BubbleSort ) Java 로 구현하기. (0) | 2018.03.17 |
이진 탐색 (binarySearch) Java로 구현하기 (0) | 2018.03.17 |
팩토리얼 자바로 구현하기 (0) | 2018.03.17 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- Mergesort
- jquery
- Spring메일
- 페이징
- 팩토리얼
- SQL
- 선택정렬
- InsertionSort
- 전화번호
- 삽입정렬
- selectionSort
- 이진탐색
- iBATIS
- 합병정렬
- spring
- Java
- Cookie
- dbconnection
- binarysearch
- sockjs
- Algorithm
- 스프링
- Quicksort
- websocket
- 퀵정렬
- BubbleSort
- 버블정렬
- 태그를 입력해 주세요.
- 알고리즘
- mysql
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
글 보관함