프로그래머스 (Level 1) 문자열 내림차순으로 배치하기 [Java]
알고리즘/프로그래머스

프로그래머스 (Level 1) 문자열 내림차순으로 배치하기 [Java]

반응형

- 문제

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

배열 arr에서 연속적으로 나타나는 숫자는 제거하고 남은 수들을 return 하는 solution 함수를 완성해 주세요.

 

제한사항

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

 

 

입출력 예

입출력 예

- 한 줄 요약

소문자 -> 대문자 크기로 정렬하기

 

- 내 코드

1. s.split("") 을 사용해 기존 문자열의 문자를 한 개씩 배열에 넣는다.

2. Arrays.sort()를 사용해 대문자 -> 소문자 순으로 정렬시킨다.

3. Collections.reverse(Arrays.asList())를 사용해 소문자 -> 대문자 순으로 정렬시킨다.

4. String.join()을 사용해 배열을 문자열로 만든다.

import java.util.*;

class Solution {
    public String solution(String s) {
        String answer = "";
        
        String[] array = s.split("");
        
        Arrays.sort(array);
        Collections.reverse(Arrays.asList(array));
        
        answer = String.join("", array);
        
        return answer;
    }
}

 

다양한 함수 사용법을 알아야 쉽게 풀 수 있는 문제다.

s.split("")을 사용하면 1 문자씩 배열로 넣을 수 있는 것 

Collections.reverse(Arrays.asList())를 사용하면 역순으로 정렬할 수 있는 것과

String.join()이 배열을 문자열로 만들 수 있는 것이 핵심!

반응형