javascript_algorithm / 정렬 알고리즘 / 3.4 Insertion Sort
3.4Insertion Sort
Insertion Sort 알고리즘의 원리와 자바스크립트 구현
추억의 쪽지 시험
Insertion Sort
Insertion Sort는 배열의 한쪽에 정렬된 부분을 만들고, 그 부분을 늘려가며 정렬하는 방식의 정렬 알고리즘이다. 원리는 아래와 같다:
- 배열의 첫 두개 요소를 뽑는다.
- 두 요소를 비교해서 정렬한다.
- 다음 요소를 찾아, 앞의 정렬된 부분과 비교해 올바른 위치에 삽입한다.
- 끝까지 반복한다.
자바스크립트로는 아래와 같이 구현할 수 있다. 아래는 배열의 오른쪽에서부터 왼쪽으로 정렬한 예시다:
javascriptfunction insertionSort(arr){ for(let i = 1; i < arr.length; i++){ let currentVal = arr[i]; for(let j = i - 1; j >= 0 && arr[j] > currentVal; j--){ arr[j + 1] = arr[j]; } arr[j + 1] = currentVal; } return arr; }