[프로그래머스 자바]문자열 뒤집기
문제
문자열 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;
}
}
반응형
'자바 문제 풀이 > 기초문제' 카테고리의 다른 글
[프로그래머스 자바] 리스트 자르기 (0) | 2024.04.16 |
---|---|
[프로그래머스 자바]가까운 1 찾기 (0) | 2024.04.10 |
[프로그래머스 자바] 접미사 배열 (0) | 2024.03.23 |
[프로그래머스 자바]배열 만들기5 (0) | 2024.03.16 |
[프로그래머스 자바] 9로 나눈 나머지 (0) | 2024.03.12 |