문제
N개이 숫자가 입력되면 오름차순으로 정렬하여 출력
풀이
function solution(arr) {
let answer = arr;
let min, tmp, index;
for (let i = 0; i < answer.length; i++) {
min = Number.MAX_SAFE_INTEGER;
for (let j = i; j < answer.length; j++) {
if (min > answer[j]) {
min = answer[j];
index = j;
}
}
tmp = answer[i];
answer[index] = answer[i];
answer[i] = min;
}
return answer;
}
let arr = [13, 5, 11, 7, 23, 15];
console.log(solution(arr));
순서대로 탐색해서 가장 작은 것을 선택해서 제일 앞으로 보냈다.
tmp = answer[i];
answer[index] = answer[i];
answer[i] = min;
위 코드를 다음과 같이 최신 js문법으로 한줄로 작성할 수 있다.
[answer[i], answer[index]] = [min, answer[i]];
'코딩테스트 문제풀이 > inflearn' 카테고리의 다른 글
[인프런] Node.js / 섹션7-정렬과 그리디, 결정알고리즘 / 3. Special Sort(구글 인터뷰) (0) | 2023.02.15 |
---|---|
[인프런] Node.js / 섹션7-정렬과 그리디, 결정알고리즘 / 2. 버블정렬 (0) | 2023.02.15 |
[인프런] Node.js / 섹션6-자료구조(큐) / 7. 교육과정 설계 (0) | 2023.02.10 |
[인프런] Node.js / 섹션6-자료구조(큐) / 6. 공주 구하기 (0) | 2023.02.10 |
[인프런] Node.js / 섹션6-자료구조(스택) / 5. 쇠막대기 (0) | 2023.02.10 |