문제 설명
문자열 s에 나타나는 문자를 큰것부터 작은 순으로 정렬해 새로운 문자열을 리턴하는 함수, solution을 완성해주세요.
s는 영문 대소문자로만 구성되어 있으며, 대문자는 소문자보다 작은 것으로 간주합니다.
제한사항
str은 길이 1 이상인 문자열입니다.
function solution(s) {
const strArr = s.split("")
let ascArr = []
let small = []
let big = []
strArr.forEach(str => {
ascArr.push(str.charCodeAt(0))
})
ascArr.forEach(str => {
if (str > 90) {
small.push(String.fromCharCode(str))
} else {
big.push(String.fromCharCode(str))
}
})
small = small.sort().reverse().join("")
big = big.sort().reverse().join("")
const result = (small + big)
console.log(result)
return result
}
function solution(s) {
const result = s.split("").sort().reverse().join("")
return result
}
function solution(s) {
return s.split('').sort((a, b) => {
if (a > b) return -1;
if (b > a) return 1;
return 0;
}).join('');
}
🐷
나의 풀이에서 위에 있는 방법으로 코드를 짠 후 훨씬 짧게 할 수 있을 것 같아 아래 방법으로 고쳐보았다.
완전 다른 코드같이 생겼는데 같은 코드이다.