알고리즘, 코딩테스트/알고리즘 풀이

[프로그래머스/ 코딩테스트 연습문제] 문자열 내림차순으로 배치하기

jiyoon0000 2024. 11. 14. 09:45

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

A.

import java.util.Arrays;
import java.util.Collections;

class Solution {
    public String solution(String s) {
//문자열을 배열로 변환
//내림차순 Collections.reverseOrder를 사용하기 위해 래퍼클래스 배열로 생성
        Character[] arr = new Character[s.length()];
//for문을 사용해 배열에 문자를 하나씩 넣음
        for(int i=0; i<s.length(); i++){
            arr[i] = s.charAt(i);
        }
        
//배열 arr를 내림차순 정렬

//대문자는 소문자보다 작은 것으로 간주
//Collections.reverseOrder
//정수배열 : 큰수부터 작은 수로 정렬
//문자열 배열 : 알파벳 순의 반대로 정렬 z->a
        Arrays.sort(arr,Collections.reverseOrder());
        
//정렬된 배열을 다시 문자열로 변환
        String answer = "";
        for(char c : arr){
            answer += c;
        }
        return answer;
    }
}