반응형
오늘은 프로그래머스 JAVA 코딩테스트 문자열 내림차순으로 배치하기 문제풀이를
포스팅 하려고 합니다.
문제는 다음과 같습니다.
저는 JAVA로 풀이를 하였습니다.
- 문자열 내림차순으로 배치하기
Java
문제 설명
문자열 s에 나타나는 문자를 큰것부터 작은 순으로 정렬해 새로운 문자열을 리턴하는 함수, solution을 완성해주세요.
s는 영문 대소문자로만 구성되어 있으며, 대문자는 소문자보다 작은 것으로 간주합니다.
제한 사항
- str은 길이 1 이상인 문자열입니다.
입출력 예
sreturn
"Zbcdefg" |
제가 풀이한 내용은 다음과 같습니다.
대문자와 소문자를 분리하여 비교하고 각각 정렬한 후
최종적으로 합쳐서 결과를 도출하였습니다.
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
class Solution {
public String solution(String s) {
String answer = "";
List<String> upperList = new ArrayList<String>();
List<String> lowerList = new ArrayList<String>();
for(int i =0; s.length()>i ; i++) {
if(Character.isUpperCase(s.charAt(i))) {
upperList.add(s.charAt(i)+"");
}else {
lowerList.add(s.charAt(i)+"");
}
}
Collections.sort(upperList,Collections.reverseOrder());
Collections.sort(lowerList,Collections.reverseOrder());
for(String lowerStr : lowerList) {
answer += lowerStr;
}
for(String upperStr : upperList) {
answer += upperStr;
}
return answer;
}
}
질의 또는 다른 좋은 풀이가 있으시다면 댓글에 입력해주시면 감사하겠습니다.
반응형
'Develope > 코딩 테스트' 카테고리의 다른 글
[프로그래머스] JAVA 코딩테스트 스킬트리 (0) | 2021.02.28 |
---|---|
[프로그래머스] JAVA 코딩테스트 위장 (0) | 2021.02.28 |
[프로그래머스] JAVA 코딩테스트 이상한 문자 만들기 (0) | 2021.02.28 |
[프로그래머스] JAVA 코딩테스트 2016년 (0) | 2021.02.28 |
[프로그래머스] JAVA 코딩테스트 전화번호 목록 (0) | 2021.02.28 |