0번째 index는 정렬됨으로 간주한다.
j+1에 temp
를 넣고 현재 반복을 종료한다.j+1에 temp
를 넣는다.코드중복 : 4, 5 ==>
j+1에 temp
에 저장
해결 : 반복이 끝나고 실행한다. j가 스코프 밖에 존재하기 때문에 미리 선언한다.
function solution(arr) {
let answer = arr;
for (let i = 1; i < arr.length; i++) {
let temp = arr[i];
let j;
for (j = i - 1; j >= 0; j--) {
if (arr[j] > temp) arr[j + 1] = arr[j];
else break;
}
arr[j + 1] = temp;
}
return answer;
}
console.log(solution([11, 7, 5, 6, 10, 9]));