문제 설명

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

제한 조건

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

입출력 예

areturn
"Zbcdefg""gfedcbZ"

💡문제 해결💡

문자열을 char 배열로 만들고 정렬, stringbuilder로 한글자씩 붙여주고 반대로 문자열로 만들어줌

작성 코드

import java.util.Arrays;
class Solution {
    public String solution(String s) {
        String answer = "";
        char[] chars = s.toCharArray();
        Arrays.sort(chars);
        
        StringBuilder sb = new StringBuilder();
        for(char c: chars){
            sb.append(c);
        }
        answer = sb.reverse().toString();
        return answer;
    }
}

그 외 풀이

stringbuilder에 new String(char 배열) 넣어줌

public String reverseStr(String str){
    char[] sol = str.toCharArray();
    Arrays.sort(sol);
    return new StringBuilder(new String(sol)).reverse().toString();
    }
profile
안녕하세요. Chat JooPT입니다.

0개의 댓글