CodingTest/Programmers

문자열 뒤집기 [프로그래머스 코딩테스트 입문]

Hojung7 2025. 1. 17. 00:03

문제 설명

 

문자열 my_string이 매개변수로 주어집니다. my_string을 거꾸로 뒤집은 문자열을 return하도록 solution 함수를 완성해주세요.



 제한 사항

  • 1 ≤ my_string의 길이 ≤ 1,000


 입출력 예

my_string return
"jaron" "noraj"
"bread"  "daerb"

 

 

 

 입출력 예 설명

 

입출력 예 #1
my_string이 "jaron"이므로 거꾸로 뒤집은 "noraj"를 return합니다.


입출력 예 #2
my_string이 "bread"이므로 거꾸로 뒤집은 "daerb"를 return합니다.

 

 

 

 

 풀이

 

1. my_string의 길이를 기준으로 마지막 문자부터 첫 번째 문자까지 반복합니다.

 

2. charAt(i)를 사용하여 해당 위치의 문자를 가져옵니다,

 

3. 이를 answer 문자열에 추가해줍니다.

 

4. 결과를 반환해줍니다.

class Solution {
    public String solution(String my_string) {
        String answer = "";
        // 문자열을 뒤에서부터 읽어 answer에 추가
        for(int i = my_string.length() - 1; i >= 0 ; i-- ){
            answer += my_string.charAt(i);
        }
        return answer;
    }
}

 

 

💡다른 풀이 (StringBuilder를 사용한 구현)

 

 

1. StringBuilder 객체에 my_string을 초기화합니다.

 

2. reverse() 메서드를 호출하여 문자열을 뒤집습니다.

 

3. toString()을 사용하여 결과를 문자열로 변환합니다.

 

class Solution {
    public String solution(String my_string) {
        // StringBuilder를 이용해 문자열 뒤집기
        StringBuilder sb = new StringBuilder(my_string);
        String answer = sb.reverse().toString();
        return answer;
    }
}