반응형
Problem)
정말 간단한 문자열 뒤집기 문제 입니다. 문제의 핵심은 in-place로 추가 메모리를 사용하지 않고 해결하라는 조건입니다.
Solution)
class Solution:
def reverseString(self, s: List[str]) -> None:
"""
Do not return anything, modify s in-place instead.
"""
left, right = 0, len(s) - 1
while left < right:
s[left], s[right] = s[right], s[left]
left += 1
right -= 1
left와 right로 처음과 끝의 인덱스를 설정하고 서로 맞바꾸는 방법으로 문자열을 뒤집을 수 있습니다.
* 추가적으로 python에서 제공하는 reverse()를 사용하여 정말 간단하게도 해결 가능합니다.
class Solution:
def reverseString(self, s: List[str]) -> None:
s.reverse()
아래 결과를 보시면 첫 번째가 reverse()를 사용한 방법으로 조금 더 빠른 runtime을 보여줍니다.
반응형
'알고리즘 > 코딩 테스트' 카테고리의 다른 글
[ Leetcode ] Trapping Rain Water (0) | 2020.08.24 |
---|---|
[LeetCode] Two Sum (0) | 2020.08.20 |
[Leetcode] Valid Palindrome (0) | 2020.08.18 |
[Leetcode] Container With Most Water (0) | 2020.06.04 |
[Leetcode] Two City Scheduling (0) | 2020.06.03 |