[프로그래머스] 문자열 정렬하기 (2)


문제 설명

영어 대소문자로 이루어진 문자열 my_string이 매개변수로 주어질 때, my_string을 모두 소문자로 바꾸고 알파벳 순서대로 정렬한 문자열을 return 하도록 solution 함수를 완성해보세요.


제한사항

  • 0 < my_string 길이 < 100

입출력 예

my_stringresult
“Bcad”“abcd”
“heLLo”“ehllo”
“Python”“hnopty”

입출력 예 설명

입출력 예 #1

  • “Bcad”를 모두 소문자로 바꾸면 “bcad”이고 이를 알파벳 순으로 정렬하면 “abcd”입니다.

입출력 예 #2

  • “heLLo”를 모두 소문자로 바꾸면 “hello”이고 이를 알파벳 순으로 정렬하면 “ehllo”입니다.

입출력 예 #3

  • “Python”를 모두 소문자로 바꾸면 “python”이고 이를 알파벳 순으로 정렬하면 “hnopty”입니다.

나의 풀이

function solution(my_string) {
  var answer = my_string.toLowerCase();
  var result = [...answer].sort().join("");
  return result;
}

나의 두번째 풀이(Code Refactoring)

function solution(my_string) {
  return [...my_string.toLowerCase()].sort().join("");
}

// my_string을 소문자 배치후 정렬

참고 할 만한 다른 사람의 코드

function solution(my_string) {
  return my_string
    .toLowerCase()
    .split("")
    .sort((a, b) => a.localeCompare(b))
    .join("");
}

// String.prototype.localeCompare() 메모
// 문자열이 정렬 순서에 따라 주어진 문자열보다 앞에 오는지, 뒤에 오는지, 동일한지 여부를 나타내는 숫자를 반환