-
[프로그래머스] 문자열 뒤집기알고리즘 노트 2023. 10. 19. 09:37
my_string에서 s부터 e까지의 문자열을 추출해 순서를 뒤집은 후 다시 원본 문자열과 합쳐주면 됩니다.
과거 문자열 뒤집기를 사용해봤기에, 그에 맞게 다시 구현을 해보았습니다.
[문제풀이]
1. my_string을 char배열로 변경합니다.
2. while문을 통해 s가 e보다 작거나 같을 때 까지 수행을 반복합니다.
3. 임시 값인 temp 변수를 만들어 놓고, chars[s]를 넣고 chars[e]와 교체작업을 하는데 사용해줍니다.
4. s는 1씩 늘리고, e는 1씩 감소시킵니다.
5. 순서가 바뀐 문자 배열을 new String으로 문자열 오브젝트로 변환해 return합니다.
근데 이것보다 훨씬 더 간편한 문자열 뒤집기 방법이 있었으니..그것은 바로 StringBuilder의 reverse()함수를 사용하는 것입니다.
사실 reverse() 함수도 결국 저렇게 임시값을 만들고 바꿔주는 역할을 하는 것입니다.
하지만 이렇게 만들어진 함수가 있으니 사용해보아야겠지요.
위의 문제풀이 방식에 비해 얼마나 간단해졌는지 비교하면 좋을 것 같아 첨부합니다.
[문제풀이]
1. my_string의 0부터 s번째까지 잘라줍니다.
2. my_string의 s번째부터 e + 1번째까지 문자를 추출하여 StringBuilder로 선언하고 reverse()함수를 통해 내부 문자의 순서를 뒤집어줍니다.
3. 다음 my_string의 e + 1번째부터 문자열을 다시 이어붙여줍니다.
'알고리즘 노트' 카테고리의 다른 글
[프로그래머스] 글자 지우기 (0) 2023.10.20 [프로그래머스] 세로 읽기 (0) 2023.10.19 [프로그래머스] 접미사인지 확인하기 (0) 2023.10.18 [프로그래머스] 접미사 배열 (0) 2023.10.18 [프로그래머스] 문자열의 뒤의 n글자 (0) 2023.10.18