프로그래밍/코딩 테스트
[프로그래머스] 문자열 내림차순으로 배치하기
하와이블루
2024. 8. 24. 20:34
728x90
문제. 문자열 s에 나타나는 문자를 큰것부터 작은 순으로 정렬해 새로운 문자열을 리턴하는 함수, solution을 완성해주세요. s는 영문 대소문자로만 구성되어 있으며, 대문자는 소문자보다 작은 것으로 간주합니다. 제한 사항. * str은 길이 1 이상인 문자열입니다. |
나의 접근.
대문자가 소문자보다 작은 것으로 간주하기 때문에 charAt를 통해 각 낱말의 값을 비교하여 오름차순으로 재배열한다.
import java.util.Arrays;
import java.util.stream.Collectors;
class Solution {
public String solution(String s) {
String[] str = s.split("");
// 오름차순으로 재배열
for (int i = 0 ; i < str.length ; i++){
for (int j = i+1 ; j < str.length ; j++){
s = Arrays.stream(str).collect(Collectors.joining());
if( s.charAt(i) < s.charAt(j) ){
String t = str[i];
str[i] = str[j];
str[j] = t;
}
}
}
return Arrays.stream(str).collect(Collectors.joining());
}
}
// 입력값
Zbcdefg
// 결과
gfedcbZ
링크.
https://school.programmers.co.kr/learn/courses/30/lessons/12917
728x90