programmers) 문자열 내림차순으로 배치하기

Yeonn·2024년 8월 23일
0

coding test

목록 보기
11/13
post-thumbnail

🌿 문자열 내림차순으로 배치하기

🌱 문제 설명

문자열 s에 나타나는 문자를 큰것부터 작은 순으로 정렬해 새로운 문자열을 리턴하는 함수, solution을 완성해주세요.
s는 영문 대소문자로만 구성되어 있으며, 대문자는 소문자보다 작은 것으로 간주합니다.

🌱 제한 사항

  • str은 길이 1 이상인 문자열입니다.

🌱 입출력 예

sreturn
"Zbcdefg""gfedcbZ"

🌱 내 코드

const solution = (s) => {
  let upper = [];
  let lower = [];
  
  [...s].forEach(el => {
    el === el.toUpperCase() ? upper.push(el) : lower.push(el);
  })
  
  return lower.sort().reverse().join('') + upper.sort().reverse().join('')
};
  • 대소문자를 구분할 빈 배열 upperlower를 선언
  • spread 연산자로 s를 얕은 복사 후 삼항 연산자와 toUpperCase로 대문자와 소문자 구분하여 배열에 push
  • sort로 정렬 후 reverse로 뒤집어 큰 것이 앞으로 오도록 반전
  • lowerupper 각각 join('')하여 문자열로 만들고 둘을 하나의 문자열로 합쳐서 반환

🪴 toUpperCase() toLowerCase() reverse()



0개의 댓글