반응형
문자열을 하나 받아서, 배열로 만들어주고 큰것부터 작은 순으로 정렬하여 사용자에게 출력해주면 되는 문제,
문자열을 배열로 만드는건 다른 문제들을 풀면서 어떻게 해야하는지 알고 있었지만, 문자열 정렬은 처음이었다.
오라클이었으면 ORDER BY 사용해서 그냥.. 내 마음대로 오름차순, 내림차순 정렬하면 됐겠지만 자바에서는 해본 적이 없어 검색도 해보고 다른 사람들의 풀이도 보면서 해답을 찾아나갔다.
Arrays와 Collections을 사용하여, 배열을 정렬시켰는데 정말 고맙게도 Collections에 reverse가 있어 낼름가져다가 사용하였다.
위의 두 메소드를 이용하면 이번 문제는 쉽게 풀 수 있다. 사실상 공부만 조금 더 했다면 풀 수 있었던 문제!
누구나 처음엔 모를 수 있으니까 이번 문제풀이를 계기로 다음부터는 위의 메소드들을 사용할 수 있을것이다!(기억에만 남아있다면..)
아래는 해답
package list;
import java.util.Arrays;
import java.util.Collections;
public class Programmers_ReverseString {
public static String solution(String s) {
// 결과를 리턴할 String 변수
String answer = "";
// 문자열을 배열로
String[] strArr = s.split("");
// strArr 정렬
Arrays.sort(strArr);
// 정렬한 배열을 거꾸로 정렬
Collections.reverse(Arrays.asList(strArr));
// 거꾸로 정렬된 strArr 배열을 반복문을 사용하여 String 변수에 넣어준다
for(int i = 0; i < strArr.length; i++) {
answer += strArr[i];
}
// 결과 리턴
return answer;
}
public static void main(String[] args) {
// 파라미터
String s = solution("Zbcdefg");
// 결과 출력
System.out.print(s);
}
}
끄읏!
반응형
'Algorithm > Programmers' 카테고리의 다른 글
[Programmers] Java 프로그래머스 레벨1 배열의 평균구하기 (자바 평균 구하기) 해답 (0) | 2021.08.31 |
---|---|
[Programmers] Java 프로그래머스 레벨1 자바 직사각형 별찍기 해답(자바 별찍기) (0) | 2021.08.30 |
[Programmers] Java 프로그래머스 레벨1 같은 숫자는 싫어 해답 (0) | 2021.08.28 |
[Programmers] Java 프로그래머스 문자열을 정수로 바꾸기 문제 해답 (0) | 2021.08.27 |
[Programmers] Java 프로그래머스 짝수와 홀수 (자바 짝수 홀수) 문제 해답 (0) | 2021.08.26 |