💡 문제
💡 나의 풀이( 점수 : 100/100 )
import java.util.*;
class Solution {
public String solution(String s) {
String answer = "";
char[] array = s.toCharArray();
Arrays.sort(array);
StringBuilder sb = new StringBuilder(new String(array));
// StringBuilder 역순배치
sb.reverse();
return sb.toString();
}
}
처음에 버블정렬로 구현할 수 있겠다는 생각을 했지만, 코드가 길어지다보니 여러 함수를 알아보게 되었고 덕분에 비교적 짧은 코드로 구현할 수 있었습니다. 우선, S에 저장된 "Zbcdefg" 를 toCharArray()를 이용해서 char 배열로 만들고 sort()를 사용해서 정렬을 해주었습니다. 마지막으로 StringBuilder의 속성인 reverse()를 사용하면 원하는 값 "gfedcbZ"가 나옵니다.
😤 느낀 점
위의 문제는 여러 함수를 알면 쉽게 풀리는 문제였습니다. 특히, StringBuilder 클래스에 요소를 추가하는 append 함수만 알고있었는데 문자를 역순으로 배치해주는 reverse 함수가 있다는 것을 알게되어 함수의 중요성을 다시 한번 깨닫게 되었습니다.
💡 다른 풀이
'코딩테스트' 카테고리의 다른 글
[프로그래머스] 핸드폰 번호 가리기 (0) | 2020.04.05 |
---|---|
[프로그래머스] x만큼 간격이 있는 n개의 숫자 (0) | 2020.04.02 |
[프로그래머스] 하샤드 수 (0) | 2020.03.31 |
[백준/JAVA] 4153 직각삼각형 (0) | 2019.11.08 |