자바 문제 풀이/기초문제

[프로그래머스 자바]문자열 뒤집기

ari0930 2024. 4. 2. 23:27

[프로그래머스 자바]문자열 뒤집기

문제

문자열 my_string 과 정수 s,e가 매개변수로 주어질때 문자열에서 인덱스 s부터 e까지 뒤집은 문자열을 리턴하는 함수를 작성하시오.

입출력

풀이

이걸 풀기위해서는 문자열을 뒤집는 방법을 알아야한다.

 

for문을 이용할 방법과 reverse() 를 이용한 방법이 있다.

일단 for 문을 이용한 방법은 현재 문자열을 문자배열로 받아서 s와,e사이를 스왑 하는 방법이 있고 

두번째 방법은 StringBuffer / reverse()를 사용하여 그부분만 문자열을 뒤집는 방법이 있다.

내가 선택한 방법은 두번째 방법을 선택하여 주어진 문자열을 총3개의 문자열로 나누었다.

주어진 문자열을 str이라하면

ans1=str(0,s) 까지 자른거 하나

ans2=str(s,e+1)까지 자르고 뒤집은거 하나

ans3=str(e+1) 마지막 인덱스 번호까지 짜른거 하나 

이렇게 3개의 문자열을 합친걸 리턴하였다 

문자열을 자를때에는 substring을 사용하였다.

코드

 

class Solution {
    public String solution(String my_string, int s, int e) {
        String answer = "";
        String ans1=my_string.substring(0,s);
        StringBuffer ans2=new StringBuffer(my_string.substring(s,e+1));
        String ans3=ans2.reverse().toString();
        String ans4=my_string.substring(e+1);
        return answer=ans1+ans3+ans4;
    }
}

 

반응형