티스토리 뷰
이번 문제는 매번 자주보이는 문자열 뒤집기 문제였다.
가장 먼저 떠오른 것은 STL의 Reverse함수 사용이다.
Solution(string 문자열) :
1. 문자열을 char배열로 변환
2. 문자열 반전
3. char배열을 문자열로 변환 후 반환
예상 기대는 반복문으로 간략히 짠 코드보다 느리다는 정도로 생각했었다.
using System;
public class Solution {
public string solution(string my_string) {
char[] chars = my_string.ToCharArray();
Array.Reverse(chars);
return new string(chars);
}
}
결과를 확인하니 생각만큼 걸렸던 것 같다.
아주 훌륭한 결과는 아니지만 가독성 만큼은 이방법이 최고라고 생각한다.
이제 반복문만으로 짜인 코드를 보자.
using System;
public class Solution {
public string solution(string my_string) {
string answer = "";
for(int i = my_string.Length - 1; i >= 0; i--)
answer += my_string[i];
return answer;
}
}
확실히 예상했던 대로 속도면에서 2배 가량의 차이가 있었고 공간도 훨씬 적게 차지했다.
이부분은 가독성과 속도 중 개발 환경에 따라 선택되어야하는 부분 같다.
'코딩테스트 > Programmers' 카테고리의 다른 글
[Programmers] 입문) 머쓱이보다 키 큰 사람 (0) | 2023.06.27 |
---|---|
[Programmers] 입문) 피자 나눠 먹기 (3) (0) | 2023.06.27 |
[Programmers] 입문) 짝수 홀수 개수 (0) | 2023.06.27 |
[Programmers] 입문) 피자 나눠 먹기(1) (0) | 2023.06.27 |
[Programmers] 입문) 배열 뒤집기 (0) | 2023.06.27 |