728x90
(풀기 전에 알아야 할 것)
1. localCompare() : 문자열 순서비교
👌 인덱스 1의 문자가 같은 문자열이 여럿일 경우, 사전순으로 앞선 문자열이 앞쪽에 위치한다.
먼저, strings를 정렬해주어야 하는데
strings.sort((a,b) =>
👌 여기서 같은 문자열일 경우 // a랑 b의 사전순으로 앞선 문자열이면 a,b 자체를 비교하면 되므로
strings.sort((a,b) => a[n] === b[n] ? a.localeCompare(b)
👌 아닐경우, n의 자리의 숫자와 비교해야 한다.
strings.sort((a,b) => a[n] === b[n] ? a.localeCompare(b) : a[n].localeCompare(b[n])
✅ 최종 코드
function solution(strings, n) { return strings.sort((a,b) => a[n] === b[n] ? a.localeCompare(b) : a[n].localeCompare(b[n])) } |
728x90
'알고리즘 스터디 > [프로그래머스] 월간 코드 챌린지 시즌1' 카테고리의 다른 글
[알고리즘] 소수 만들기 문제풀이(자바스크립트 javascript) (0) | 2022.07.21 |
---|---|
[알고리즘] 문자열 내림차순으로 배치하기 문제풀이(자바스크립트 javascript) (0) | 2022.07.21 |
[알고리즘] 모의고사 문제풀이(자바스크립트 javascript) (0) | 2022.07.20 |
[알고리즘] 로또의 최고 순위와 최저 순위 문제풀이(자바스크립트 javascript) (0) | 2022.07.20 |
[알고리즘] 두 개 뽑아서 더하기 문제풀이(자바스크립트 javascript) (0) | 2022.07.20 |