첫 item부터 마지막 item까지
앞서 정렬된 array에 순서에 맞게 insertion(삽입)하는 방식이다
최종적으로 모든 array가 정렬될때까지 item을 insertion한다
[1,2,3,5,9,6,7]
같은 거의 정렬 되어있지만
한가지 정렬 안된 item을 가진 array의 경우
insertion sort 를 활용하기에 유리하다
또한 길이가 실시간으로 변하는 data set의 경우도 유리하다
function insertionSort(arr) {
for (let i = 1; i < arr.length; i++) {
let currentValue = arr[i]
for (var j = i - 1; j >= 0; j--) {
if (arr[j] > currentValue) {
arr[j + 1] = arr[j]
} else {
break
}
}
arr[j + 1] = currentValue
}
return arr
}